slider

Keyed-Hashing for Message Authentication (HMAC) - Prof. Dr. Norbert Pohlmann

Keyed-Hashing for Message Authentication (HMAC)

Keyed-Hashing for Message Authentication (HMAC) als Ablaufdiagramm

Was ist ein Keyed-Hashing for Message Authentication Code (HMAC)?


Keyed-Hashing for Message Authentication Code (HMAC) ist ein Internet-Standard (RFC 2104) und wird zum Beispiel bei IPSec verwendet.
Der HMAC ist eine Einweg-Hashfunktion, die mit einem Schlüssel arbeitet, aber Hashfunktionen statt Verschlüsselungsverfahren verwendet. Das HMAC-Verfahren soll mit möglichst vielen Hashfunktionen zusammenarbeiten, ohne dass diese modifiziert werden müssen. Die Sicherheit der Hashfunktion darf durch die Manipulation mit geheimen Schlüsseln nicht verringert werden.

Keyed-Hashing for Message Authentication (HMAC) als Ablaufdiagramm
Abbildung: Keyed-Hashing for Message Authentication (HMAC) – © Copyright-Vermerk


HMAC-Verfahren
HMAC = KH( K XOR opad, H( K XOR ipad, M) )

ipad = 0×36, 0×36, 0×36, …
(gleiche Länge wie die Blocklänger der Hashfunktion)
opad = 0×5c, 0×5c, 0×5c, …
(gleiche Länge wie die Blocklänger der Hashfunktion)
K geheimer Schlüssel
M Input (Nachricht)
XOR bitweise modulo 2 addieren
KH „Keyed-Hashing for Message Authentication“-Verfahren – HMAC-Verfahren

Die beiden konstanten Felder ipad und opad haben eine Länge, die der Blockgröße B der eingesetzten Hashfunktion entspricht. Der Schlüssel K wird durch das Anhängen von Nullen ebenfalls auf die Länge B gebracht.
Dann muss der auf die Länge B gebrachten geheimen Schlüssel K wird mittels XOR mit dem Feld ipad verknüpft werden.
Das Ergebnis dieser Operation wird vor die Nachricht gestellt und mit der Hashfunktion den Hashwert aus diesem Input berechnet. Der Hashwert hat die Länge L.
Dann muss der auf die Länge B gebrachte geheimen Schlüssel K mittels XOR mit dem Feld opad verknüpft werden. Anschließend wird das Ergebnis dieser Operation (Länge B) vor den Hashwert (Länge L) gestellt und mit der Hashfunktion den HMAC-Hashwert berechnet.
Der HMAC-Hashwert hat die Länge L.


Weitere Informationen zum Begriff “Keyed-Hashing for Message Authentication Code (HMAC)”:



Bauchladen – Wie man Googles Dienste umsichtig nutzt

Vertrauen – ein elementarer Aspekt der digitalen Zukunft

Tracking im Internet und Selbstdatenschutz

Sicherheit zwischen Klick und Webseite – TLS/SSL: Eine Frage der Implementierung

Kommunikationslage im Blick – Gefahr erkannt, Gefahr gebannt

IT-Risiken bei Netzwerk Videoüberwachung



Lehrbuch Cyber-Sicherheit

Übungsaufgaben und Ergebnisse zum Lehrbuch Cyber-Sicherheit

Bücher im Bereich Cyber-Sicherheit und IT-Sicherheit zum kostenlosen Download



Vorlesungen zum Lehrbuch Cyber-Sicherheit



Künstliche Intelligenz (KI) und Cyber-Sicherheit

Cyber-Sicherheitslage – Cyber-Sicherheitsstrategien

Künstliche Intelligenz (KI) und Cyber-Sicherheit

IT Security Talks im Rahmen der it-sa 365 – Vertrauenswürdigkeit schafft Vertrauen



Forschungsinstitut für Internet-Sicherheit (IT-Sicherheit, Cyber-Sicherheit)

Master-Studiengang Internet-Sicherheit (IT-Sicherheit, Cyber-Sicherheit)

Marktplatz IT-Sicherheit

Marktplatz IT-Sicherheit: IT-Notfall

Marktplatz IT-Sicherheit: IT-Sicherheitstools

Marktplatz IT-Sicherheit: Selbstlernangebot

Vertrauenswürdigkeits-Plattform


Zurück zur Übersicht




Summary
Keyed-Hashing for Message Authentication Code (HMAC)
Article Name
Keyed-Hashing for Message Authentication Code (HMAC)
Description
Der HMAC ist eine Einweg-Hashfunktion, die mit einem Schlüssel arbeitet, statt Verschlüsselungsverfahren aber Hashfunktionen verwendet. Das HMAC-Verfahren soll mit möglichst vielen verschiedenen Hashfunktionen zusammenarbeiten, ohne dass diese modifiziert werden müssen.
Author
Publisher Name
Institut für Internet-Sicherheit – if(is)
Publisher Logo
Keyed-Hashing for Message Authentication (HMAC) als Ablaufdiagramm
Keyed-Hashing for Message Authentication (HMAC) Prof. Dr. Norbert Pohlmann - Cyber-Sicherheitsexperten