问题标签 [xades4j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
247 浏览

java - xades4j 中缺少会签签名类型

我注意到在我的使用 xades4j 会签的文档中,会签签名的参考中没有 Type="..CountersignedSignature" 。document.signed.bes.cs.xml 中的 xades4j 单元测试也是如此。

另一方面,xades4j.properties.CounterSignatureProperty我可以看到定义了以下属性:

如何强制 xades 使用该属性?如果缺少 type 属性,我在其他 3rd 方软件中验证文档时遇到问题。

我使用了用 SignerBESTest 编写的代码。

提前致谢!


Edit1: 我会补充一点,我通过修改 xades4j 源来了解解决方案,但我会对只能在我的源代码中应用的解决方案更感兴趣。

0 投票
1 回答
33756 浏览

java - org.w3c.dom.DOMException: HIERARCHY_REQUEST_ERR

我一直在寻找太久,无法弄清楚我做错了什么。

因此,我正在尝试为某些内容生成 Xades 签名。不幸的是,我总是遇到同样的错误:“HIERARCHY_REQUEST_ERR”。这是我的 XML 文档:

我正在尝试使用以下代码签署“请求”元素(显然......):

我得到这个错误作为回报(缩写为必要的):

我在网上搜索,但我发现的唯一类似错误是这个:https ://code.google.com/p/xades4j/wiki/QeA (几乎在顶部)。我真的找不到他的问题的答案,但据我所知,我的 XML 文档带有一个根元素(就像他的第二个示例一样)。所以我真的不知道我做错了什么......

有没有人可以帮助我?提前致谢。

0 投票
1 回答
991 浏览

java - xades4j.UnsupportedAlgorithmException:XML 签名提供程序上不支持的转换

我正在尝试为给定的 blob 创建 XAdES-BES 签名。对于这个签名,我需要在内容签名之前添加两个转换:Base64(http://www.w3.org/2000/09/xmldsig#base64)和一个自定义的(称为可选放气) .

问题在于该可选转换。我试图弄清楚如何实现自定义转换,注册它,最后让 Xades4J 使用它。

到目前为止,我想了很多(感谢谷歌和很多时间),所以我大致做到了这一点:我有一个 Provider 类,它在构造函数中放置了新的 TransformService;在我的主代码中,我将我的 Provider 添加到 Security 实例中;然后,我尝试将转换添加到我实际的待签名对象。

不幸的是,我总是遇到同样的错误:

所以,我的代码看起来像这样(缩写为我认为这里是必要的):

TransformService班级:

Provider子类:

最后是我的主Test类,其中包含实际的签名。没有那个变换,它就可以工作(但是,它不会添加变换,这是必要的)。所以 Base64 有效。

正如你所看到的,我打印了一些东西。例如,我记录了安装工作正常,并且还记录了已安装的提供程序。我得到这个作为输出:

所以据我所见,提供者已成功注册,可以毫无问题地加载转换服务,......所以我真的不明白发生了什么?

我也检查了 Xades4j 的源代码,在线内部发生的事情.withTransform(new GenericAlgorithm("urn:xml:sig:transform:optional-deflate"))非常简单:

抛出错误的确切行是transforms.addTransform(dObjTransf.getUri()). 这个transforms对象是一个'标准' apache 对象(org.apache.xml.security.transforms.Transforms对象)。所以我猜它应该能够获得与我在代码中所做的相同的 TransformService 两行更高的代码?但不是吗?

谁能指出我错过了什么?我将永远感激不尽。

0 投票
1 回答
183 浏览

xades4j - id 属性在

我们使用以下代码对 XML 进行签名,但我们在很多地方都缺少 ID 属性,例如 SignedInfo 和 Object Tags

请帮助我们更正代码。...... XadesSigningProfile p = new XadesBesSigningProfile(kp) .withBasicSignatureOptionsProvider(new extentProvider()) .withAlgorithmsProviderEx(new AlgProviderEx()); XadesSigner 签名者 = p.newSigner();

......... DataObjectDesc obj1 = new DataObjectReference(refUri) .withTransform(new EnvelopedSignatureTransform()) .withDataObjectFormat(new DataObjectFormatProperty("text/xml","" ).withDescription("contenido comprobante")); ..... 签名者.sign(obj1 ,objContent);

0 投票
1 回答
687 浏览

xml - xades4j如何添加会签

这是我签署 XML 文档的代码:

现在,我需要在同一个 XML 文件中添加反签名。你能给我一些建议吗?目前我没有任何想法:(

我的 XML 文件如下所示:

第一次签名后,我有:

最好的问候约翰 S。

0 投票
0 回答
1011 浏览

java - 签名中的错误引用

我对 Counter Signature 有另一个问题。这次我强迫它工作......几乎。

贝娄是签名的副本:

我的 JAVA 代码:

当我尝试验证此文档(使用两个外部应用程序)时,我收到错误消息“会签参考不正确”。

现在我正在调查出了什么问题。我错过了参考什么吗?

编辑:我检查了不同的应用程序,我认为我得到了更好的错误消息。确切地说:签名摘要不等于文件摘要。

最好的问候约翰·S。

0 投票
1 回答
1034 浏览

java - Xades4j 验证 - 无法从 http://www.w3.org/2000/09/xmldsig# 创建 null:null

我正在尝试编写应该使用 xades4j 库验证 XML 符号的程序。

我有这样的事情:

我收到此异常:

trustAnchors 的大小为 0 - 不应该 > 0?你能指出我哪里出错了吗?

0 投票
1 回答
1252 浏览

java - Xades4j - XML 签名验证错误 - SignaturePolicyNotAvailableException

我收到带有 Xades EPES 签名的 XML 发票,我必须控制它。所以我尝试用 Xades4j 做到这一点。我已经修复了很多错误但我坚持错误:

Java 代码用于验证签名:

如有必要,我可以发布我在匿名化后尝试验证的 XML 文件的摘录。

谢谢。我已经查看并尝试了我找到的所有内容(在网上,xades4j 示例,xades4j junit 类......)但似乎没有任何东西可以解决我的错误。

0 投票
1 回答
1460 浏览

java - Xades-Bes 转换为 Xades-T

如何将 XAdES-BES 转换为 XAdES-T。我使用 Xades4j 库。我有一个时间戳帐户。

我的SignerBes.class

我已经修改了 SignerBes 类。我的签名操作分为两个部分。

  • 第一步,prepareDataToSign()
  • 第二步,sign()

到目前为止对 Xades-Bes 格式很好。我想将 Xades-Bes 转换为 Xades-T

0 投票
2 回答
871 浏览

digital-signature - 反签名无效 (xades4j)

我必须签名然后会签一些带有签名的xml。这是我的代码:

它签署我的 xml 并添加反签名。不幸的是,当我验证我的 xml 时,签名非常好,但反签名不是(签名的摘要与文件数据的摘要不相等)。

我的代码有什么问题?这是带有签名和反签名的 XML:

签名和会签的 xml 文件