Algoritmo 'SignatureMethod' vs. Algoritmo 'DigestMethod' na assinatura XML

Se tomarmos o seguinte elemento Signature como exemplo:

<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:SignedInfo>
      <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
      <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
      <ds:Reference URI="#_884D49DAD03AD60748547F8322C11AA0">
        <ds:Transforms>
          <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
          <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
        </ds:Transforms>
        <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <ds:DigestValue>...</ds:DigestValue>
      </ds:Reference>
    </ds:SignedInfo>
    <ds:SignatureValue>...</ds:SignatureValue>
    <ds:KeyInfo>
      <ds:KeyName>...</ds:KeyName>
    </ds:KeyInfo>
 </ds:Signature>

Existe um algoritmo SignatureMethod (http://www.w3.org/2000/09/xmldsig#rsa-sha1) e um algoritmo DigestMethod (http://www.w3.org/2000/09/xmldsig#sha1)

Pelo que entendi, o algoritmo SignatureMethod sendo 'rsa-sha1' significa que o conteúdo a ser assinado é primeiro misturado (digerido) usando SHA1 e depois assinado usando RSA.

O Algoritmo DigestMethod sempre é igual ao mecanismo de digestão especificado no Algoritmo SignatureMethod (sha1 parte de 'rsa-sha1')?

Eu acredito que não é o caso, porque seria inútil especificar o mesmo algoritmo duas vezes. O que eu especulo é que pode haver várias 'referências' que podem ser digeridas usando diferentes algoritmos DigestMethod, e a coleção desses resumos será novamente hash usando o mecanismo de digitação especificado pelo algoritmo SignatureMethod.

Eu estoutentando para entender isso, consulte a especificação 'Sintaxe de assinatura XML e processamento'. Realmente apreciaria se alguém pudesse confirmar se eu entendi corretamente ou explicar os propósitos atendidos por esses dois algoritmos. Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion