Zusammenfassung

  • RFC 2403 und RFC 2404 tragen jeweils die ersten 96 Bit eines berechneten HMAC in ESP oder AH ein, obwohl sich vollständige Ausgabe und erforderliche Schlüssel unterscheiden.
  • Spätere ESP/AH-Vorgaben trennten die Verfahren: RFC 8221 stuft HMAC-MD5-96 als MUST NOT und HMAC-SHA1-96 als MUST- ein. Die gemeinsame Taglänge bedeutete nie ein gemeinsames Sicherheitsurteil.

Ein Feld, zwei Konstruktionen

Im November 1998 legten RFC 2403 und RFC 2404 schlüsselgebundene Authentifizierungsverfahren für das Encapsulating Security Payload (ESP) und den Authentication Header (AH) von IPsec fest. Das eine verband HMAC mit MD5, das andere mit SHA-1. Beide sollten Herkunftsauthentifizierung und Integrität bieten, sofern das Geheimnis nur den kommunizierenden Parteien bekannt war. Vertraulichkeit lieferte keines der Verfahren allein.

Die sichtbare Zahl im Paket war dieselbe: 96 Bit. Die vollständige HMAC-MD5-Ausgabe von RFC 2403 hat 128 Bit, die HMAC-SHA-1-Ausgabe von RFC 2404 160 Bit. Bei beiden Verfahren speichert der Sender die ersten 96 Bit im Authentifikatorfeld. Der Empfänger berechnet den vollständigen HMAC und vergleicht dieselben ersten 96 Bit. Die Länge entsprach dem AH-Standardwert und gab unterschiedlichen Konstruktionen denselben Platz auf dem Übertragungsweg. Sie machte aus den vollständigen Digests keine 96-Bit-Hashes.

Auch die Schlüsselvorgaben unterschieden sich: RFC 2403 verlangt einen 128-Bit-HMAC-Schlüssel, RFC 2404 einen mit 160 Bit. So standen gleiche Feldlängen neben verschiedenen vollständigen Ausgabe- und festen Schlüssellängen. Welche Transformation ausgehandelt und wie der Schlüssel verwaltet wurde, blieb entscheidend; die sichtbaren Tag-Bits allein beschreiben den Mechanismus nicht vollständig.

Kollisionsresistenz beantwortet nicht die ganze HMAC-Frage

Die Texte von 1998 setzten eine Kollision im ungeschlüsselten Hash nicht mit einem sofortigen HMAC-Bruch gleich. RFC 2403 hielt fest, dass HMAC weniger von der starken Kollisionsresistenz von MD5 abhänge als MD5-basierte Signaturen, und nannte damals keine praktischen Angriffe auf HMAC-MD5-96. RFC 2404 enthielt eine zeitgebundene Paralleleinschätzung für HMAC-SHA-1-96. Das waren historische Aussagen, keine Zusagen für die Zukunft.

Die Implementierungsvorgaben zeigen, wie sich die Bewertung änderte, ohne dass die Taglänge zum entscheidenden Kriterium wurde. 2005 führte RFC 4305 HMAC-SHA1-96 als MUST und HMAC-MD5-96 als MAY. RFC 4835 hielt 2007 an dieser Trennung fest und vermerkte, die damals bekannten Kollisionsschwächen sollten den Einsatz mit HMAC nicht beeinträchtigen. RFC 7321 erwähnte 2014 theoretische Ergebnisse gegen HMAC-MD5, sah aber keine erkennbare praktische Schwachstelle und hielt eine sofortige Entfernung aus bestehenden Protokollen nicht für dringlich. Trotz der Kollisionsschwäche von SHA-1 galt HMAC-SHA-1 dort weiterhin als sicher.

Der 2017 veröffentlichte RFC 8221 zog bei ESP/AH-Implementierungsvorgaben eine deutlichere Grenze: HMAC-MD5-96 wurde MUST NOT; HMAC-SHA1-96 sank von MUST auf MUST-. Für das Verbot verwies das Dokument auf MD5s bekannte Kollisionsanfälligkeit; die Abwertung von SHA-1 begründete es mit einem branchenweiten Trend, dessen Nutzung aufzugeben. Das bedeutete weder eine Änderung am 96-Bit-Feld noch eine neue Tagdefinition in RFC 2404.

Eine Statustabelle ist kein Verkehrsmitschnitt

RFC 9395 aktualisierte später RFC 8221 und änderte ein IKEv2-Transform-Register, in dem ein Eintrag namens AUTH_HMAC_MD5_96 als DEPRECATED markiert ist. Dieses Register ist nicht die ESP/AH-Implementierungstabelle von RFC 8221. Derselbe Name kann in benachbarten IPsec-Kontexten vorkommen; Statusangaben müssen deshalb immer mit Protokoll und Dokumentumfang gelesen werden.

Diese Dokumente halten Protokollparameter und datierte Implementierungsempfehlungen fest. Sie zählen keine installierten Geräte, benennen nicht die zuletzt ausgehandelte HMAC-MD5-Sicherheitsassoziation und bestimmen kein allgemeines Abschaltdatum. Betreiber müssen verwendetes Protokoll, Transform-ID, Fähigkeiten beider Peers, installierte Assoziation und beobachteten Verkehr auseinanderhalten. Das 96-Bit-Tag ist nur ein Teil des Nachweises.

Quellen