问题标签 [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.
java - XADES4J - 如何改变其他身份
当我使用 Xades4J (Xades-BES) 签署 XML 文档时,我得到了包括我的 xml 在内的签名文档,例如:
<ds:Object Encoding="UTF-8" Id="xmldsig-1ddcf1ab-7648-4039-b166-69e14da39982-object0" MimeType="text/xml">
....
</ds:Object>
我必须Id="xmldsig-1ddcf1ab-7648-4039-b166-69e14da39982-object0"
改为Id="Dokument-0"
我怎样才能做到这一点 ?
感谢您的所有回答,并为我糟糕的英语感到抱歉。达雷克
xades4j - Xades4J 验证签名时出错:属性“SigningCertificate”的验证失败:属性包含太多证书
当我验证在使用相同密钥库(和 XA)之前创建的签名时,会出现以下异常:
属性“SigningCertificate”的验证失败:SigningCertificate 属性包含一个或多个不属于证书路径的证书。
我正在使用以下证书链:
- 根 CA (globalsign),
- 中级证书
- 公司证书
- 项目证书
所有证书都存储在使用的密钥库中。
但是,当使用自签名证书尝试相同的事情时,只有它有效,我只需要将证书也放入 certs-and-crls-directory 中。
键控数据提供者:
证书验证提供者:
对密钥库的反馈
签名密钥库包含所有 4 个证书。验证密钥库仅包含根证书 (globalsign-root-ca)。certs 目录包含除根 (globalsign-root-ca) 之外的所有证书。然后我收到以下错误:
原因:sun.security.provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效证书路径
当使用与签名相同的密钥库(文件系统副本)时,我收到错误:
原因:xades4j.verification.SigningCertificateCertsNotInCertPathException:属性“SigningCertificate”的验证失败:SigningCertificate 属性包含一个或多个不属于证书路径的证书。
java - 我可以使用 PKCS#11 在 HSM 中创建签名吗?
我可以将 XAdES4J 配置为使用 PKCS#11 基础架构将签名创建委托给硬件安全模块 (HSM) 吗?如果是 - 如何?
这些网站上的信息让我假设,只有使用 PKCS#11 的密钥传输是可能的:
java - 如何使用 XAdES4j 信任 Windows 密钥库的锚点?
我正在开发(java)一个需要连接到 Windows 密钥库的 xml 验证应用程序。目前我遇到以下消息:CannotBuildCertificationPathExecption:信任锚密钥库未初始化。
现在我可以使用以下示例从商店获取我的密钥:http://stackoverflow.com/questions/5476974/java-access-to-intermediate-cas-from-windows-keystores 效果很好。并给了我使用 XAdES4J 的希望。
我正在使用的代码如下:
证书是 x509。加密方法 XAdES-t。
有人知道如何与 Windows 密钥库建立受信任的连接吗?是否有任何关于 SignatureSpecificVerificationOptions 的信息。我发现很难根据我需要使用的实际设置来理解手册。
xades4j - 如何在 XSdES4J 中实现不同的证书验证
我正在使用 XAdES 来验证使用 xades-t 的消息。但是欧洲的一些国家并不依赖证书链来连接有效的根 CA。我将如何在 xades4j 中实现验证证书的不同方式?
非常感谢任何建议。
亲切的问候
xml-signature - 根命名空间被添加到
库:apache Santuario + xades4j。
使用 xpath 选择元素并对其进行签名。
如果我尝试对没有命名空间的简单 XML 进行签名并验证签名,则效果很好,但如果 XML 定义了命名空间,例如以下 XML:
并且在验证签名时发现异常
原因是 XML 命名空间 (urn:hl7-org:v3) 被添加到 xades:SignedProperties 然后摘要变得不同。
这是签名生成代码
这是验证码
Apache Santuario FAQ 中似乎有关于此问题的文档,
还有一个关于这个问题的文件如下
https://stackoverflow.com/a/12759909/1809884
看起来不是xades4j的bug,而是xml签名的问题。
--添加 2012-11-15
和 SignedProperties 元素如下
另外,我使用 xpath 来获取要签名的元素,并将命名空间(xmlns="urn:hl7-org:v3")也添加到结果中。
xpath 有什么问题吗?xpath 快把我逼疯了。我想我必须从现在开始学习 xpath。
克里斯
java - 如何在验证 XAdES-T 消息之前从 X509SubjectName 中删除属性 PSEUDONYM
目前,我们收到的证书在主题名称中包含属性 PSEUDONYM。当实例化一个 X500Name 对象时,java 给出一个异常。
在对 XAdES-T 消息的签名应用验证之前,如何从主题名称中删除 PSEUDONYM 属性。示例主题名称:C=NL,O=test,OU=Software,CN=DUMMY :PN,serialNumber=1,pseudonym=DUMMY :PN
java - 分离嵌入在 XAdES 中的文件
拥有一个嵌入了签名内容的 XAdES-BES 签名,是否可以分离签名的内容,这样就可以使用带有 ObjectReference 的 XAdES。
所以简单地说 - 我需要一个方法,它采用带有嵌入文件的 XAdES,并返回文件和引用文件的 XAdES(这样文件就不再嵌入到 XAdES 中)。
我试图找出一种使用 XAdES4j 的方法,但没有结果。
提前感谢您的回答!
xml - 使用 xpath/xslt 的 Xades 签名
如果可能的话,有人可以向我发布使用 xpath 或 xslt 转换的 xades4j 签名示例吗?
例如:如果我有这个文件:
我想要一个只签名b元素的 xades 签名,谢谢。
xades4j - 当 x509SubjectName 中的属性顺序与证书中的顺序不同时如何验证 Xades-t 消息
目前我正在尝试验证来自第三方的消息。我遇到的问题是无法创建信任链。原因是证书中主题名称 (X509SubjectName) 中项目的顺序与从包含的证书中提取它们时的顺序不同。
例如:在 xades-t 消息中,x509SubjectName 标签具有:“C=NL,O=Test company,CN=testuser,SERIALNUMBER=1”,其中证书中包含的 x509SubjectName 具有:“SERIALNUMBER=1,CN=testuser ,O=测试公司,C=NL"
我的问题是这是否被允许。以及如何更改 Xades4j 行为以验证这些签名消息。因为我似乎没有 SignatureUtils 类中的证书。代码似乎能够处理,但使用的地图是空的。
问候, 皮姆