HTTP Repr-Digest Header

Der HTTP-Header Repr-Digest ist ein Response-Header, der einen kryptographischen Digest der Repräsentation einer Ressource übermittelt. Clients können damit die Integrität der empfangenen Payload verifizieren und Manipulation oder Korruption während der Übertragung erkennen.

Typ

Response-Header

Syntax

Der Header definiert Hash-Algorithmus und Base64-encodierten Digest-Wert.

http
Repr-Digest: sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:
Repr-Digest: sha-512=:YMAam51Jz/jOATT6/zvHrLVgOYTGFy1d6GJiOHTohq4yP+pgk4vf2aCsyRZOtw8MjkM7iw7yZ/WkppmM44T3qg==:

Direktiven

Die Direktiven definieren Hash-Algorithmus und Digest-Wert für Integrity-Checks.

sha-256=:<digest>
SHA-256 Hash der Response-Repräsentation, Base64-encoded mit Byte Sequence Syntax (:value:).
sha-512=:<digest>
SHA-512 Hash für höhere Sicherheit. Bevorzugt für sensitive API-Responses.
md5=:<digest>
MD5 Hash (veraltet, unsicher). Sollte nicht mehr verwendet werden.
id-sha-256=:<digest>
Identity-Encoding SHA-256 Digest. Berechnet vor Content-Encoding (z.B. vor Gzip).

Beispiele

Nachfolgend finden Sie praktische Anwendungsbeispiele für den Repr-Digest-Header.

Beispiel 1 SHA-256 Digest für JSON API-Response

http
GET /api/transactions/tx-12345 HTTP/1.1
Host: api.example.com
Want-Repr-Digest: sha-256

Server berechnet SHA-256 Hash der JSON-Response.

http
HTTP/1.1 200 OK
Content-Type: application/json
Repr-Digest: sha-256=:RK/0qy18MlBSVnWgjwz6lZEWjP/lF5HF9bvEF8FabDg=:

{"id":"tx-12345","amount":1500.00,"status":"completed"}

Client kann Digest verifizieren und Manipulation erkennen.

Beispiel 2 Multiple Digests für Fallback-Support

http
HTTP/1.1 200 OK
Content-Type: application/json
Content-Encoding: gzip
Repr-Digest: sha-512=:YMAam51Jz/jOATT6/zvHrLVgOYTGFy1d6GJiOHTohq4yP+pgk4vf2aCsyRZOtw8MjkM7iw7yZ/WkppmM44T3qg==:, sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:

<gzipped JSON data>

Client wählt bevorzugten Hash-Algorithmus für Verifikation.

Beispiel 3 Digest-Mismatch bei Korruption

http
HTTP/1.1 200 OK
Content-Type: application/json
Repr-Digest: sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:

{"id":"tx-12345","amount":1500.00,"status":"completed"

Client berechnet SHA-256 von empfangener Payload, Mismatch erkennt Korruption.

Integrity Verification Flow

Repr-Digest Integrity-Verification bei API-Requests

Vorteile für die Systemarchitektur

Repr-Digest ermöglicht End-to-End Integrity-Checks ohne TLS-Terminierung.

  • Tamper Detection: Clients können Manipulation durch Proxies oder Man-in-the-Middle erkennen
  • Multi-Hop Verification: Integrity kann über mehrere Netzwerk-Hops verifiziert werden
  • Content-Encoding Aware: Digest berücksichtigt Content-Encoding für konsistente Hashes

Spezifikation

RFC 9530 – Digest Fields for HTTP https://www.rfc-editor.org/rfc/rfc9530.html

Weitere Spezifikationen

Want-Repr-Digest Header, Content-Digest Header