Назад | Перейти на главную страницу

Цепочка сертификатов openssl потеряна при преобразовании из pem в der

У меня есть цепочка сертификатов в формате .pem от Letsencrypt, которая называется fullchain.pem

Имеет в цепочке 2 сертификата:

keytool -printcert -v -file fullchain.pem |grep "Certificate fingerprints" |wc -l
2

Когда я конвертирую его в .der, используя

openssl x509 -in fullchain.pem -out cert.der -outform DER

он экспортирует только последний

keytool -printcert -v -file cert.der |grep "Certificate fingerprints" |wc -l
1

это ошибка в openssl? Мне не хватает параметра?

У вас не может быть цепочек в кодировке DER, объединяя их так, как вы можете с форматом PEM.

Цепь в двоичный формат будет в формате PKCS # 7. Чтобы преобразовать цепочку PEM в PKCS # 7, используйте:

openssl crl2pkcs7 -nocrl -certfile fullchain.pem -out fullchain.p7b

Затем, чтобы увидеть содержимое:

openssl pkcs7 -in fullchain.p7b -print_certs -noout

Добавить -text чтобы увидеть все сведения о сертификате.

Если входной файл PEM также содержит закрытый ключ, лучшим форматом будет PKCS # 12, поскольку этот формат можно защитить парольной фразой.