Xml 使用信封签名时放置签名
我需要使用标准对整个XML文档进行签名。要求签名必须放在已签名的文件中 我这样做的方法是使用信封签名。让我困惑的是,当涉及到签名元素的位置时,实际的需求是什么。 在查看示例时,最常见的方法似乎是将signature元素作为根元素的子元素,并使其成为其最后一个子元素,如下所示:Xml 使用信封签名时放置签名,xml,digital-signature,xml-signature,Xml,Digital Signature,Xml Signature,我需要使用标准对整个XML文档进行签名。要求签名必须放在已签名的文件中 我这样做的方法是使用信封签名。让我困惑的是,当涉及到签名元素的位置时,实际的需求是什么。 在查看示例时,最常见的方法似乎是将signature元素作为根元素的子元素,并使其成为其最后一个子元素,如下所示: <?xml version="1.0"?> <myRootElement> <someChildElement></someChildElement> &l
<?xml version="1.0"?>
<myRootElement>
<someChildElement></someChildElement>
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
...
<ds:Reference URI="" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
...
</ds:Signature>
</myRootElement>
...
...
我想知道的是:当涉及到安置时,具体的要求是什么?它必须作为根元素的子元素放置,还是允许它只是根元素的一个中心元素?像这样:
<?xml version="1.0"?>
<myRootElement>
<someChildElement>
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
...
<ds:Reference URI="" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
...
</ds:Signature>
</someChildElement>
</myRootElement>
...
...
我试图从规范本身理解这一点,但我没有做到(可能是因为英语不是我的母语)。我将感谢你在这方面的投入!提前谢谢 阅读本标准时,我们发现以下定义: 签名,信封 签名位于包含签名作为元素的XML内容之上。内容提供根XML文档元素。显然,封装签名必须注意不要在SignatureValue的计算中包含它们自己的值 它基本上说,封装的签名必须是被签名元素的子元素
如果使用嵌入签名对某个深埋节点进行签名,签名块将进入该节点 确保:这意味着根据标准,我的第二个示例是无效的?在您的第二个示例中,对文档内容进行了签名,因此,据我所知,它应该放在myRootElement下。