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

Извлечь информацию о сертификате с помощью openssl

Я хочу проверить информацию сертификата отправителя и получателя зашифрованного / подписанного файла. Пока что я придумал следующий набор аргументов для openssl:

openssl cms -inform DER -cmsout -print -recip my.crt -in cms_file

Это возвращает следующую информацию:

CMS_ContentInfo: 
  contentType: pkcs7-envelopedData (1.2.840.113549.1.7.3)
  d.envelopedData: 
    version: 2
    originatorInfo:
...
            issuer: O=TheirCompany, CN=TheirCA
...
            subject: O=TheirCompany, CN=TheirEndpoint
...
    recipientInfos:
...
          issuer: O=TheirCompany, CN=TheirCA
...

Итак, у меня есть большая часть информации, которую я ищу, кроме темы получателя. Как мне извлечь эту информацию?

Я не уверен в тебе жестяная банка сделай это, так как recipientInfos структура не определена, например на RFC 5652, чтобы содержать свидетельство. Ключи, да ... но не сертификаты.

RFC 5652, раздел 6.1 «Тип данных EnvelopedData» определяет структуру OriginatorInfo, который может содержат набор сертификатов. Раздел 6.2 «Тип ReicipientInfo» и подразделы описывают структуру возможных RecipientInfo типы; ни одна из структур этих типов не содержит сертификатов. Таким образом, при существующей структуре может оказаться невозможным достичь того, что вы ищете.