当前位置: 首页 > 知识库问答 >
问题:

Apache Santuario与Java XML数字签名API之间的XML签名差异

岳茂
2023-03-14

我做了两个应该做同样事情的实现:用给定的X509证书对XML文件进行签名。

    null
    null

共有1个答案

许法
2023-03-14

我找到解决办法了。这是因为Apache Santuario在签名标记中添加了换行符。以便在比较由Apache生成的标记和由Java XML签名生成的标记时, 标记具有不同的内容。

为了解决这个问题,我在签名之前放了下面一行代码。

System.setProperty("org.apache.xml.security.ignoreLineBreaks", "true")
 类似资料:
  • 我需要发送一个签名的XML文件到巴西的一个政府机构。问题是,我的Java代码(使用Java XML数字签名API)计算的摘要与使用另一个工具(如XMLSec)生成的摘要不同。 下面是我用来为某个XML节点生成XML签名的代码: 如果尝试使用xmlsec验证生成的XML,则会出现以下错误: 但如果我尝试使用xmlsec(使用相同的私钥)对同一文件(consult.xml)进行签名,则错误就会消失:

  • 我这里需要帮助,有人能帮我吗?

  • 请至少选择一个在Android Studio 2.3中使用的签名版本 现在,在Android Studio中生成签名APK时,它显示了两个选项(复选框),即1。和2。作为签名APK生成过程最后一步的签名版本。 那么,在新的Android Studio更新中,V1(Jar签名)和V2(完全APK签名)有什么区别呢? 另外,当我使用第二个选项时,我在安装APK时收到错误Install Parse Fa

  • 数字签名 类似在纸质合同上签名确认合同内容,数字签名用于证实某数字内容的完整性(integrity)和来源(或不可抵赖,non-repudiation)。 一个典型的场景是,A 要发给 B 一个文件(一份信息),B 如何获知所得到的文件即为 A 发出的原始版本?A 先对文件进行摘要,然后用自己的私钥进行加密,将文件和加密串都发给 B。B 收到后文件和加密串,用 A 的公钥来解密加密串,得到原始的数

  • 我想用PHP实现一个XML数字签名。我正在这个验证器上测试签名的正确性。 我得到了错误的签名值,所以我要一步一步地解释我在做什么,请纠正我做错了什么。 我要签名的XML(无新行): 首先,我规范化XML,然后使用sha256对其进行散列,从而生成正确的摘要值。 第二,创建SignedInfo XML元素并规范化它(无新行): 最后,使用RSA-SHA256对SignedInfo元素进行签名。这是产

  • null 无论我用电子邮件发送apks还是用USB安装apks,问题仍然存在。