Openssl
使用 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,包含一個certificate。鑰匙,是的……但不是證書。RFC 5652,第 6.1 節“EnvelopedData Type”指定 的結構
OriginatorInfo
,其中可能包含一組證書。第 6.2 節“ReicipientInfo 類型”和小節描述了可能RecipientInfo
類型的結構;這些類型的結構都不包含證書。因此,鑑於目前的結構,可能無法實現您正在尋找的東西。