HMAC

HMAC

Ein keyed-hash message authentication code, (HMAC) ist eine Art Message Authentication Code (MAC), der basierend auf einer kryptografischen Hash-Funktion berechnet wird.

HMACs werden in vielen modernen Protokollen wie beispielsweise TLS oder IPsec verwendet. Die Sicherheit des HMAC erfordert nicht zwingend kollisionsresistente Hash-Funktionen, so dass der HMAC auch auf Basis des MD5 berechnet werden kann. Wird HMAC beispielsweise in Kombination mit einer Festplattenverschlüsselung eingesetzt und dient nur dem Zweck, feststellen zu können, ob die Festplatte einen physikalischen Defekt aufweist, so empfiehlt sich auf Grund der höheren Datendurchsatzrate und des geringeren Platzbedarfs HMAC/MD5.

Der HMAC wird aus der Nachricht N und einem geheimen Schlüssel K mittels der Hash-Funktion H wie folgt berechnet. K wird auf die Blocklänge der Hash-Funktion (512 Bit für die meisten gängigen Hash-Funktionen) aufgefüllt. Falls die Länge von K größer als die Blocklänge der Hash-Funktion ist, wird K durch H(K) ersetzt.

HMAC_K(N) = H\Bigg((K \oplus opad) \;||\; H\Big((K \oplus ipad) \;||\; N\Big)\Bigg)


Die Werte opad und ipad sind dabei Konstanten, \oplus steht für die bitweise XOR-Operation und \;||\; für die Verknüpfung durch einfaches Zusammensetzen (Konkatenation).

Der innere Hashwert alleine ist nicht sicher, da ein Angreifer einfach weitere Blöcke an N anhängen und den Hashwert weiterrechnen könnte. Die innere Schlüsselkomponente sichert also nur den Anfang der Nachricht. Die Äußere Funktion sichert auch das „Ende“ der Nachricht.

Eigenschaften

Vorausgesetzt sei:

Unter diesen Voraussetzungen kann für den HMAC folgendes abgeleitet werden:

  • Die Bestimmung des Schlüsselwerts K aus der Nachricht N und dem HMAC-Wert ist ausgeschlossen.
  • Die Bestimmung der Nachricht N aus K und dem HMAC-Wert ist ausgeschlossen.
  • Es können keine unterschiedlichen Wertepaare (K',N') gefunden werden, die zum gleichen HMAC-Wert führen.

Die Eigenschaften können jedoch auch dann erfüllt sein, falls die Hash-Funktion H die geforderten Eigenschaften nicht voll erfüllt. Ein MAC mit den genannten Eigenschaften kann zur elektronischen Signatur genutzt werden. Für einen festen Schlüsselwert kann die HMAC-Funktion als Hash-Funktion angesehen werden. Die Sicherheit dieser Hash-Funktion ist gewährleistet, sofern die Hash-Funktion H als sicher gelten kann.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • HMAC — (сокращение от англ. hash based message authentication code, хеш код аутентификации сообщений). Наличие способа проверить целостность информации, передаваемой или хранящийся в ненадежной среде является неотъемлемой и необходимой частью мира… …   Википедия

  • HMAC — SHA 1 HMAC Generation. In cryptography, HMAC (Hash based Message Authentication Code) is a specific construction for calculating a message authentication code (MAC) involving a cryptographic hash function in combination with a secret key. As with …   Wikipedia

  • HMAC — Keyed Hash Message Authentication Code Un HMAC, de l anglais keyed hash message authentication code (code d authentification d une empreinte cryptographique de message avec clé), est un type de code d authentification de message (CAM), ou MAC en… …   Wikipédia en Français

  • HMAC — Hashed Message Authentication Code (Computing » Networking) * Hazardous Materials Advisory Council (Governmental » Transportation) * Hash based Message Authentication Code (Computing » Security) * Hobart Model Aero Club (Miscellaneous » Hobbies)… …   Abbreviations dictionary

  • HMAC — Health Manpower Advisory Council …   Medical dictionary

  • HMAC — keyed Hashing for Message Authentication (RFC2104) …   Acronyms

  • HMAC — ● ►en sg. m. ►CRYPTO Keyed Hashing Message Authentication. Méthode d authentification des messages définie dans la RFC 2104, utilisant des hachages cryptographiques, comme MD5 ou SHA 1 …   Dictionnaire d'informatique francophone

  • HMAC — keyed Hashing for Message Authentication (RFC2104) …   Acronyms von A bis Z

  • HMAC — • Health Manpower Advisory Council …   Dictionary of medical acronyms & abbreviations

  • HMAC — abbr. keyed Hashing for Message AuthentiCation (Verschluesselung, RFC 2104) …   United dictionary of abbreviations and acronyms

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”