Конвертировать файл pfx в файл PEM с открытым ключом в кодировке base46 - PullRequest
0 голосов
/ 11 февраля 2019

Я новичок в сертификатах и ​​ключах.

Мне выдан файл pfx, и требуется извлечь открытый ключ из файла PEM в кодировке base64.

Я использовал нижеприведенноеКоманда для извлечения закрытого ключа

openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes

Я использовал приведенную ниже команду для извлечения сертификата

 openssl pkcs12 -in certname.pfx -nokeys -out cert.pem

Открытый сертификат с использованием

openssl pkcs12 -in certname.pfx -nodes -clcerts -nokeys | openssl x509 -out public.crt

Но как мнеполучить открытый ключ?А как кодировать это base64?

1 Ответ

0 голосов
/ 11 февраля 2019

Формат PEM является сертификатом в формате base64.Таким образом, «открытый» ключ должен быть в сгенерированном файле «cert.pem» (вместе со всеми цепочечными сертификатами).Вы можете открыть этот файл в текстовом редакторе, чтобы увидеть его.

Если вам нужен только сертификат открытого ключа, вы можете выполнить следующую команду.

openssl pkcs12 -in cert.pfx -nokeys -clcerts -out public.pem

Вы можете понять почему, посмотрев документацию openssl на предмет используемых аргументов:

-clcerts

Выводить только клиентские сертификаты (не сертификаты CA).

-nokeys

Не будут выводиться личные ключи.

-out filename

Имя файла для записи сертификатов и закрытых ключей, стандартный вывод по умолчанию.Все они записаны в формате PEM.

Если в PFX нет цепных сертификатов, приведенная выше команда выведет тот же файл pem, что и сгенерированный файл cert.pem.

...