370.5.3. 输出节点确定在 Enveloping XML 签名问题单中


在从 XML 签名文档中提取节点验证后,该文档最终返回到 output-message 正文。在信封 XML 签名案例中,默认的实施 DefaultXmlSignature2Message of XmlSignature2Message 对节点搜索类型 Default 进行了这一操作(请参阅选项 xmlSignature2Message):

  • 首先决定对象引用:

    • 帐户只考虑相同的文档参考(URI 必须以 #开始)
    • 另外,将考虑通过清单对对象进行间接相同的文档引用。
    • 由此产生的对象引用数量必须是 1。
  • 然后,对象会被解引用,对象必须仅包含一个 XML 元素。此元素返回为输出节点。

这意味着,信封 XML 签名必须采用以下结构:

<Signature>
      <SignedInfo>
         <Reference URI="#object"/>
         <!-- further references possible but they must not point to an Object or Manifest containing an object reference -->
         ...
      </SignedInfo>

      <Object Id="object">
           <!-- contains one XML element which is extracted to the message body -->
      <Object>
      <!-- further object elements possible which are not referenced-->
      ...
      (<KeyInfo>)?
</Signature>
Copy to Clipboard Toggle word wrap

或结构:

<Signature>
      <SignedInfo>
         <Reference URI="#manifest"/>
         <!-- further references  are possible but they must not point to an Object or other manifest containing an object reference -->
         ...
      </SignedInfo>

      <Object >
         <Manifest Id="manifest">
            <Reference URI=#object/>
         </Manifest>
      </Objet>
      <Object Id="object">
          <!-- contains the DOM node which is extracted to the message body -->
      </Object>
       <!-- further object elements possible which are not referenced -->
      ...
      (<KeyInfo>)?
</Signature>
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat