【发布时间】:2012-01-18 17:27:22
【问题描述】:
我正在使用 SignedXml 类来验证 XML 文档中的签名。签名仅指文档的一部分。
我能够验证签名,但我如何确定签名正在签署我需要验证的文档的特定部分?有人可以简单地使用相同的密钥签署文档的不同部分,并且签名仍然有效。
【问题讨论】:
标签: .net xml xml-signature xml-dsig
我正在使用 SignedXml 类来验证 XML 文档中的签名。签名仅指文档的一部分。
我能够验证签名,但我如何确定签名正在签署我需要验证的文档的特定部分?有人可以简单地使用相同的密钥签署文档的不同部分,并且签名仍然有效。
【问题讨论】:
标签: .net xml xml-signature xml-dsig
据我了解,SignedXml 会根据文档中应该签名的部分自动验证签名。
通过向其传递签名值和假定已签名的数据/内容(或它的哈希值)来验证数字签名。这意味着如果签名得到验证,您可以确定文档的正确部分已被签名。
如果有人在文档的不同部分签名,而您正在对照文档的未签名部分验证签名,您将不会得到肯定的结果。并且由于 XML 的结构,SignedXml 会根据假定签名的内容验证签名,而不是根据其他内容。
【讨论】: