αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ Rutoken αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡ αž“αž·αž„αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ (αž•αŸ’αž“αŸ‚αž€αž‘αžΈ 2)

αž’αžšαž»αžŽαžŸαž½αžŸαŸ’αžαžΈ αž…αžΌαžšαž”αž“αŸ’αžαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸαŸ‡ (αž•αŸ’αž“αŸ‚αž€αž˜αž»αž“αž’αžΆαž…αžšαž€αž”αžΆαž“αž“αŸ…αžαŸ†αžŽ).

αžαŸ’αž„αŸƒαž“αŸαŸ‡αžŸαžΌαž˜αž”αž“αŸ’αžαž‘αŸ…αž•αŸ’αž“αŸ‚αž€αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αŸ” αž…αžΌαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ„αž™αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αžŸαž·αž‘αŸ’αž’αž·αž’αŸ†αžŽαžΆαž…αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž€αžΌαžŠαž€αžΌαžŠαž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αž–αŸαž‰αž›αŸαž‰ openSSL αŸ” αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžΆαž€αž›αŸ’αž”αž„αžŠαŸ„αž™αž”αŸ’αžšαžΎ Windows 7 αŸ”

αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ openSSL αž™αžΎαž„αž’αžΆαž…αž’αŸ’αžœαžΎαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‚αŸ’αžšαžΈαž”αž‚αŸ’αžšαžΈαž”αž•αŸ’αžŸαŸαž„αŸ— (αžŠαžΌαž…αž‡αžΆαž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž€αžΌαž“αžŸαŸ„ αž“αž·αž„αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš) αžαžΆαž˜αžšαž™αŸˆαž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ”

αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸƒαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž˜αžΆαž“αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  1. αž‘αžΆαž‰αž™αž€αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ openssl-1.1.1g αŸ”
    openSSL αž˜αžΆαž“αž€αŸ†αžŽαŸ‚αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαŸ” αž―αž€αžŸαžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Rutoken αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαžΆ OpenSSL αž€αŸ†αžŽαŸ‚ 1.1.0 αž¬αž€αŸ’αžšαŸ„αž™αž‚αžΊαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαŸ” αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΎαž€αŸ†αžŽαŸ‚ openssl-1.1.1g αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž‘αžΆαž‰αž™αž€ OpenSSL αž–αžΈαž‚αŸαž αž‘αŸ†αž–αŸαžšαž•αŸ’αž›αžΌαžœαž€αžΆαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž› αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŸαŸ’αžœαŸ‚αž„αžšαž€αž―αž€αžŸαžΆαžšαžŠαŸ†αž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Windows αž“αŸ…αž›αžΎαž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžαŸ” αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž’αŸ’αžœαžΎαžœαžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αŸ– slproweb.com/products/Win32OpenSSL.html
    αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαž˜αžΌαžšαž‘αŸ…αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸƒαž‘αŸ†αž–αŸαžš αž αžΎαž™αž‘αžΆαž‰αž™αž€αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ†αž‘αžΎαž„ Win64 OpenSSL v1.1.1g EXE 63MB αŸ”
  2. αžŠαŸ†αž‘αžΎαž„ openssl-1.1.1g αž“αŸ…αž›αžΎαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”
    αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž”αŸ’αžšαžΎαž•αŸ’αž›αžΌαžœαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸ…αž€αŸ’αž“αž»αž„αžαžαž―αž€αžŸαžΆαžš C: αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ” αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžαž OpenSSL-Win64 αŸ”
  3. αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ openSSL αžαžΆαž˜αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžš αž˜αžΆαž“αž―αž€αžŸαžΆαžš openssl.cfg αŸ” αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž›αžΌαžœ C:Program FilesOpenSSL-Win64bin αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αžΆαž“αžŠαŸ†αž‘αžΎαž„ openSSL αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžαžΆαžαžŽαŸ’αžŒαž˜αž»αž“αŸ” αž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹αžαžαžŠαŸ‚αž› openssl.cfg αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€ αž αžΎαž™αž”αžΎαž€αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž‘αžΆαž αžšαžŽαŸ Notepad++αŸ”
  4. αž’αŸ’αž“αž€αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž‘αžΆαž™αžαžΆαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž“αŸƒαž˜αž‡αŸ’αžˆαž˜αžŽαŸ’αžŒαž›αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αŸαžαŸ’αžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž‘αžΎαž„αžŠαŸ„αž™αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαŸ’αž›αžΉαž˜αžŸαžΆαžšαž“αŸƒαž―αž€αžŸαžΆαžš openssl.cfg αž αžΎαž™αž’αŸ’αž“αž€αž–αž·αžαž‡αžΆαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ [ca] αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš openssl.cfg αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸƒαž’αžαŸ’αžαž”αž‘αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αžƒαžΎαž‰αžŠαžΌαž…αž‡αžΆαŸ– [ca]αŸ”
  5. αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž•αŸ’αžαž›αŸ‹αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαžšαž”αžŸαŸ‹αžœαžΆ:
    [ 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
    

    αž₯αž‘αžΌαžœαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαžαžαž demoCA αž“αž·αž„αžαžαžšαž„ αžŠαžΌαž…αž”αž„αŸ’αž αžΆαž‰αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžαžΆαž„αž›αžΎαŸ” αž αžΎαž™αžŠαžΆαž€αŸ‹αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžαžαž“αŸαŸ‡αžαžΆαž˜αž•αŸ’αž›αžΌαžœαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž€αŸ’αž“αž»αž„ dir (αžαŸ’αž‰αž»αŸ†αž˜αžΆαž“ /Users/username/bin/openSSLca/demoCA)αŸ”

    αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž› dir αž±αŸ’αž™αž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ - αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αžαžαžŠαŸ‚αž›αž’αžΆαž‡αŸ’αž‰αžΆαž’αžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžšαž”αžŸαŸ‹αž™αžΎαž„αž“αžΉαž„αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αŸ” αžαžαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ… / αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ (αž“αŸ„αŸ‡αž‚αžΊαž“αŸ…αž€αŸ’αž“αž»αž„αž‚αžŽαž“αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹) αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŠαžΆαž€αŸ‹αžαžαž―αž€αžŸαžΆαžšαž“αŸαŸ‡αž€αŸ’αž“αž»αž„ C:Program Files αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž“αžΉαž„αž˜αž·αž“αžƒαžΎαž‰αž―αž€αžŸαžΆαžšαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ openssl.cfg (αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž“αŸ„αŸ‡αž‡αžΆαžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž‰αž»αŸ†)αŸ”

    $dir - αž•αŸ’αž›αžΌαžœαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ dir αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ†αž“αž½αžŸαž“αŸ…αž‘αžΈαž“αŸαŸ‡αŸ”

    αž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αž˜αž½αž™αž‘αŸ€αžαž‚αžΊαž”αž„αŸ’αž€αžΎαžαž―αž€αžŸαžΆαžš index.txt αž‘αž‘αŸαžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž―αž€αžŸαžΆαžšαž“αŸαŸ‡ αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ β€œopenSSL ca …” αž“αžΉαž„αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸαŸ”

    αž’αŸ’αž“αž€αž€αŸαžαŸ’αžšαžΌαžœαž˜αžΆαž“αž―αž€αžŸαžΆαžšαžŸαŸ€αžšαŸ€αž› αžŸαŸ„αž―αž€αž‡αž“αž‡αžΆ root (ca.key) αž“αž·αž„αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš root (ca.crt) αž•αž„αžŠαŸ‚αžšαŸ” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαž€αžΆαžšαž‘αž‘αž½αž›αž”αžΆαž“αž―αž€αžŸαžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ”

  6. αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž”αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αžŠαŸ„αž™ Rutoken αŸ”
    αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž“αŸαŸ‡αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš openssl.cfg αŸ”
    • αžŠαŸ†αž”αžΌαž„αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž‘αžΆαž‰αž™αž€αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ Rutoken αž…αžΆαŸ†αž”αžΆαž…αŸ‹αŸ” αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž―αž€αžŸαžΆαžš rtengine.dll, rtpkcs11ecp.dll αŸ”
      αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž‘αžΆαž‰αž™αž€ Rutoken SDK: www.rutoken.ru/developers/sdk.

      Rutoken SDK αž‚αžΊαž˜αžΆαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžŠαŸ‚αž›αž…αž„αŸ‹αžŸαžΆαž€αž›αŸ’αž”αž„ Rutoken αŸ” αž˜αžΆαž“αž§αž‘αžΆαž αžšαžŽαŸαž‘αžΆαŸ†αž„αž–αžΈαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ Rutoken αž‡αžΆαž—αžΆαžŸαžΆαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ αž αžΎαž™αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž˜αž½αž™αž…αŸ†αž“αž½αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αŸ” αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„ rtengine.dll αž“αž·αž„ rtpkcs11ecp.dll αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ… Rutoken sdk αžšαŸ€αž„αž‚αŸ’αž“αžΆαž“αŸ…αž‘αžΈαžαžΆαŸ†αž„αŸ–

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

      αž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αŸ” αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ rtengine.dll, rtpkcs11ecp.dll αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž‰αŸ’αž‡αžΆαžŠαŸ‚αž›αž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Rutoken αŸ” αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžš Rutoken αžαŸ’αžšαžΌαžœαžαŸ‚αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαŸ” (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ‚αž›αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Rutoken αžŸαžΌαž˜αž˜αžΎαž›αž•αŸ’αž“αŸ‚αž€αž˜αž»αž“αž“αŸƒαž’αžαŸ’αžαž”αž‘ habr.com/en/post/506450)

    • αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ rtengine.dll αž“αž·αž„ rtpkcs11ecp.dll αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‚αŸ’αžšαž”αŸ‹αž‘αžΈαž€αž“αŸ’αž›αŸ‚αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αžŽαž“αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ”
    • αž™αžΎαž„αž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„ openssl.cfg αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž”αžΎαž€αž―αž€αžŸαžΆαžš openssl.cfg αž“αŸ…αžŠαžΎαž˜αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαžΆαž€αŸ‹αž”αž“αŸ’αž‘αžΆαžαŸ‹αŸ–
      openssl_conf = openssl_def

      αž“αŸ…αž…αž»αž„αž”αž‰αŸ’αž…αž”αŸ‹αž“αŸƒαž―αž€αžŸαžΆαžšαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αŸ–

      [ 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 - αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž•αŸ’αž›αžΌαžœαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αŸ…αž€αžΆαž“αŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ rtengine.dll αŸ”
      MODULE_PATH - αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž•αŸ’αž›αžΌαžœαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αŸ…αž€αžΆαž“αŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ rtpkcs11ecp.dll αŸ”

  7. αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž’αžαŸαžšαž”αžšαž·αžŸαŸ’αžαžΆαž“αŸ”

    αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž”αž“αŸ’αžαŸ‚αž˜αž’αžαŸαžšαž”αžšαž·αžŸαŸ’αžαžΆαž“αžŠαŸ‚αž›αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ openssl.cfg αŸ” αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† ធថេរ OPENSSL_CONF αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‡αžΆαž˜αž½αž™αž•αŸ’αž›αžΌαžœ C:Program FilesOpenSSL-Win64binopenssl.cfg αŸ”

    αž’αžαŸαžšαž•αŸ’αž›αžΌαžœαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αžαžαžŠαŸ‚αž› openssl.exe αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ… αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αžœαžΆαž‚αžΊαŸ– C: Program FilesOpenSSL-Win64bin αŸ”

  8. αž₯αž‘αžΌαžœαž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαž‘αž”αŸ‹αž‘αŸ…αž‡αŸ†αž αžΆαž“αž‘αžΈ 5 αž αžΎαž™αž”αž„αŸ’αž€αžΎαžαž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαžαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž demoCA αŸ”
    1. αž―αž€αžŸαžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž‚αŸ’αž˜αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‚αžΊαžŸαŸ€αžšαŸ€αž›αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž‚αŸ’αž˜αžΆαž“αž•αŸ’αž“αŸ‚αž€αž”αž“αŸ’αžαŸ‚αž˜ αžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αž‚αž½αžšαžαŸ‚αž‡αžΆ 01αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž―αž€αžŸαžΆαžšαž“αŸαŸ‡αžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αž αžΎαž™αžŸαžšαžŸαŸαžšαž›αŸαž 01 αž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„ αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αž‘αžΆαž‰αž™αž€αžœαžΆαž–αžΈ Rutoken SDK αžαžΆαž˜αž•αŸ’αž›αžΌαžœ sdk/openssl/rtengine/samples/tool/demoCAαŸ” /.
      αž“αŸ…αž€αŸ’αž“αž»αž„αžαž demoCA αž˜αžΆαž“αž―αž€αžŸαžΆαžšαžŸαŸ€αžšαŸ€αž› αžŠαŸ‚αž›αž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαŸ”
    2. αž”αž„αŸ’αž€αžΎαžαžŸαŸ„αž―αž€αž‡αž“αž‡αžΆ root αŸ”
      αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž™αžΎαž„αž“αžΉαž„αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž”αžŽαŸ’αžŽαžΆαž›αŸαž™ openSSL αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžαŸ‚αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž“αŸ…αž›αžΎαž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ–
      openssl genpkey -algorithm gost2012_256 -pkeyopt paramset:A -out ca.key

    3. αž”αž„αŸ’αž€αžΎαžαžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš root αŸ”
      αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž™αžΎαž„αž“αžΉαž„αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž–αžΈαž”αžŽαŸ’αžŽαžΆαž›αŸαž™ openSSLαŸ–
      openssl req -utf8 -x509 -key ca.key -out ca.crt

      αžŸαžΌαž˜αž…αŸ†αžŽαžΆαŸ†αžαžΆαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš root αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαžŸαŸ„αž―αž€αž‡αž“ root αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž€αŸ’αž“αž»αž„αž‡αŸ†αž αžΆαž“αž˜αž»αž“αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αžαžαžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

    αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαžαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αŸαž‰αž›αŸαž‰αž“αŸƒαžαž demoCA αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αžΆαž…αžšαž€αž”αžΆαž“αž αžΎαž™αŸ” αžŠαžΆαž€αŸ‹αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž“αŸ…αž€αŸ’αž“αž»αž„αžαžαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž€αŸ’αž“αž»αž„αž‡αŸ†αž αžΆαž“αž‘αžΈ 5 αŸ”

αž™αžΎαž„αž“αžΉαž„αžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž”αž‰αŸ’αž…αž”αŸ‹αž‘αžΆαŸ†αž„ 8 αž…αŸ†αžŽαž»αž… αž˜αž‡αŸ’αžˆαž˜αžŽαŸ’αžŒαž›αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžšαž”αžŸαŸ‹αž™αžΎαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αŸ”

αž“αŸ…αž•αŸ’αž“αŸ‚αž€αž”αž“αŸ’αž‘αžΆαž”αŸ‹ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž’αžΆαž‡αŸ’αž‰αžΆαž’αžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž“αžΌαžœαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„ αž•αŸ’αž“αŸ‚αž€αž˜αž»αž“αž“αŸƒαž’αžαŸ’αžαž”αž‘.

αž”αŸ’αžšαž—αž–: www.habr.com

αž‘αž·αž‰αž€αžΆαžšαž”αž„αŸ’αž αŸ„αŸ‡αžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸαž αž‘αŸ†αž–αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž€αžΆαžšαž–αžΆαžš DDoS, αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ VPS VDS πŸ”₯ αž‘αž·αž‰αžŸαŸαžœαžΆαž”αž„αŸ’αž αŸ„αŸ‡αž‚αŸαž αž‘αŸ†αž–αŸαžšαžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αžΆαžšαž–αžΆαžš DDoS αž“αž·αž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ VPS VDS | ProHoster