CyberGlossary

Kryptografie

Message Authentication Code (MAC)

Auch bekannt als: MAC, Kryptografische Prüfsumme

Definition

Kurzes symmetrisches Tag, das eine Nachricht authentifiziert und Manipulationen erkennt; Berechnung und Prüfung erfolgen mit demselben gemeinsamen Schlüssel.

Ein Message Authentication Code (MAC) ist ein Tag fester Länge, das mit einem symmetrischen Geheimschlüssel über eine Nachricht berechnet wird; die Verifikation benötigt denselben Schlüssel. Ein MAC liefert Integrität und Authentizität, aber keine Nichtabstreitbarkeit, da beide Parteien den Schlüssel besitzen. Gebräuchliche Konstruktionen sind HMAC (hashbasiert, RFC 2104), CMAC (CBC-MAC, NIST SP 800-38B), GMAC (in GCM), Poly1305 (zusammen mit ChaCha20 als ChaCha20-Poly1305) und KMAC auf Basis von Keccak/SHA-3. MACs tragen die TLS-Record-Authentifizierung, IPsec AH, JWT HS256, API-Request-Signaturen sowie AEAD-Modi; der Tag-Vergleich muss konstant in der Laufzeit sein, um Timing-Seitenkanäle zu vermeiden.

Beispiele

  • HMAC-SHA-256 authentifiziert AWS-Signature-Version-4-Anfragen.
  • Poly1305 authentifiziert den Chiffretext im AEAD-Verfahren ChaCha20-Poly1305 von TLS 1.3.

Verwandte Begriffe