【发布时间】:2017-05-24 21:49:40
【问题描述】:
根据XML Signature Specification(3.2.2“签名验证”),KeyInfo 元素可以被签名:
“请注意,KeyInfo(或其某些转换版本)可以通过 Reference 元素进行签名。”
Here我们可以看到带有这种签名的xml示例。
有什么理由自己签署证书吗?
它消除了哪些安全风险?
【问题讨论】:
标签: xml digital-signature pki xml-dsig
根据XML Signature Specification(3.2.2“签名验证”),KeyInfo 元素可以被签名:
“请注意,KeyInfo(或其某些转换版本)可以通过 Reference 元素进行签名。”
Here我们可以看到带有这种签名的xml示例。
有什么理由自己签署证书吗?
它消除了哪些安全风险?
【问题讨论】:
标签: xml digital-signature pki xml-dsig
查看有关 XAdES 中属性 signingCertificate 的说明部分。 ETSI XAdES 建立在 XMLDSig 之上,以建立长期有效的高级签名的要求
当ds:KeyInfo 不存在或不包含用于签名的证书时,signingCertificate 是必需的,并且用于相同目的
7.2.2 SigningCertificate 元素
在许多现实生活环境中,用户将能够从不同的 CA 甚至从同一个 CA 获得包含不同名称的相同公钥的不同证书。主要优点是用户可以将相同的私钥用于不同的目的。当使用智能卡保护私钥时,多次使用私钥是一个优势,因为智能卡的存储总是有限的。当涉及多个 CA 时,每个不同的证书可能包含不同的身份,例如作为国民或公司雇员。因此,当私钥用于各种目的时,需要证书来阐明在生成签名时使用私钥的上下文。在可能多次使用私钥的情况下,签名者有必要向验证者指明要使用的确切证书。
目前的许多方案只是在签名数据后添加证书,因此容易受到各种替代攻击。替代攻击的一个例子是“坏”CA,它会使用其他人的公钥向某人颁发证书。如果来自签名者的证书只是简单地附加到签名中,因此不受签名保护,任何人都可以用另一个证书替换一个证书,并且该消息似乎是由其他人签名的。 为了对抗这种攻击,证书的标识符必须受到签名者的数字签名的保护。
【讨论】: