Profiad o ddefnyddio technoleg Rutoken ar gyfer cofrestru ac awdurdodi defnyddwyr yn y system (rhan 2)

Prynhawn Da Gadewch i ni barhau Γ’'r pwnc hwnGellir dod o hyd i'r rhan flaenorol yn y ddolen).

Heddiw symudwn ymlaen at y rhan ymarferol. Gadewch i ni ddechrau trwy sefydlu ein CA yn seiliedig ar y llyfrgell cryptograffig ffynhonnell agored lawn OpenSSL. Mae'r algorithm hwn wedi'i brofi gan ddefnyddio ffenestri 7.

Gydag openSSL wedi'i osod, gallwn gyflawni gweithrediadau cryptograffig amrywiol (fel creu allweddi a thystysgrifau) trwy'r llinell orchymyn.

Mae'r algorithm gweithredoedd fel a ganlyn:

  1. Lawrlwythwch y dosbarthiad gosod openssl-1.1.1g.
    Mae gan openSSL fersiynau gwahanol. Dywedodd y dogfennau ar gyfer Rutoken fod angen fersiwn openSSL 1.1.0 neu fwy newydd. Defnyddiais fersiwn openssl-1.1.1g. Gallwch chi lawrlwytho openSSL o'r wefan swyddogol, ond ar gyfer gosodiad haws, mae angen i chi ddod o hyd i'r ffeil gosod ar gyfer windows ar y we. Fe wnes i hyn i chi: slproweb.com/products/Win32OpenSSL.html
    Sgroliwch i lawr y dudalen a lawrlwythwch Win64 OpenSSL v1.1.1g EXE 63MB Installer.
  2. Gosod openssl-1.1.1g ar y cyfrifiadur.
    Rhaid gosod yn unol Γ’'r llwybr safonol, a nodir yn awtomatig yn y ffolder C: Program Files. Bydd y rhaglen yn cael ei gosod yn y ffolder OpenSSL-Win64.
  3. Er mwyn sefydlu OpenSSL yn y ffordd rydych ei angen, mae'r ffeil openssl.cfg. Mae'r ffeil hon wedi'i lleoli yn y llwybr C:\Program Files\OpenSSL-Win64bin os gwnaethoch chi osod OpenSSL fel y disgrifiwyd yn y paragraff blaenorol. Ewch i'r ffolder lle mae openssl.cfg yn cael ei storio ac agorwch y ffeil hon gan ddefnyddio, er enghraifft, Notepad++.
  4. Mae'n debyg eich bod wedi dyfalu y bydd yr awdurdod ardystio yn cael ei ffurfweddu rywsut trwy newid cynnwys y ffeil openssl.cfg, ac rydych yn llygad eich lle. Mae hyn yn gofyn am addasu'r gorchymyn [ ca ]. Yn y ffeil openssl.cfg, gellir dod o hyd i ddechrau'r testun lle byddwn yn gwneud newidiadau fel: [ ca ].
  5. Nawr byddaf yn rhoi enghraifft o osodiad gyda'i ddisgrifiad:
    [ 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
    

    Nawr mae angen i ni greu'r cyfeiriadur demoCA a'r is-gyfeiriaduron fel y dangosir yn yr enghraifft uchod. A'i osod yn y cyfeiriadur hwn ar hyd y llwybr a nodir yn dir (mae gen i / Users / username / bin / openSSLca / demoCA).

    Mae'n bwysig iawn sillafu dir yn gywir - dyma'r llwybr i'r cyfeiriadur lle bydd ein canolfan ardystio wedi'i lleoli. Rhaid lleoli'r cyfeiriadur hwn yn /Users (hynny yw, yng nghyfrif rhyw ddefnyddiwr). Os ydych chi'n gosod y cyfeiriadur hwn, er enghraifft, yn C:Ffeiliau Rhaglen, ni fydd y system yn gweld y ffeil gyda'r gosodiadau openssl.cfg (o leiaf roedd hi felly i mi).

    $dir - amnewidir y llwybr a nodir yn dir yma.

    Pwynt pwysig arall yw creu ffeil index.txt wag, heb y ffeil hon ni fydd y gorchmynion β€œopenSSL ca …” yn gweithio.

    Mae angen i chi hefyd gael ffeil gyfresol, allwedd breifat gwraidd (ca.key), tystysgrif gwraidd (ca.crt). Disgrifir y broses o gael y ffeiliau hyn isod.

  6. Rydym yn cysylltu'r algorithmau amgryptio a ddarperir gan Rutoken.
    Mae'r cysylltiad hwn yn digwydd yn y ffeil openssl.cfg.

    • Yn gyntaf oll, mae angen i chi lawrlwytho'r algorithmau Rutoken angenrheidiol. Dyma'r ffeiliau rtengine.dll, rtpkcs11ecp.dll.
      I wneud hyn, lawrlwythwch y Rutoken SDK: www.rutoken.ru/developers/sdk.

      Mae'r Rutoken SDK i gyd ar gael i ddatblygwyr sydd am roi cynnig ar Rutoken. Mae'r ddwy enghraifft ar wahΓ’n ar gyfer gweithio gyda Rutoken mewn gwahanol ieithoedd rhaglennu, a chyflwynir rhai llyfrgelloedd. Mae ein llyfrgelloedd rtengine.dll a rtpkcs11ecp.dll wedi'u lleoli yn y Rutoken sdk, yn y drefn honno, yn y lleoliad:

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

      Pwynt pwysig iawn. Nid yw llyfrgelloedd rtengine.dll, rtpkcs11ecp.dll yn gweithio heb y gyrrwr gosodedig ar gyfer Rutoken. Hefyd mae'n rhaid i Rutoken gael ei gysylltu Γ’'r cyfrifiadur. (ar gyfer gosod popeth sydd ei angen arnoch ar gyfer Rutoken, gweler rhan flaenorol yr erthygl habr.com/ru/post/506450)

    • Gellir cadw'r llyfrgelloedd rtengine.dll a rtpkcs11ecp.dll unrhyw le yn y cyfrif defnyddiwr.
    • Ysgrifennwn y llwybrau i'r llyfrgelloedd hyn yn openssl.cfg. I wneud hyn, agorwch y ffeil openssl.cfg, rhowch y llinell ar ddechrau'r ffeil hon:
      openssl_conf = openssl_def

      Ar ddiwedd y ffeil mae angen i chi ychwanegu:

      [ 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 - rhaid i chi nodi eich llwybr i'r llyfrgell rtengine.dll.
      MODULE_PATH - mae angen i chi osod eich llwybr i'r llyfrgell rtpkcs11ecp.dll.

  7. Ychwanegu newidynnau amgylchedd.

    Gwnewch yn siΕ΅r eich bod yn ychwanegu newidyn amgylchedd sy'n nodi'r llwybr i'r ffeil ffurfweddu openssl.cfg. Yn fy achos i, crΓ«wyd y newidyn OPENSSL_CONF gyda'r llwybr C:Program FilesOpenSSL-Win64binopenssl.cfg.

    Yn y newidyn llwybr, rhaid i chi nodi'r llwybr i'r ffolder lle mae openssl.exe wedi'i leoli, yn fy achos i yw: C: Program FilesOpenSSL-Win64bin.

  8. Nawr gallwch chi fynd yn Γ΄l i gam 5 a chreu'r ffeiliau coll ar gyfer y cyfeiriadur demoCA.
    1. Y ffeil bwysig gyntaf na fydd dim yn gweithio hebddi yw cyfresol. Mae hon yn ffeil heb estyniad, a dylai ei gwerth fod yn 01. Gallwch greu'r ffeil hon eich hun ac ysgrifennu 01 y tu mewn. Gallwch hefyd ei lawrlwytho o'r SDK Rutoken ar hyd y llwybr sdk/openssl/rtengine/samples/tool/demoCA /.
      Mae'r cyfeiriadur demoCA yn cynnwys y ffeil cyfresol, sef yr union beth sydd ei angen arnom.
    2. Creu allwedd breifat gwraidd.
      I wneud hyn, byddwn yn defnyddio'r gorchymyn llyfrgell openSSL, y mae'n rhaid ei redeg yn uniongyrchol ar y llinell orchymyn:

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

    3. Rydym yn creu tystysgrif gwraidd.
      I wneud hyn, defnyddiwch y gorchymyn llyfrgell openSSL canlynol:

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

      Sylwch fod angen yr allwedd breifat gwraidd, a gynhyrchwyd yn y cam blaenorol, i gynhyrchu'r dystysgrif gwraidd. Felly, rhaid lansio'r llinell orchymyn yn yr un cyfeiriadur.

    Bellach mae gan bopeth yr holl ffeiliau coll ar gyfer cyfluniad cyflawn y cyfeiriadur demoCA. Rhowch y ffeiliau a grΓ«wyd yn y cyfeiriaduron a nodir yng ngham 5.

Byddwn yn tybio, ar Γ΄l cwblhau pob un o'r 8 pwynt, bod ein canolfan ardystio wedi'i ffurfweddu'n llawn.

Yn y rhan nesaf, byddaf yn disgrifio sut y byddwn yn gweithio gyda'r awdurdod ardystio er mwyn cyflawni'r hyn a ddisgrifiwyd ynddo y rhan flaenorol o'r erthygl.

Ffynhonnell: hab.com

Ychwanegu sylw