Zum Hauptinhalt springen

5.2. Processing an Accept-Signature (Verarbeitung)

5.2. Processing an Accept-Signature (Verarbeitung eines Accept-Signature-Feldes)

Der Empfänger eines Accept-Signature-Feldes erfüllt es wie folgt:

  1. Feldwert als Dictionary parsen.

  2. Für jedes Mitglied des Dictionary:

    2.1. Der Schlüssel wird als Label der Ausgabesignatur gemäß Abschnitt 4.1 verwendet.

    2.2. Den Wert parsen, um die Menge der abgedeckten Komponenten-Identifikatoren zu erhalten.

    2.3. Prüfen, ob die abgedeckten Komponenten für die Zielnachricht anwendbar sind. Wenn nicht, schlägt der Vorgang fehl.

    2.4. Angeforderte Parameter verarbeiten (z. B. Signaturalgorithmus, Schlüsselmaterial). Können Anforderungen nicht erfüllt werden oder widersprechen sie dem, was für die Zielnachricht angemessen ist, schlägt der Vorgang fehl.

    2.5. Zusätzliche Parameter auswählen und erzeugen, die zur Vervollständigung der Signatur nötig sind.

    2.6. Die HTTP-Nachrichtensignatur über die Zielnachricht erzeugen.

    2.7. Die Feldwerte Signature-Input und Signature erzeugen und mit dem Label verknüpfen.

  3. Optional weitere Signature-Input- und Signature-Werte mit eindeutigen Labels erzeugen, die nicht in Accept-Signature vorkommen.

  4. Alle gelabelten Signature-Input- und Signature-Werte kombinieren und beide Felder an die Zielnachricht anhängen.

Damit MUSS eine auf die Zielnachricht angewendete Signatur dasselbe Label haben, MUSS dieselbe Menge abgedeckter Komponenten enthalten, MUSS alle angeforderten Parameter berücksichtigen und KANN zusätzliche Parameter haben.

Der Empfänger von Accept-Signature KANN Anfragen ignorieren, die nicht zu den Anwendungsparametern passen.

Die Zielnachricht KANN zusätzliche Signaturen enthalten, die nicht in Accept-Signature spezifiziert sind. Beispielsweise kann der Signierende eine zweite Signatur erzeugen, die weitere Komponenten und den Ausgabewert der angeforderten Signatur abdeckt.