Как определить тип сертификата из файла

20

Кажется, что не существует стандартного соглашения об именах для сертификатов OpenSSL, поэтому я хотел бы знать, есть ли простая команда для получения важной информации о любом сертификате OpenSSL, независимо от типа. Я хотел бы узнать, по крайней мере, тип сертификата (x509, RSA, DSA) и является ли он открытым или закрытым ключом. Глядя на содержимое сертификата, которое я только что извлек из файла PKCS12, ни одно из них явно не показано.

    
задан l0b0 12.11.2009 в 14:29
источник

2 ответа

30

Во-первых, у вас есть несколько проблем с терминологией:

  • стандарт X509 определяет сертификаты, а RSA и DSA - это два алгоритма открытого ключа, которые могут использоваться в этих сертификатах;
  • сертификаты используются для хранения открытых ключей и никогда закрытых ключей.
  • PKCS # 12 является стандартом для контейнера, в котором могут храниться клиентские сертификаты X509 и соответствующие закрытые ключи, а также (опционально) сертификаты X509 центров сертификации, которые подписывают сертификаты клиента X509.
  • >

Итак, если вы изучаете файл PKCS # 12 (обычно расширение .p12), то вы уже знаете:

  • Он содержит как минимум один клиентский сертификат X509, содержащий открытый ключ; и
  • Он содержит соответствующие закрытые ключи.

Все, что вы не знаете, - это тот сертификат и amp; закрытый ключ - RSA или DSA. Вы можете проверить это, извлекая сертификат (ы), а затем изучите их:

openssl pkcs12 -in mycert.p12 -clcerts -nokeys -out mycert.crt
openssl x509 -in mycert.crt -text

Текстовый вывод команды openssl x509 должен содержать раздел Subject Public Key , который будет содержать поля, которые позволят вам увидеть, является ли это RSA или DSA-ключ (вместе с размером ключа).

    
ответ дан caf 13.11.2009 в 03:19
0

Сертификаты также могут быть ограничены определенным использованием.

Например, он может быть ограничен, так что он не может использоваться в качестве центра сертификации. Подробнее читайте в этой статье StackOverflow .

    
ответ дан Wilt 07.03.2017 в 09:36