Eòlas air a bhith a’ cleachdadh teicneòlas Rutoken airson luchd-cleachdaidh a chlàradh agus a cheadachadh san t-siostam (pàirt 2)

Feasgar math Leanaidh sinn leis a’ chuspair seoGheibhear am pàirt roimhe aig a’ cheangal).

An-diugh tha sinn a 'gluasad air adhart gu practaigeach phàirt. Feuch an tòisich sinn le bhith a’ stèidheachadh an CA againn stèidhichte air an leabharlann cryptographic làn-chuimseach openSSL. Chaidh an algairim seo a dhearbhadh le bhith a’ cleachdadh windows 7.

Le openSSL air a chuir a-steach, is urrainn dhuinn diofar obrachaidhean criptografach a dhèanamh (leithid cruthachadh iuchraichean agus teisteanasan) tron ​​​​loidhne-àithne.

Tha algorithm nan gnìomhan mar a leanas:

  1. Luchdaich sìos an sgaoileadh stàlaidh openssl-1.1.1g.
    Tha dreachan eadar-dhealaichte aig openSSL. Thuirt na sgrìobhainnean airson Rutoken gu bheil feum air openSSL dreach 1.1.0 no nas ùire. Chleachd mi dreach openssl-1.1.1g. Faodaidh tu openSSL a luchdachadh sìos bhon làrach oifigeil, ach airson stàladh nas fhasa, feumaidh tu am faidhle stàlaidh airson uinneagan a lorg air an lìon. Rinn mi seo dhut: slproweb.com/products/Win32OpenSSL.html
    Sgrolaich sìos an duilleag agus luchdaich sìos Win64 OpenSSL v1.1.1g EXE 63MB Installer.
  2. Stàlaich openssl-1.1.1g air a 'choimpiutair.
    Feumar an stàladh a dhèanamh a rèir na slighe àbhaisteach, a tha air a chomharrachadh gu fèin-ghluasadach ann am pasgan C: Program Files. Thèid am prògram a chuir a-steach don phasgan OpenSSL-Win64.
  3. Gus openSSL a stèidheachadh mar a tha feum agad air, tha am faidhle openssl.cfg. Tha am faidhle seo suidhichte anns an t-slighe C: \ Program Files \ OpenSSL-Win64bin ma chuir thu a-steach openSSL mar a chaidh a mhìneachadh sa pharagraf roimhe seo. Rach don phasgan far a bheil openssl.cfg air a stòradh agus fosgail am faidhle seo a’ cleachdadh, mar eisimpleir, Notepad++.
  4. Is dòcha gun do smaoinich thu gun tèid an t-ùghdarras teisteanais a rèiteachadh dòigh air choireigin le bhith ag atharrachadh susbaint an fhaidhle openssl.cfg, agus tha thu ceart gu leòr. Feumaidh seo an àithne [ ca ] a ghnàthachadh. Anns an fhaidhle openssl.cfg, lorgar toiseach an teacsa far an dèan sinn atharrachaidhean mar: [ ca ].
  5. A-nis bheir mi seachad eisimpleir de shuidheachadh leis an tuairisgeul aige:
    [ ca ]
    default_ca	= CA_default		
    
     [ CA_default ]
    dir		= /Users/username/bin/openSSLca/demoCA		 
    certs		= $dir/certs		
    crl_dir		= $dir/crl		
    database	= $dir/index.txt	
    new_certs_dir	= $dir/newcerts	
    certificate	= $dir/ca.crt 	
    serial		= $dir/private/serial 		
    crlnumber	= $dir/crlnumber	
    					
    crl		= $dir/crl.pem 		
    private_key	= $dir/private/ca.key
    x509_extensions	= usr_cert
    

    A-nis feumaidh sinn an eòlaire demoCA agus na fo-eòlairean a chruthachadh mar a chithear san eisimpleir gu h-àrd. Agus cuir e san eòlaire seo air an t-slighe a tha air a shònrachadh ann an dir (tha / Users / username / bin / openSSLca / demoCA agam).

    Tha e glè chudromach dir a litreachadh gu ceart - is e seo an t-slighe chun an eòlaire far am bi an ionad teisteanais againn suidhichte. Feumaidh an eòlaire seo a bhith suidhichte ann an / Users (is e sin, ann an cunntas cuid de chleachdaiche). Ma chuireas tu an eòlaire seo, mar eisimpleir, ann an C: Program Files, chan fhaic an siostam am faidhle leis na roghainnean openssl.cfg (co-dhiù bha e mar sin dhòmhsa).

    $dir - tha an t-slighe a chaidh a shònrachadh ann an dir ga chur na àite an seo.

    Is e puing cudromach eile faidhle index.txt falamh a chruthachadh, às aonais an fhaidhle seo chan obraich na h-òrdughan “openSSL ca…”.

    Feumaidh tu cuideachd faidhle sreathach, iuchair phrìobhaideach root (ca.key), teisteanas root (ca.crt). Thèid am pròiseas airson na faidhlichean sin fhaighinn gu h-ìosal.

  6. Bidh sinn a’ ceangal na h-algorithms crioptachaidh a thug Rutoken seachad.
    Tha an ceangal seo a' gabhail àite san fhaidhle openssl.cfg.

    • An toiseach, feumaidh tu na h-algorithms Rutoken riatanach a luchdachadh sìos. Is iad seo na faidhlichean rtengine.dll, rtpkcs11ecp.dll.
      Gus seo a dhèanamh, luchdaich sìos an Rutoken SDK: www.rutoken.ru/developers/sdk.

      Tha an Rutoken SDK uile ann airson luchd-leasachaidh a tha airson Rutoken fheuchainn. Tha an dà eisimpleir eadar-dhealaichte ann airson a bhith ag obair le Rutoken ann an diofar chànanan prògramaidh, agus tha cuid de leabharlannan air an taisbeanadh. Tha na leabharlannan againn rtengine.dll agus rtpkcs11ecp.dll suidhichte anns an Rutoken sdk, fa leth, aig an àite:

      sdk/openssl/rtengine/bin/windows-x86_64/lib/rtengine.dll
      sdk/pkcs11/lib/windows-x86_64/rtpkcs11ecp.dll

      Puing fìor chudromach. Chan obraich leabharlannan rtengine.dll, rtpkcs11ecp.dll às aonais an draibhear stàlaichte airson Rutoken. Feumaidh Rutoken a bhith ceangailte ris a’ choimpiutair cuideachd. (airson a h-uile dad a dh ’fheumas tu airson Rutoken a chuir a-steach, faic am pàirt roimhe den artaigil habr.com/ga/post/506450)

    • Faodar na leabharlannan rtengine.dll agus rtpkcs11ecp.dll a chumail an àite sam bith sa chunntas cleachdaiche.
    • Bidh sinn a’ sgrìobhadh na slighean gu na leabharlannan sin ann an openssl.cfg. Gus seo a dhèanamh, fosgail am faidhle openssl.cfg, cuir an loidhne aig toiseach an fhaidhle seo:
      openssl_conf = openssl_def

      Aig deireadh an fhaidhle feumaidh tu na leanas a chur ris:

      [ openssl_def ]
      engines = engine_section
      [ engine_section ]
      rtengine = gost_section
      [ gost_section ]
      dynamic_path = /Users/username/bin/sdk-rutoken/openssl/rtengine/bin/windows-x86_64/lib/rtengine.dll
      MODULE_PATH = /Users/username/bin/sdk-rutoken/pkcs11/lib/windows-x86_64/rtpkcs11ecp.dll
      RAND_TOKEN = pkcs11:manufacturer=Aktiv%20Co.;model=Rutoken%20ECP
      default_algorithms = CIPHERS, DIGEST, PKEY, RAND
      

      dynamic_path - feumaidh tu do shlighe gu leabharlann rtengine.dll a shònrachadh.
      MODULE_PATH - feumaidh tu do shlighe a shuidheachadh chun leabharlann rtpkcs11ecp.dll.

  7. A’ cur caochladairean àrainneachd ris.

    Dèan cinnteach gun cuir thu caochladair àrainneachd ris a shònraicheas an t-slighe gu faidhle rèiteachaidh openssl.cfg. Anns a 'chùis agam, chaidh an caochladair OPENSSL_CONF a chruthachadh leis an t-slighe C: Program FilesOpenSSL-Win64binopenssl.cfg.

    Anns an caochladair slighe, feumaidh tu an t-slighe chun phasgan far a bheil openssl.exe a shònrachadh, anns a’ chùis agam is e: C: Program FilesOpenSSL-Win64bin.

  8. A-nis faodaidh tu a dhol air ais gu ceum 5 agus cruthaich na faidhlichean a tha a dhìth airson an eòlaire demoCA.
    1. Is e sreathach a’ chiad fhaidhle cudromach às aonais nach obraich dad. 'S e faidhle gun leudachadh a tha seo, agus bu chòir luach a bhith 01. Faodaidh tu am faidhle seo a chruthachadh leat fhèin agus sgrìobhadh 01 a-staigh. Faodaidh tu cuideachd a luchdachadh sìos bhon Rutoken SDK air an t-slighe sdk/openssl/rtengine/samples/tool/demoCA /.
      Anns an eòlaire demoCA tha am faidhle sreathach, agus is e sin dìreach a tha a dhìth oirnn.
    2. Cruthaich iuchair phrìobhaideach root.
      Gus seo a dhèanamh, cleachdaidh sinn an àithne leabharlainn openSSL, a dh'fheumas a bhith air a ruith gu dìreach air an loidhne-àithne:

      openssl genpkey -algorithm gost2012_256 -pkeyopt paramset:A -out ca.key

    3. Bidh sinn a 'cruthachadh teisteanas root.
      Gus seo a dhèanamh, cleachd an àithne leabharlainn openSSL a leanas:

      openssl req -utf8 -x509 -key ca.key -out ca.crt

      Thoir an aire gu bheil an iuchair phrìobhaideach root, a chaidh a chruthachadh sa cheum roimhe, a dhìth gus an teisteanas freumha a ghineadh. Mar sin, feumaidh an loidhne-àithne a bhith air a chuir air bhog san aon eòlaire.

    Tha a h-uile dad a-nis aig a h-uile faidhle a tha a dhìth airson rèiteachadh iomlan an eòlaire demoCA. Cuir na faidhlichean cruthaichte anns na clàran a tha air an comharrachadh ann am puing 5.

Gabhaidh sinn ris, às deidh dhuinn na 8 puingean gu lèir a chrìochnachadh, gu bheil an ionad teisteanais againn làn rèiteachadh.

Anns an ath phàirt, bheir mi cunntas air mar a dh’ obraicheas sinn leis an ùghdarras teisteanachaidh gus na chaidh a mhìneachadh ann a choileanadh am pàirt roimhe den artaigil.

Source: www.habr.com

Cuir beachd ann