XML 签名引用中的摘要值从何而来?

  • 本文关键字:引用 XML java xml w3c w3c-validation
  • 更新时间 :
  • 英文 :


我必须对一个XML文件进行签名,并将签名和文件放在同一个XML中。问题是,我必须在引用中生成摘要值,但我不确定它们来自哪里。我有一个示例,URI 正在指向同一文档中的元素。但是我不知道如何在先应用转换的同时生成这些部分的哈希值。

我试图拥有里面的元素,例如一个引用指向KeyInfo,我试图获取证书的指纹,但没有奏效。

我试图只是散列零件的搅拌

我尝试过 XPath,但它不起作用,因为我必须在将所有内容作为 XML 之前生成 DigestValue

不幸的是,由于保密原因,我无法发布任何代码,但为了全面了解我所关注的内容,我使用的是 w3c 标准:https://www.w3.org/TR/xmldsig-core1/

我要么想要一种创建元素的方法,比如将 KeyInfo 作为数据对象,要么想要一种获取 KeyInformation 的正确 DigestValue 的方法。

我想通了。

创建元素时,必须指定一个 ID 属性并告诉它是一个 ID 属性。例如:

Element element1 = doc.createElement("element1");
element1.setAttribute("Id", "123456789");
element1.setIdAttribute("Id", true);

这将确保在签名时将 ID 视为 URI。

最新更新