Генерация pfx сертификата от pem rsa

У меня есть закрытый ключ PEM RSA, сгенерированный с помощью opendkim:

# dkim-genkey -t -s code001 -d domain.com

и для использования его с exchange, мне нужно преобразовать его в pfx с помощью этой команды:

# openssl pkcs12 -export -in code001.private -nodes -out code001.pfx -nokeys
Enter Export Password:
Verifying - Enter Export Password:
4192275:error:0D0C6070:asn1 encoding routines:ASN1_item_pack:encode error:asn_pack.c:170:

но я получаю эту ошибку, и я не знаю, является ли это правильным способом сделать это.

3 ответа

Решение

Это не удается, потому что code001.private содержит только ключ RSA, в то время как pkcs12 ожидает сертификат для него. Кроме того, как сказал Стефан, опция -nokeys заставит openssl пропустить закрытый ключ.

Вы можете создать сертификат с

openssl req -new -x509 -key code001.private -out code001.pem

и заполните интерактивные вопросы, а затем сгенерируйте PFX с

cat code001.private code001.pem |openssl pkcs12 -export -out code001.pfx

-nokeys параметр приведет к тому, что OpenSSL не будет включать какой-либо закрытый ключ в вывод и -nodesПараметр попросит не шифровать какой-либо закрытый ключ. В любом случае это не приведет к использованию файла PKCS#12.

Попробуйте это с:

openssl pkcs12 -export -in code001.private -out code001.pfx

Попробуйте: openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt

Другие вопросы по тегам