为什么?从 CMS/pkcs#7 到 Cades

Why? From CMS/pkcs#7 to Cades

是不是我知道CMs/pkcs#7签名中缺少一些信息来证明签名的有效性,经过了很长时间的使用CADES格式,还有其他原因吗?从 CMs/pkcs#7 格式迁移到 Cades

每种格式的优点和缺点是什么。 提前谢谢你

CAdES 本质上是一个特殊配置的 CMS(CAdES 中的“C”毕竟代表“CMS”)。因此,您不会离开 CMS,而只是遵循一些更严格或更具体的规则。

CMS 签名 (RFC 5652) 可能非常原始,它们实际上根本不需要包含任何签名属性,如果包含,唯一强制执行的是签名数据的类型和哈希值。

这种极简主义的签名容器不适合一般用途。伪造的机会太多(签名者没有可靠的签名信息),而无法进行正确验证的信息太少。

因此,已经发布了许多额外的规范,定义了以安全、签名的方式添加此类缺失信息的方法,例如ESS 证书标识符 (RFC 2634 / RFC 5035),用于签名者证书的安全标识。

此类额外属性的集合已声明强制签名具有特定的法律价值,例如作为 ISIS-MTT / Common PKI 的一部分。因此,在需要此类合法值的上下文中使用的签名应用程序可以指望签名中存在的这些附加属性允许对签名进行适当验证。

虽然起初此类集合仅在较小的上下文中定义,例如以国家为基础,同时此类馆藏也在国际范围内定义。

CAdES 为整个欧洲(并在其他地区采用)指定了此类集合(也称为配置文件)。

从本质上讲,根据这样的配置文件创建 CMS 签名可以确保您的签名可以被很多应用程序正确处理,因此,它们的合法价值立即被它们认可。