Nachrichtenauthentifizierung
Im letzten Kapitel haben wir die Bedrohungen der Datenintegrität und die Verwendung der Hashing-Technik erörtert, um festzustellen, ob Änderungsangriffe auf die Daten stattgefunden haben.
Eine andere Art von Bedrohung, die für Daten besteht, ist das Fehlen von message authentication. Bei dieser Bedrohung ist sich der Benutzer nicht sicher über den Absender der Nachricht. Die Nachrichtenauthentifizierung kann mithilfe der kryptografischen Techniken bereitgestellt werden, bei denen geheime Schlüssel verwendet werden, wie dies bei der Verschlüsselung der Fall ist.
Nachrichtenauthentifizierungscode (MAC)
Der MAC-Algorithmus ist eine kryptografische Technik mit symmetrischem Schlüssel zur Bereitstellung der Nachrichtenauthentifizierung. Zum Einrichten des MAC-Prozesses teilen sich Sender und Empfänger einen symmetrischen Schlüssel K.
Ein MAC ist im Wesentlichen eine verschlüsselte Prüfsumme, die für die zugrunde liegende Nachricht generiert wird und zusammen mit einer Nachricht gesendet wird, um die Nachrichtenauthentifizierung sicherzustellen.
Der Prozess der Verwendung von MAC zur Authentifizierung ist in der folgenden Abbildung dargestellt:
Versuchen wir nun, den gesamten Prozess im Detail zu verstehen -
Der Absender verwendet einen öffentlich bekannten MAC-Algorithmus, gibt die Nachricht und den geheimen Schlüssel K ein und erzeugt einen MAC-Wert.
Ähnlich wie beim Hash komprimiert die MAC-Funktion auch eine beliebige lange Eingabe in eine Ausgabe fester Länge. Der Hauptunterschied zwischen Hash und MAC besteht darin, dass MAC während der Komprimierung einen geheimen Schlüssel verwendet.
Der Absender leitet die Nachricht zusammen mit dem MAC weiter. Hier gehen wir davon aus, dass die Nachricht im Klartext gesendet wird, da es um die Authentifizierung des Nachrichtenursprungs und nicht um die Vertraulichkeit geht. Wenn Vertraulichkeit erforderlich ist, muss die Nachricht verschlüsselt werden.
Beim Empfang der Nachricht und des MAC führt der Empfänger die empfangene Nachricht und den gemeinsam genutzten geheimen Schlüssel K in den MAC-Algorithmus ein und berechnet den MAC-Wert neu.
Der Empfänger überprüft nun die Gleichheit des frisch berechneten MAC mit dem vom Absender empfangenen MAC. Wenn sie übereinstimmen, akzeptiert der Empfänger die Nachricht und versichert sich, dass die Nachricht vom beabsichtigten Absender gesendet wurde.
Wenn der berechnete MAC nicht mit dem vom Absender gesendeten MAC übereinstimmt, kann der Empfänger nicht feststellen, ob die Nachricht geändert oder der Ursprung gefälscht wurde. Unter dem Strich geht ein Empfänger sicher davon aus, dass die Nachricht nicht echt ist.
Einschränkungen von MAC
Es gibt zwei Hauptbeschränkungen von MAC, beide aufgrund seiner symmetrischen Funktionsweise -
Establishment of Shared Secret.
Es kann eine Nachrichtenauthentifizierung für vorab festgelegte legitime Benutzer bereitstellen, die einen gemeinsam genutzten Schlüssel haben.
Dies erfordert die Einrichtung eines gemeinsamen Geheimnisses vor der Verwendung von MAC.
Inability to Provide Non-Repudiation
Nicht-Zurückweisung ist die Zusicherung, dass ein Nachrichtenurheber keine zuvor gesendeten Nachrichten und Zusagen oder Aktionen ablehnen kann.
Die MAC-Technik bietet keinen Nicht-Ablehnungsdienst. Wenn der Absender und der Empfänger in einen Streit über die Entstehung von Nachrichten verwickelt sind, können MACs keinen Beweis dafür liefern, dass eine Nachricht tatsächlich vom Absender gesendet wurde.
Obwohl kein Dritter den MAC berechnen kann, könnte der Absender dennoch leugnen, die Nachricht gesendet zu haben, und behaupten, der Empfänger habe sie gefälscht, da nicht festgestellt werden kann, welcher der beiden Parteien den MAC berechnet hat.
Diese beiden Einschränkungen können überwunden werden, indem die im folgenden Abschnitt beschriebenen auf öffentlichen Schlüsseln basierenden digitalen Signaturen verwendet werden.