په سیسټم کې د کاروونکو راجستر کولو او واک ورکولو لپاره د روتوکن ټیکنالوژۍ کارولو تجربه (دوهمه برخه)

بعد له غرمه مو پخیر راځئ چې دې موضوع ته دوام ورکړوپخوانۍ برخه په لینک کې موندلی شئ).

نن موږ عملي برخې ته ځو. راځئ چې د بشپړ خلاصې سرچینې کریپټوګرافیک کتابتون OpenSSL پراساس زموږ د CA ترتیب کولو سره پیل وکړو. دا الګوریتم د وینډوز 7 په کارولو سره ازمول شوی.

د OpenSSL نصب سره، موږ کولی شو د کمانډ لاین له لارې مختلف کریپټوګرافیک عملیات (لکه د کیلي او سندونو جوړول) ترسره کړو.

د کړنو الګوریتم په لاندې ډول دی:

  1. د نصبولو ویش ډاونلوډ کړئ openssl-1.1.1g.
    OpenSSL مختلف نسخې لري. د روتوکن لپاره اسناد وویل چې د OpenSSL نسخه 1.1.0 یا نوي ته اړتیا ده. ما د Openssl-1.1.1g نسخه کارولې. تاسو کولی شئ د رسمي سایټ څخه OpenSSL ډاونلوډ کړئ، مګر د اسانه نصبولو لپاره، تاسو اړتیا لرئ چې په شبکه کې د وینډوز لپاره د نصبولو فایل ومومئ. ما ستاسو لپاره دا وکړل: 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 Files\OpenSSL-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
    

    اوس موږ اړتیا لرو چې د ډیموکا لارښود او فرعي لارښود رامینځته کړو لکه څنګه چې پورته مثال کې ښودل شوي. او دا په دې ډایرکټر کې د هغه لارې په اوږدو کې ځای په ځای کړئ چې په dir کې مشخص شوی (زه لرم /Users/username/bin/openSSLca/demoCA).

    دا خورا مهم دی چې د dir په سمه توګه املا وکړئ - دا هغه لارښود ته لاره ده چیرې چې زموږ د تصدیق مرکز به موقعیت ولري. دا لارښود باید په / کاروونکي کې موقعیت ولري (یعنې د ځینې کارونکي په حساب کې). که تاسو دا لارښود ځای په ځای کړئ، د بیلګې په توګه، په C: پروګرام فایلونو کې، سیسټم به فایل د openssl.cfg ترتیباتو سره ونه ګوري (لږترلږه دا زما لپاره ورته و).

    $dir - په dir کې مشخص شوی لاره دلته ځای په ځای شوې.

    بل مهم ټکی دا دی چې د خالي index.txt فایل جوړ کړئ، پرته له دې دوتنې "openSSL ca …" کمانډونه به کار ونکړي.

    تاسو اړتیا لرئ یو سریال فایل ولرئ، د روټ شخصي کیلي (ca.key)، د روټ سند (ca.crt). د دې فایلونو ترلاسه کولو پروسه به لاندې تشریح شي.

  6. موږ د روتوکن لخوا چمتو شوي کوډ کولو الګوریتم سره وصل کوو.
    دا اړیکه په 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/ru/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: د پروګرام فایلونهOpenSSL-Win64bin.

  8. اوس تاسو کولی شئ بیرته 5 مرحلې ته لاړ شئ او د ډیموکا لارښود لپاره ورک شوي فایلونه رامینځته کړئ.
    1. لومړی مهم فایل چې پرته یې هیڅ کار نه کوي سیریل دی. دا یو فایل دی پرته له توسیع څخه، ارزښت یې باید 01 وي. تاسو کولی شئ دا فایل پخپله جوړ کړئ او دننه 01 ولیکئ. تاسو کولی شئ دا د روتوکن SDK څخه د لارې په اوږدو کې ډاونلوډ کړئ sdk/openssl/rtengine/samples/tool/demoCA /.
      د ډیموکا لارښود سیریل فایل لري ، کوم چې په حقیقت کې هغه څه دي چې موږ ورته اړتیا لرو.
    2. د روټ شخصي کیلي رامینځته کړئ.
      د دې کولو لپاره، موږ به د OpenSSL کتابتون کمانډ وکاروو، کوم چې باید په مستقیم ډول د کمانډ لاین کې پرمخ ولاړ شي:

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

    3. موږ د روټ سند جوړوو.
      د دې کولو لپاره، لاندې د OpenSSL کتابتون کمانډ وکاروئ:

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

      مهرباني وکړئ په یاد ولرئ چې د روټ شخصي کیلي، کوم چې په تیر مرحله کې رامینځته شوی، د روټ سند تولیدولو لپاره اړین دی. نو ځکه، د کمانډ لاین باید په ورته لارښود کې پیل شي.

    هرڅه اوس د ډیموکا لارښود بشپړ تنظیم کولو لپاره ټولې ورک شوي فایلونه لري. جوړ شوي فایلونه په 5 نقطه کې ښودل شوي لارښودونو کې ځای په ځای کړئ.

موږ به فرض کړو چې د ټولو 8 ټکو بشپړولو وروسته ، زموږ د تصدیق مرکز په بشپړ ډول تنظیم شوی.

په راتلونکې برخه کې، زه به تشریح کړم چې څنګه به موږ د تصدیق کولو ادارې سره کار وکړو ترڅو هغه څه ترسره کړو چې په کې تشریح شوي. د مقالې پخوانۍ برخه.

سرچینه: www.habr.com

Add a comment