Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java XML签名引用中的DigestValue来自哪里?_Java_Xml_W3c_W3c Validation - Fatal编程技术网

Java XML签名引用中的DigestValue来自哪里?

Java XML签名引用中的DigestValue来自哪里?,java,xml,w3c,w3c-validation,Java,Xml,W3c,W3c Validation,我必须对一个XML文件进行签名,并将签名和文件放在同一个XML中。问题是,我必须在引用中生成DigestValue,但我不确定它们来自哪里。我有一个例子,URI指向同一文档中的一个元素。但是我不知道如何在应用转换的同时生成这些部分的散列值 我试着将元素放在里面,例如一个参考点指向KeyInfo,我试着获取证书的指纹,但没有成功 我试着把这个角色的情节搞糟 我尝试过XPath,但它不起作用,因为我必须在将所有内容输出为XML之前生成DigestValue 不幸的是,出于保密原因,我无法发布任何代码

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

我试着将元素放在里面,例如一个参考点指向KeyInfo,我试着获取证书的指纹,但没有成功

我试着把这个角色的情节搞糟

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

不幸的是,出于保密原因,我无法发布任何代码,但为了更好地了解我正在谈论的内容,我正在使用w3c标准:

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

我找到了它

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

Element element1 = doc.createElement("element1");
element1.setAttribute("Id", "123456789");
element1.setIdAttribute("Id", true);
这将确保该ID在签名时被视为URI