Создание закрытого и открытого ключей OpenSSL
у меня есть следующие команды для OpenSSL для создания закрытого и открытого ключа:
openssl genrsa –aes-128-cbc –out priv.pem –passout pass:[privateKeyPass] 2048
и
openssl req –x509 –new –key priv.pem –passin pass:[privateKeyPass] -days 3650 –out cert.cer
но они не работают для первой команды, я получаю следующую ошибку :
usage: genrsa [args] [numbits]
-des encrypt the generated key with DES in cbc mode
-des3 encrypt the generated key with DES in ede cbc mode (168 bit key)
-seed
encrypt PEM output with cbc seed
-aes128, -aes192, -aes256
encrypt PEM output with cbc aes
-camellia128, -camellia192, -camellia256
encrypt PEM output with cbc camellia
-out file output the key to 'file
-passout arg output file pass phrase source
-f4 use F4 (0x10001) for the E value
-3 use 3 for the E value
-engine e use engine e, possibly a hardware device.
-rand file:file:...
load the file (or the files in the directory) into
the random number generator
что я делаю не так?
изменить: я решил первую команду:
openssl genrsa -aes128 -out privkey.pem 2048
теперь я получаю ошибку с второй:
unknown option –x509
2 ответов
'genrsa' генерирует только ключ RSA.
' req ' затем использует этот ключ, чтобы сделать запрос стиля x509.
Если вам просто нужна пара ключей rsa-используйте genrsa.
Если вам нужна пара клавиш и подписанный запрос x509, вы используете "genrsa", а затем "req".
необязательно " req "также может генерировать этот ключ для вас (т. е. он инкапсулирует команду "genrsa" (и gendh).
Так:
openssl genrsa -aes128 -out privkey.pem 2048
openssl req -new -x509 -key privkey.pem
почти эквивалентно к
openssl req -new -x509 -keyout privkey.pem -newkey rsa:2048
за исключением того, что в отличие от "genrsa", " req " не позволяет указать AES128 в качестве шифрования.
поэтому во многих корпоративных настройках это делается в два этапа, чтобы получить достаточный контроль над применяемым шифрованием ключа.
как я вижу из вывода, вы выбираете неправильный алгоритм.
Разве вы не должны пройти -aes128
вместо -aes-128-cbc
?
из руководства я предполагаю, что -aes-128-cbc
является правильным параметром для openssl enc
, но я не знаю, должен ли он работать для genrsa
.