Cryptopro komandų eilutė. CryptoPRO: Bat failas skaitmeniniam parašui kurti. Keletas naudingų komandų

Vidinis

Įdiegta ROSA Enterprise Linux Server 6.7 sistema „ROSA Standard Server“ konfigūracijoje, prieiga prie saugyklų (tam reikia naudoti raktą, iš anksto gautą iš palaikymo tarnybos, vykdant komandą echo “<ключ>"> /etc/rosa-support-id-server su administratoriaus teisėmis).

Pritaikomumas

Instrukcijose aprašomas CIPF CryptoPro CSP 4.0 diegimas, skirtas ROSA Enterprise Linux Server 6.7, kad veiktų su Rutoken. Pavyzdys pateiktas 64 bitų AMD64 architektūrai; 32 bitų architektūrai diegimas yra panašus, išskyrus diegimo paketų ir aplankų nurodymą.

Pastaba
Kai nekalbama apie būtinybę naudotis supervartotojo teisėmis, suprantama, kad viskas daroma su vartotojo, kuris dirbs Firefox naršyklėje, teisėmis. Šis vartotojas turi išlikti toks pat viso aprašyto proceso metu.

Diegimo paketų gavimas

Norėdami įdiegti CIPF CryptoPro CSP 4.0, pirmiausia turite užsiregistruoti svetainėje https://www.cryptopro.ru/ ir atsisiuntimo puslapyje https://www.cryptopro.ru/products/csp/downloads atsisiųsti 4.0 R2 versiją Linux rpm formatu

Taip pat iš karto atsisiųsime CryptoPro EDS naršyklės papildinio 2.0 | versiją iš čia

Po to naršyklė turėtų būti uždaryta.

Montavimas

Norėdami įdiegti, turite išpakuoti gautą archyvą. Norėdami tai padaryti, atidarykite terminalą (terminalo skirtukas yra kairėje programų paleidimo priemonės viduryje)

ir paleiskite šias komandas:

cd ~/Atsisiuntimai/ tar -xvf linux-amd64.tgz tar -xvf cades_linux_amd64.tar.gz

Turėtų pasirodyti aplankas su CryptoPro diegimo failais; konsolėje galite pereiti į jį naudodami komandą

cd linux-amd64/

Pagrindinių CryptoPro komponentų diegimas

su

ir įveskite slaptažodį, tada įveskite diegimo komandas:

yum įdiegti redhat-lsb* ccid pangox-compat ./install.sh

Papildomų CryptoPro komponentų diegimas

rpm -ivh cprocsp-rdr-pcsc-* lsb-cprocsp-pkcs11-* cprocsp-rdr-gui-gtk-*

Taip pat verta atkreipti dėmesį į įrenginių palaikymo paketus (žetonus / skaitytuvus / išplėtimo korteles). Šie paketai yra CryptoPro CSP archyve, jų pavadinimai prasideda cprocsp-rdr-. Jei jums reikia naudoti konkretų įrenginį (pvz., Rutoken EDS), turėtumėte įdiegti atitinkamą paketą ( rpm -ivh cprocsp-rdr-rutoken*). Archyve taip pat yra tvarkyklių paketų ( ifd-*) jie taip pat turėtų būti įdiegti naudojant atitinkamą įrenginį (Rutoken S -> rpm -ivh ifd-rutokens*).

Neturėtumėte įdiegti paketo cprocsp-rdr-gui, nes kartu su cprocsp-rdr-gui-gtk jis sutrikdo grafinių komponentų veikimą.

Naršyklės papildinio diegimas

CD.. rpm -ivh lsb-cprocsp-devel* yum įdiegti cprocsp-pki-2.0.0-amd64-cades.rpm yum įdiegti cprocsp-pki-2.0.0-amd64-plugin.rpm

Žetono prijungimas

Dabar šakninį prieigos raktą galite prijungti prie kompiuterio USB prievado

Paleiskite programą pcscd atskirame konsolės lange su administratoriaus teisėmis (root). Šiame etape naudojama derinimo paleidimo parinktis.

su killall pcscd pcscd -adfffff

Po paleidimo šios konsolės neuždarysime (ten galite pamatyti, kaip sistema bendrauja su intelektualiąja kortele).

Vėlesnėms komandoms naudosime konsolę, kurią atidarėme pirmiausia. Jiems nereikia supervartotojo teisių (galite terminale įvesti exit, kad atšauktumėte šakninį režimą).

Programa turėtų matyti įrenginį:

Sertifikatų diegimas

Patikimų mazgų sąrašo redagavimas

Pirmiausia turėtumėte įtraukti CryptoPro svetainę į patikimų sąrašą. Norėdami tai padaryti, uždarykite naršyklę, jei ji buvo atidaryta, ir įveskite komandą konsolėje (be administratoriaus teisių):

firefox /etc/opt/cprocsp/trusted_sites.html

Įveskite svetainės pavadinimą eilutėje „Pridėti naują“, spustelėkite „+“ ir „Išsaugoti“.

CA sertifikatų diegimas

Norėdami dirbti su sertifikatais, turite įdiegti sertifikavimo institucijos sertifikatą (šiuo atveju šakninis sertifikatas įdiegiamas tiesiogiai) ir sertifikatą iš šakninio prieigos rakto į vietinę saugyklą. Norėdami tai padaryti, iš sertifikavimo institucijos svetainės turite atsisiųsti failą, kuriame yra sertifikatų grandinė (dažniausiai failas su plėtiniu .cer arba .p7b) ir atšauktų sertifikatų sąrašas. Juos rasite šioje nuorodoje (https://www.cryptopro.ru/certsrv/certcarc.asp). Turite spustelėti „Atsisiųsti CA sertifikatų grandinę“ ir „Atsisiųsti naujausią bazinę CRL“. Naudodami įprastas vartotojo teises konsolėje paleiskite šias komandas:

/opt/cprocsp/bin/amd64/certmgr -inst -store uRoot -file ~/Downloads/certnew.p7b /opt/cprocsp/bin/amd64/certmgr -inst -crl -file ~/Downloads/certcrl.crl

Galite sužinoti daugiau apie certmgr programą. Dabar pereikime prie darbo su konteineriais, esančiais žetonu. Jei įrenginyje nėra konteinerių, galite juos sukurti. Norėdami tai padaryti, naudokite pastraipoje pateiktas instrukcijas. Sumontavus pakuotes (5.1. ir 5.2. punktas), įrenginyje turėtų būti matyti konteineriai. Norėdami sužinoti kelią į konteinerį ir jo egzistavimą, galite įvesti:

Sertifikato įdiegimas iš konteinerio ant žetono

Dabar įdiekite sertifikatą iš šakninio prieigos rakto į savo asmeninę saugyklą (uMy):

/opt/cprocsp/bin/amd64/certmgr -inst -cont "<путь к контейнеру, начинающийся на \\.\>“ -parduotuvė uMy

Jei viskas buvo atlikta be klaidų, galite pereiti prie taško

Pastaba
Dažniausiai plėtinys .cer atitinka sertifikatą, o .p7b – konteinerį, kuriame gali būti vienas ar daugiau sertifikatų (pavyzdžiui, jų grandinė).

Sukurkite bandymo sertifikatą

Konteinerio sukūrimas standžiajame diske

Jei įrenginyje nėra konteinerių, galite juos sukurti. Einame į testavimo sertifikavimo centrą (CA) CryptoPro (http://www.cryptopro.ru/certsrv/certrqma.asp) ir užpildome reikiamus laukus (būtina užpildyti tik laukelį „Vardas:“). Būtina pažymėti raktą kaip eksportuojamą. Verta paminėti, kad patikrinimui, naudotam „Naršyklės papildinio veikimo tikrinimui“, reikia naudoti 2001 m. standartą.

Spustelėkite mygtuką „Problema >“.




Dabar galite nukopijuoti konteinerį į prieigos raktą, bet pirmiausia turite sužinoti jo pavadinimą. Norėdami tai padaryti, atidarykite konsolę ir paleiskite šią komandą:

/opt/cprocsp/bin/amd64/list_pcsc

Taip pat turite sužinoti visą konteinerio, gauto generuojant sertifikatą, pavadinimą:

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn

Konteinerio kopijavimas į žetoną

Tada mes naudojame šiuos pavadinimus šioje komandoje:

/opt/cprocsp/bin/amd64/csptest -keycopy -contsrc "<полное название контейнера>" -contdest "\\.\<название токена>\<желаемое название контейнера>"


Dabar prieigos rakte yra konteineris. Galite grįžti į skiltį „Sertifikato diegimas iš konteinerio ant žetono (7.3 skyrius)“, pirmiausia ištrynę sertifikatą, įdiegtą iš talpyklos standžiajame diske (sugeneruotą bandymo sertifikavimo institucijos).

Pastaba
Turite įdiegti sertifikatą tiesiai iš konteinerio, esančio ant prieigos rakto, kad sistema susietų sertifikatą su įrenginiu

Šį sertifikatą galite pašalinti naudodami šią komandą:

/opt/cprocsp/bin/amd64/certmgr -del

Ir, jei reikia, pasirenkant sertifikato numerį, kurį reikia ištrinti.

Elektroninio parašo veikimo patikrinimas naudojant naršyklės papildinį

Norėdami patikrinti naršyklės papildinio veikimą, galite naudoti šį šaltinį: https://www.cryptopro.ru/sites/default/files/products/cades/demopage/simple.html Taip pat verta patikrinti, ar jis nereikalingas sertifikatai yra įdiegti, resursas tinkamai veikia tik tada, kai įdiegtas vienas sertifikatas (galite naudoti komandą /opt/cprocsp/bin/amd64/certmgr -del). Jei veikia tinkamai, puslapis atrodys maždaug taip.

Apibendrinimas

Apskritai diegimo algoritmas atrodo taip:

„CryptoPro“ komandų eilutės paslaugų naudojimo rekomendacijos

Aplinkos kintamųjų nustatymas

Kad būtų patogiau, pirmiausia turėtumėte tai padaryti taip, kad galėtumėte paleisti programas, kiekvieną kartą nenurodydami kelio iki jų. Tai galima padaryti įvairiais būdais. Tokiu atveju siūloma atlikti šiuos veiksmus:

Konsolėje gauname supervartotojo teises (įveskite su ir įveskite slaptažodį) Įveskite šią komandą (norėdami nurodyti kelią visiems vartotojams, išskyrus supervartotoją):

echo "eksportuoti PATH=$PATH:/opt/cprocsp/bin/amd64:/opt/cprocsp/sbin/amd64" >> /etc/profile

Jei tą patį reikia padaryti su supervartotoju, naudokite komandą

echo "eksportuoti PATH=$PATH:/opt/cprocsp/bin/amd64:/opt/cprocsp/sbin/amd64" >> /root/.bash_profile

Perkraukite

Norėdami patikrinti, galite pasirašyti failą ir patikrinti parašą:

Naudojant slapyvardžius

Dažnai naudojamoms komandoms (pvz., komandai surašyti konteinerius) verta naudoti paprastus, greitai įvedamus slapyvardžius. Norėdami priskirti slapyvardžius, turite naudoti komandą slapyvardžiai. Pavyzdžiui, priskirkime komandai slapyvardį

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn

Konsolėje gauname supervartotojo teises (įveskite su ir įveskite slaptažodį) Įveskite šią komandą:

echo "alias conts="/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn"" >> /etc/bashrc

Paleisti iš naujo Darbo pavyzdį galite pamatyti žemiau.

Literatūra apie komandinės eilutės paslaugų naudojimą

Norėdami gauti informacijos apie kitas programas, geriau naudoti komandą su žyma „--help“ (pavyzdžiui, csptest --help).

Keletas naudingų komandų

Talpyklos išėmimas:

csptest -keyset -deletekeyset -container "<полное название контейнера>"

Rodyti patikimas svetaines:

cpconfig -ini "\local\Software\Crypto Pro\CAdESplugin\TrustedSites" -vaizdas

Konteinerio kopijavimas:

csptest -keycopy -contsrc "<полное название исходного контейнера>"-konkursas"<полное название контейнера назначения>"

Numatytųjų šifravimo paslaugų teikėjo keitimas (galimus tipus ir pavadinimus galima peržiūrėti naudojant komandą cpconfig -defprov -view_type):

cpconfig -defprov -setdef -provtype<тип провайдера>-provardas<название провайдера>

Sužinokite CryptoPro versiją:

csptest -keyset -verifycont

Peržiūrėkite licencijos informaciją:

cpconfig -license -view

Licencijos įvedimas (raktas parašytas be kabučių):

cpconfig -license -set<номер лицензии>

Galimų konteinerių sąrašas:

csptest -keyset -enum_cont -verifyc -fqcn

Šiandienos trumpą įrašą nusprendžiau skirti elektroninio skaitmeninio parašo kūrimo naudojant kriptovaliutų tiekėją „CryptoPRO“ temai. Kalbėsime apie Bat failą, kuriuo galima automatizuoti elektroninių dokumentų pasirašymą.

Norint automatizuoti elektroninių dokumentų pasirašymo procesą, mums reikės:
1) Crypto-PRO CSP;
2) USB raktas (pvz., Rutoken), įdėtas į USB prievadą;
3) Notepad (Notepad.exe);
4) Įdiegti jūsų rakto sertifikatai;

Visos šios istorijos kliūtis yra csptest.exe failas, esantis CryptoPro kataloge (pagal numatytuosius nustatymus C:\Program Files\Crypto Pro\CSP\csptest.exe).

Atidarykime komandų eilutę ir vykdykime komandą:

Cd C:\Program Files\Crypto Pro\CSP\ ir csptest

Pamatysime visus galimus šio exe failo parametrus.

pasirinkti iš:-padėkite atspausdinti šią žinyną -noerrorlaukti nelaukti jokio klaidos klavišo -notime nerodyti prabėgusio laiko -pauzėti Pabaigus laukti klaviatūros įvesties, kad galėtumėte patikrinti atminties ir kitų išteklių naudojimą -perkraukite paskutinio naudoto CSP iškvieskite DestroyCSProvider() prie išėjimo Paslaugos (cryptsrv*, HSM ir kt.) nepaveiktos -randinit Inicijuoti sistemos rng naudojant srand(x) (numatytasis: laikas) -showrandinit Rodyti sistemos rng inicijavimo vertę -stekas Išmatuoti dėklo naudojimą pasirinkti iš:-lowenc žemo lygio šifravimo / iššifravimo testas -sfenc supaprastinto lygio pranešimų šifravimo / iššifravimo testas -cmslowsign CMS žemo lygio pranešimų pasirašymo testas -cmssfsign CMS supaprastinto lygio pranešimų pasirašymo / tikrinimo testas -lowsign žemo lygio pranešimų pasirašymo testas -lowsignc žemo lygio pranešimų pasirašymo testas su ciklas Vietoje to naudokite "-lowsign -repeat NN"! -sfsign supaprastinto lygio pranešimų pasirašymo / tikrinimo testas -ipsec ipsec testai -defprov numatytosios teikėjo manipuliacijos -testpack kelių testų paketas -ypatybės sertifikato gavimas / įdiegimas slaptojo rakto susiejimo ypatybė -certkey pakeisti teikėjo pavadinimą sertifikate slaptojo rakto nuoroda -konteksto teikėjo kontekstiniai testai -absorb sugeria visus sertifikatus iš konteinerių su slapto rakto susiejimu -drvtst tarpinio serverio tvarkyklės testas -signtool SDK signtool analogas -iis valdyti IIS -hsm valdyti HSM-klientą -rpcc RPC per SSL klientą -rpcs RPC per SSL serverį -oid oid informacija / rinkinys /get -passwd nustatyti / pakeisti slaptažodį -keycopy kopijuoti konteinerį -keyset sukurti (atidaryti) keyset -tlss start tls server -tlsc start tls client -tls TLS testai -prf PRF testai -maišos maišos testas -makecert sertifikato išdavimo testas -certprop rodyti sertifikatą ypatybės -rc patikrinti pkcs#10/sertifikato parašas -cmsenclow CMS žemo lygio pranešimų šifravimo / iššifravimo testas -sfse supaprastinto lygio pranešimas SignedAndEnveloped testas -Įsigyti/išleisti konteksto nepalankiausio poveikio testas -ep viešojo rakto eksporto testas -enum CSP parametrų išvardijimas -cpenc CP/ Kripto lygio (advapi32) šifravimo testai -setpp SetProvParam testai -perf Našumo testai -greičio testai ir optimalios funkcijos kaukės nustatymas -testcont Įdiegti/pašalinti bandomuosius konteinerius -įdiegti CSP diegimo informaciją, išvalyti CSP -versija Spausdinti CSP versiją

Norėdami pamatyti tam tikros visuotinės parinkties parametrus, tiesiog iškvieskite šį failą su šia parinktimi, pavyzdžiui

Csptest -sfsign : -sign Pasirašyti duomenis iš įvesties failo pavadinimo -patikrinti Patikrinkite parašą ant duomenų, nurodytų įvesties failo pavadinimu -pagalba Spausdinti šią žinyną : Įveskite failo pavadinimą, kurį norite pasirašyti arba patvirtinti Išvesties PKCS#7 failo pavadinimas -mano CURRENT_USER parduotuvės sertifikatas duomenims apdoroti -MY Sertifikatas iš LOCAL_MACHINE parduotuvės duomenims apdoroti – atskirtas Susidoroti su atskirtu parašu – pridėti Pridėti siuntėjo sertifikatą prie PKCS#7 – parašas Atskirtas parašo failas -alg Maišos algoritmas: SHA1, MD5, MD2, GOST - numatytasis -ask Gauti csp kontekstą naudojant mano sertifikatą (numatytasis: nėra) -base64 Įvestis / išvestis su base64DER konversija -addsigtime Pridėti pasirašymo laiko atributą -cades_strict Strict signing2 generationCertificate -cades_disable Išjungti signingCertificateV2 atributų generavimą

Taigi, norėdami pasirašyti failą per cmd naudodami csptest.exe, turite iškviesti komandą:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -mano MyPrograms LLC Ivanovas Ivanas Ivanovičius

Kur:
- mano— Nurodo rakto savininką;
— Nurodo, kurį failą reikia pasirašyti. Jei failo nėra aplanke su csptest, turite nurodyti visą kelią.;
-išeina— Nurodo parašo failo pavadinimą;

Galite patikrinti parašą Gosulsug svetainėje naudodami šią nuorodą.

Labiausiai tikėtina. Jei dabar atsisiųsite šį failą iš vyriausybės tarnybos svetainės, pasirodys klaida. Taip yra dėl to, kad reikalinga informacija apie sertifikavimo instituciją. Be to, dokumentų pasirašymo data ir laikas nebus nereikalingi. Norėdami tai padaryti, prie komandos turime pridėti du parametrus:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -mano MyPrograms LLC Ivanovas Ivanas Ivanovičius -addsigtime -add

Jei mums reikia parašo susietu formatu, pridėsime dar vieną parametrą:

Csptest -sfsign -sign -in Dogovor.doc -out Dogovor.doc.sig -my LLC MyPrograms Ivanovas Ivanas Ivanovičius -addsigtime -add -atsiskyrė

Pastaba: Jei dokumentas pasirašytas neteisingai
Neįmanoma atidaryti failo
Vykdant programą įvyko klaida.
.\signtsf.c:321:Neįmanoma atidaryti įvesties failo.
Klaidos numeris 0x2 (2).
Nurodytas failas nerastas.

kai iškviečiama kaip paskutiniame pavyzdyje ir esate tikri, kad parametrų -in ir -out keliai yra teisingi, pabandykite sukurti parašą naudodami pirmąjį pavyzdį ir tada vykdykite komandą su visu parametrų rinkiniu!!!

Gavome pagrindinę komandą pasirašyti. Dabar šiek tiek supaprastinkime procedūrą. Sukurkime bat failą, kurį paleidus bus pasirašytas failas Secret.txt, esantis tame pačiame aplanke kaip ir bat failas. Atidarykime bloknotą ir užsirašykime šį kodą:

Chcp 1251 nustatytas CurPath=%cd% cd C:\Program Files\Crypto Pro\CSP skambutis csptest -sfsign -sign -in %CurPath%\Secret.txt -out %CurPath%\Secret.txt.sig -my MyPrograms LLC Ivanov Ivanas Ivanovičius -addsigtime -add -atskirtas kompaktinis diskas %CurPath%

Spustelėkite „Failas“ -> „Išsaugoti kaip“ -> Nustatyti pavadinimą s.bat -> „Išsaugoti“
Tai viskas. Nuoroda:
chcp 1251– nustato CMD kodavimą. Būtinas tinkamam rusiškų raidžių apdorojimui kode;
nustatyti CurPath=%cd%— Išsaugo dabartinio CMD katalogo kelią į CurPath kintamąjį;
CD— Nustato esamą CMD kelią;
skambinti— paleidžia programą;