MAC-Signaturen

Eine MAC-Signatur ist eine kryptografische Ausgabe, die zur Prüfung der Integrität und zur Authentifizierung der Daten verwendet wird. Ein MAC-Signaturalgorithmus ermöglicht zwei verschiedene Vorgänge:

  • einen Signaturvorgang, der einen Signaturschlüssel verwendet, um ein MAC-Tag über Rohdaten zu erstellen (z. B. die Signatur)

  • einen Prüfvorgang, bei dem die Authentizität der Nachricht anhand des Signaturschlüssels und des zu prüfenden MAC-Tags bestätigt werden kann

Die Hauptzwecke einer MAC-Signatur sind:

  • die Prüfung der Integrität der signierten Daten und
  • die Prüfung der Authentizität der Nachricht

Der Zweck von MAC ähnelt dem von digitalen Signaturen, dabei nutzt es aber die symmetrische Kryptografie. MAC-Tags werden mit demselben geheimen Schlüssel generiert und verifiziert. Das bedeutet, dass Sender und Empfänger einer Nachricht denselben Schlüssel haben müssen, um die Kommunikation zu initiieren.

Beispielanwendungsfall für eine MAC-Signatur

MAC-Algorithmen wie HMAC sind aufgrund ihrer Effizienz ein guter Mechanismus zur Dateiintegritätsprüfung. Hash-Funktionen können eine Nachricht mit beliebiger Länge in einen Digest mit fester Länge umwandeln, um die Bandbreitennutzung zu maximieren.

MAC-Signatur-Workflow

Im Folgenden wird der Ablauf zum Erstellen und Validieren einer Signatur beschrieben. An diesem Workflow sind der Datenunterzeichner und der Datenempfänger beteiligt.

  1. Unterzeichner und Empfänger einigen sich auf die Verwendung eines bestimmten, gemeinsam genutzten MAC-Schlüssels.

    Beide können diesen Schlüssel zum Erstellen oder Prüfen von MAC-Signaturen verwenden.

  2. Der Unterzeichner wendet den Signiervorgang auf die Daten an, um ein MAC-Tag zu berechnen.

  3. Der Unterzeichner stellt dem Datenempfänger die Daten und das MAC-Tag bereit.

  4. Der Empfänger nutzt den gemeinsam verwendeten MAC-Schlüssel, um die MAC-Signatur zu verifizieren. Ist die Verifizierung nicht erfolgreich, wurden die Daten geändert.

Signieralgorithmen

Der Cloud Key Management Service unterstützt derzeit nur die Signatur mit HMAC-Algorithmen.

HMAC-Algorithmen (keyed-Hash Message Authentication Code) verwenden kryptografische Hash-Funktionen wie SHA-2 oder SHA-3, um das MAC-Tag zu berechnen. Die kryptografische Stärke der HMAC-Funktion hängt von der Stärke der zugrunde liegenden Hash-Funktion, der Größe ihrer Hash-Ausgabe und der Größe des Schlüssels ab.

MAC-Signaturfunktionalität von Cloud KMS

Cloud KMS bietet die folgenden Funktionen zum Erstellen und Prüfen von MAC- Signaturen: