Chcem používať OpenSSL na generovanie súkromných / verejných / (Žiadosť o podpisovanie certifikátov) a neskôr sem prihlásiť niektoré údaje. Ale chcem ju použiť OpenSSL GOST engine.
Stiahol som OpenSSL 1.0.0 a upravené openssl.cfg file:
openssl_conf = openssl_def
[openssl_def]
engines = engine_section
[engine_section]
gost = gost_section
[gost_section]
engine_id = gost
dynamic_path = ./gost.dll
default_algorithms = ALL
CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet
Môžem vytvoriť súkromný kľúč a CSR (jednoriadkový príkazový reťazec):
openssl req -newkey gost2001 -pkeyopt paramset:A -passout pass:aofvlgzm
-subj "/C=RU/ST=Moscow/L=Moscow/O=foo_bar/OU=foo_bar/CN=developer/
emailAddress=vany.egorov@gmail.com"
-new > certificate_signing_request.csr
Mám 2 súbory:
- certificate_signing_request.csr
- privkey.pem
Viem, že môžem urobiť (vytlačí (nezašifrované) textové vyjadrenie súkromných a verejných kľúčov):
openssl genpkey -algorithm gost2001 -pkeyopt paramset:A -text
Namiesto RSA používam GOST, preto nemôžem len urobiť:
openssl rsa -in privkey.pem -pubout -out pubkey.pem
Enter pass phrase for privkey.pem:
6132:error:0607907F:digital envelope routines:EVP_PKEY_get1_RSA:expecting an rsa key:.cryptoevpp_lib.c:288:
Moja otázka je: ako môžem generovať / získať verejný kľúč (mabye z privátneho kľúča alebo z csr) pomocou gost?</ Strong>
Používam:
- Windows 7 Professional x64;
- OpenSSL 1.0.0;
- Gost motor.
Ďakujeme za pomoc.
odpovede:
17 pre odpoveď č. 1Vyriešil som svoj problém.
Sprievodca krok za krokom pre každého, kto chce alternatívu КРИПТО-ПРО
Žiadosť o podpísanie certifikátu (CSR) + súkromný kľúč
./openssl req -newkey gost2001 -pkeyopt paramset:A -passout pass:aofvlgzm -subj "/C=RU/ST=Moscow/L=Moscow/O=foo_bar/OU=foo_bar/CN=developer/emailAddress=vany.egorov@gmail.com" -keyout private.key.pem -out csr.csr
Prihláste CSR (csr.csr) s private.key.pem (!!! ADMIN COMMAND PROMT ONLY !!!)
ak nie admin: "nedá sa napísať" náhodný stav ""
./openssl x509 -req -days 365 -in csr.csr -signkey private.key.pem -out crt.crt
Získajte verejný kľúč
./openssl x509 -inform pem -in crt.crt -pubkey -noout > public.key.pem
Získajte GOST2001-md_gost94 hex
./openssl.exe dgst -hex -sign private.key.pem message.xml
Získajte aplikáciu MIME / x-pkcs7-signature
./openssl smime -sign -inkey private.key.pem -signer crt.crt -in message.xml