openssl pkcs12 продолжает удалять парольную фразу PEM из записи хранилища ключей?

openssl pkcs12 продолжает удалять парольную фразу PEM из записи хранилища ключей?

OpenSSL 1.0.1e 11 февраля 2013 г.

Генерация самоподписанного сертификата:

openssl req -x509 -newkey rsa:1024 -keyout key.pem -out cert.pem -days 365

В ходе процессаПарольная фраза PEMтребуется:

Введите пароль PEM:
Проверка — Введите пароль PEM:

После успешного завершения в результате есть 2 файлаПЕМформат:

ключ.pem, сертификат.pem

Закрытый ключ (ключ.pem) вПККС#8формат и начальная строка выглядит так:

-----НАЧАЛО ЗАШИФРОВАННОГО ЧАСТНОГО КЛЮЧА-----

Теперь я пытаюсь объединить сертификат, а также связанный с ним закрытый ключ, вПККС#12хранилище ключей и защитите хранилище ключей с помощьюпарольПримечание: насколько я понимаю, это должно эффективно обеспечить запроспарольво время доступа для чтения, а такжепарольная фразадля закрытого ключа соответствующей записи:

openssl pkcs12 -export -inkey key.pem -in cert.pem -out keystore.p12

При исполнении мне было предложено следующее:

Введите пароль для key.pem:
Введите пароль экспорта:
Проверка — введите пароль экспорта:

Однако, насколько я понимаю,парольная фразадолжны оставаться нетронутыми длязакрытый ключкоторый сейчас хранится вхранилище ключей.p12файл. Вот как я пытаюсь прочитать содержимое хранилища ключей:

openssl pkcs12 -nodes -info -in keystore.p12

Вывод, который я получаю (относится только к защите хранилища ключей с помощьюпароль):

Введите пароль для импорта:

И перечисляет сертификат, а также закрытый ключ, в формате PEM без запросапарольная фразадля последнего. Это в основном проблема.Парольная фраза PEMбольше нет длязакрытый ключ. Что я делаю не так или как это исправить? Спасибо.

решение1

Ничего плохого. Так работает PKCS12. PKCS12 — это формат для безопасной передачи цепочек сертификатов и закрытых ключей между токенами. Защита/шифрование закрытого ключа осуществляется с помощью парольной фразы, которую вы ввели при запросе «Введите пароль экспорта». Нет ничего лучше дважды зашифрованных ключей.

EDIT: Опустить -nodesопцию. Это отключает шифрование закрытого ключа.

Связанный контент