Расширение .pem
указывает, что формат файла - PEM (Privacy-Enhanced Mail) ( RF C 7468 ). Содержимым файла может быть сертификат, закрытый ключ, ключ publi c или что-то еще. Если вы откроете файл PEM в текстовом редакторе, вверху вы увидите -----BEGIN ?????-----
.
Расширение .crt
подразумевает, что содержимое файла является сертификатом. Однако расширение ничего не говорит о формате файла. Формат может быть PEM, DER (Особые правила кодирования) ( X.690 ) или что-то еще. Если файл содержит -----BEGIN CERTIFICATE-----
, формат - PEM. С другой стороны, если файл содержит двоичные данные, вполне вероятно, что это формат DER.
Расширение .key
подразумевает, что содержимое файла является закрытым ключом. Однако расширение ничего не говорит о формате файла. Формат может быть PEM, DER или что-то еще. Если файл содержит -----BEGIN PRIVATE KEY-----
, формат - PEM. С другой стороны, если файл содержит двоичные данные, скорее всего, это формат DER.
Строка csr
, которая является частью имени файла client-csr.pem
, подразумевает, что содержимое это файл CSR (запрос на подпись сертификата). Обратите внимание, что CSR НЕ является сертификатом . Похоже, вы пытаетесь преобразовать формат файла client-csr.pem
из PEM в DER, но CSR никогда не станет сертификатом, преобразовав формат файла. Я думаю, что вы должны дать команде openssl
не client-csr.pem
, а client-crt.pem
.
Понимание взаимосвязи между ASN.1 ( X.680 ), DER ( X.690 ), BASE64 ( RF C 4648 ) и PEM ( RF C 7468 ) улучшит качество ваших вопросов и поможет вам не тратить время зря. Я надеюсь, что приведенные ниже схемы, взятые из " Иллюстрированный сертификат X.509 " , могут вам помочь.
введите описание изображения здесь