Подтвердить что ты не робот

Создание файла .p12

Используя openssl, я создал закрытый ключ следующим образом:

openssl genrsa -out myKey.pem

Затем, чтобы сгенерировать csr, требуемый CA, я выполнил следующее:

openssl req -new -key myKey.pem -out cert.csr

CA ответил сертификатом, который я сохранил в файле с именем myCert.cer

Теперь я хочу связать необходимые компоненты (закрытый ключ, открытый ключ (?) и сертификат) в один .p12. Для этого я запустил следующее:

openssl pkcs12 -export -out keyStore.p12 -inkey myKey.pem -in myCert.cer

но я получаю следующее сообщение об ошибке:

No certificate matches private key

Как я могу это сделать?

4b9b3361

Ответ 1

В документации openssl говорится, что файл, поставляемый в качестве аргумента -in, должен быть в формате PEM.

Оказывается, что вопреки руководству CA сертификат, возвращенный ЦС, который я сохранил в myCert.cer, не является PEM, а имеет значение PKCS7.

Чтобы создать мой .p12, мне пришлось сначала преобразовать сертификат в PEM:

openssl pkcs7 -in myCert.cer -print_certs -out certs.pem

а затем выполните

openssl pkcs12 -export -out keyStore.p12 -inkey myKey.pem -in certs.pem