'SignatureMethod'-Algorithmus vs.' DigestMethod'-Algorithmus in XML Signature

Wenn wir das folgende Signature-Element als Beispiel nehmen:

<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>

Es gibt einen SignatureMethod-Algorithmus http: //www.w3.org/2000/09/xmldsig#rsa-sha) und ein DigestMethod-Algorithmus http: //www.w3.org/2000/09/xmldsig#sha).

Soweit ich weiß, bedeutet der SignatureMethod-Algorithmus 'rsa-sha1', dass der zu signierende Inhalt zuerst mit SHA1 gehasht (verdaut) und dann mit RSA signiert wird.

Entspricht der DigestMethod-Algorithmus immer dem Digest-Mechanismus, der im SignatureMethod-Algorithmus angegeben ist sha1 Teil von 'rsa-sha1')?

Ich glaube, das ist nicht der Fall, da es sinnlos wäre, denselben Algorithmus zweimal anzugeben. Was ich spekuliere, ist, dass es mehrere Referenzen geben kann, die mit verschiedenen DigestMethod-Algorithmen verdaut werden können, und die Auflistung dieser Digests wird erneut mit dem Digest-Mechanismus gehasht, der vom SignatureMethod-Algorithmus angegeben wird.

Ich bin Versuch, um dies zu verstehen, indem Sie auf die Spezifikation 'XML-Signatursyntax und -verarbeitung' verweisen. Würde mich sehr freuen, wenn jemand bestätigen kann, ob ich das richtig verstanden habe, oder die Zwecke erklären kann, denen diese beiden Algorithmen dienen. Vielen Dank