我一直认为PKCS7是一种签名格式。
但是,在网络上,我发现了对PKCS7是一种证书格式的几个引用-例如,本文讨论的是PKCS7证书:从PKCS#7文件中提取原始证书
那么,PKCS7是一种签名格式还是证书格式,还是两者兼而有之?
发布于 2016-06-15 06:00:45
那么,PKCS7是一种签名格式还是证书格式,还是两者兼而有之?
都不是。PKCS7现在是密码信息语法(CMS)。来自RFC 5652:
此语法用于数字签名、摘要、身份验证或加密任意消息内容。
CMS支持不同产品之间的互操作性,这些产品可以在同一文档上操作,而无需了解其他产品(实现和与产品相关的其他特定信息)。CMS通过为每种数据类型(签名数据、信封数据、经过身份验证的信封数据)定义特定的消息格式来实现这一点。因此,每个支持CMS格式的产品都可以毫无问题地交换CMS格式中定义的文件或消息。
您提供的第二个链接也讨论了CMS格式。
在@Maarten的评论之后:
同样值得一提的是,PKCS代表“公钥密码学标准”。这是RSA安全公司创建的一套公钥密码学标准,其中一些标准移交给了标准组织,并在此之后成为行业标准。
此外,正如@Maarten提到的那样,使用CMS(PKCS7)格式可以存储多个证书。(检查这个答案)
https://crypto.stackexchange.com/questions/37084
复制相似问题