Openssl: сгенерированный сертификат и ключ из pfx не совпадают

Я пытаюсь преобразовать pfx в cer и формат ключа для их использования с Nginx.

Я использую следующие команды:

openssl pkcs12 -in input.pfx -out mycerts.cer -nokeys -clcerts

и

openssl pkcs12 -in input.pfx -out mycerts.key -nocerts -nodes

Проблема в том, что файлы cer и key не не совпадают!

openssl x509 -modulus -noout -in mycerts.crt | openssl md5

и

openssl rsa -modulus -noout -in mycerts.key | openssl md5

С другими файлами pix процедура работает должным образом. Как я могу получить действующий набор сертификатов для использования с nginx?

1
задан 14 February 2019 в 03:57
1 ответ

Когда я создаю новый файл pfx и запускаю те же команды, я получаю корректный результат для вашего теста.

Шаги, которые я предпринял для воспроизведения:

# generate new x509 key/cert pair
openssl req -x509 -newkey rsa:4096 -keyout cert.key -out cert.pem -days 365

# validate key and cert
openssl rsa-modulus -noout -in cert.key | openssl md5
openssl x509 -modulus -noout -in cert.pem | openssl md5

# export key/cert pair to pkcs12
openssl pkcs12 -export -out cert.pfx -in cert.pem -inkey cert.key

# extract key and cert from pkcs12 file
openssl pkcs12 -in cert.pfx -out export.crt -nokeys -clcerts
openssl pkcs12 -in cert.pfx -out export.key -nocerts -nodes

# validate exported key and cert
openssl rsa -modulus -noout -in export.key | openssl md5
openssl x509 -modulus -noout -in export.pem | openssl md5

Итак, ваш входной файл PKCS12 должен быть сконструирован ошибочно. Обратитесь к своему источнику, если файл PKCS12 неисправен, или если файл был сгенерирован вами, правильно ли был сгенерирован

PKCS12 может представлять собой сложную структуру ключей, сертификатов и промежуточного сертификата. Я не думаю, что файловая структура запрещает хранение сертификата и ключа, которые не совпадают, хотя OpenSSL запрещает это при экспорте:

$ openssl pkcs12 -export -out cert.pfx -in cert.pem -inkey other.key
No certificate matches private key
1
ответ дан 3 December 2019 в 23:07

Теги

Похожие вопросы