Zum Inhalt springen

Diskussion:Message Authentication Code

Seiteninhalte werden in anderen Sprachen nicht unterstützt.
aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 10. September 2010 um 16:12 Uhr durch Kunsv (Diskussion | Beiträge) (unverständliche Einleitung). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Letzter Kommentar: vor 14 Jahren von Kunsv in Abschnitt unverständliche Einleitung

Ich glaub da ist ein kleiner Widerspruch im Artikel.

Im Text steht zum Einen: "Ein MAC wird erzeugt, indem eine kryptografische Hashfunktion, die ein Passwort (symmetrischen Schlüssel) enthält, auf die Nachricht angewandt wird."

Und unten dann: "MAC auf der Basis von Hash-Funktionen heißen HMAC."

Das heißt dann doch: Alle MAC sind gleichzeitig HMAC, weil sie ja alle mit Hashfunktionen arbeiten Stimmt das oder hab ich irgendwo nen Denkfehler

Du hast recht. Es ist extrem unsauber formuliert, hier nochmal kurz wie ich es sehe (Referenz: Claudia Eckert, IT-Sicherheit, 2005). MAC dient zur Absicherung von Hash Funktionen durch einen Schlüssel. Hintergrund ist, dass man bei normalen Hashes zwar prüfen kann, ob sie zu den Daten passen, man weiß aber nicht ob der Hash auch vom Urheber der Daten stammt. (Angreifer könnten Daten verändern und den Hash entsprechend neu generieren) Deshalb wird dem Hash noch ein Schlüssel beigefügt. Dieser Schlüssel wird zum Beispiel einfach an das Ende der Daten angehängt und mitgehasht, den Schlüssel kennt ein Angreifer nicht und kann deshalb keinen gültigen Hash für (verfälschte) Daten generieren.
HMAC ist ein Spezialfall. Hier wird der Schlüssel nicht irgendwie an die Nachricht gehängt, sondern der Schlüssel bildet den Initialisierungsvektor der Hashfunktion. Dieser Initialisierungsvektor ist bei normalen Hashfunktionen fest vorgegeben, ihn durch den Schlüssel zu ersetzen führt also dazu, dass jeder eine persönliche Variante der Hashfunktion "entwickeln" kann.
Problem von MAC ist, dass der Schlüssel beiden Kommunikationspartnern zur Verfügung stehen muss, gegenüber allen anderen aber geheim sein muss. Es kann nicht einfach wie bei asymmetrischen Signaturverfahren irgendwo ein Public Key veröffentlicht werden, weshalb MAC nicht sonderlich gut skaliert.
Ich habe im Moment leider keine Zeit das mal ordentlich (im Artikel) zu formulieren, es sollte aber unbedingt getan werden, so wie's da steht ist es unbrauchbar, vielleicht sogar falsch. --JonKowal 13:55, 18. Nov 2005 (CET)

unverständliche Einleitung

In der Kryptographie bezeichnet der Message Authentication Code (MAC) einen erzeugten Prüfteil eines Authentikationscodes... Unverständlich ist vor allem dass der MAC als Prüfteil eines Authentikationscodes bezeichnet wird. Meiner Verständnis nach ist der MAC der Prüfteil der Nachricht. Ausserdem verstehe ich den MAC als einen speziellen Authenticationscode und zwar zur Verschlüsselung von Nachrichten. --Avron 09:04, 19. Jul. 2007 (CEST)Beantworten

Ok, ist in der tat etwas mißverständlich. der mac ist ein prüfteil, der für eine spezielle nachricht gebildet und dieser angehängt wird. soweit scheint das ja klar zu sein. ein authentikationscode ist das zugrundeliegende symmetrische system / verfahren zur authentikation. mit dem mac alleine kann noch gar nichts erreicht werden. er sagt ja z.b. nichts darüber aus, daß im vorfeld ein geheimer schlüssel zwischen sender und empfänger zu vereinbaren und auszutauschen ist. dein zweiter punkt ist dagegen falsch. der mac dient lediglich als prüfteil und wird zusätzlich zur nachricht übersendet. natürlich werden meist authentikation und verschlüsselung kombiniert, sogar die reihenfolge ist prinzipiell bis auf kleine unterschiede egal, also ob zuerst authentisiert und das verschlüsselt wird oder umgekehrt. das originäre verfahren aber verschlüsselt nicht. nebenbei, du kannst mich natürlich mit stichhaltigen quellen gern eines besseren belehren. gruß --Murkel (anmurkeln) 14:27, 19. Jul. 2007 (CEST)Beantworten
Sorry, im zweiten Teil habe ich natürlich Bullshit geschrieben. Sollte heissen: Ausserdem verstehe ich den MAC als einen speziellen Authenticationscode und zwar zur Sicherung von Nachrichten. --Avron 16:44, 19. Jul. 2007 (CEST)Beantworten

Jetzt habe ich mir deine Antwort noch mal durchgelesen. authentikationscode ist das zugrundeliegende symmetrische system / verfahren zur authentikation Naja, die Wortwahl ist nicht gerade glücklich. Ein Code ist erst mal kein Verfahren. Das Athentikationscode-Verfahren ist ein Verfahren. --Avron 16:59, 20. Jul. 2007 (CEST)Beantworten

über die wortwahl kann man sich ja immer streiten. zugegeben ich finde die bezeichnung auch nicht besonders toll - habs so gelehrt bekommen. aber nach namen sollte man nun nicht immer gehen: der diffie-hellman-schlüsselaustausch ist ja auch kein schlüsselaustausch ;)
wie bereits vorgeschlagen, wenn du aus der literatur eine treffendere begrifflichkeit kennst, dann füge sie bitte ein. mein anliegen in diesem fall besteht darin, daß prüfteil und verfahren nicht mit dem gleichen wort versehen werden. gruß --Murkel (anmurkeln) 18:28, 20. Jul. 2007 (CEST)Beantworten
Dem Anliegen Murkels stimme ich vollkommen zu. Es vereinfacht den Lesefluss und das Verständnis des Lesers. Beispielsweise würde ich, ohne eine entsprechende Vorlesung belegt zu haben, 'Message Authentication Code (MAC)' als die Erweiterung der Nachricht und 'MAC-Verfahren' als den Prozess der Erstellung des MAC vor dem Senden der Nachricht und das Überprüfung der Authentizität/Integrität nach dem Empfangen derselbigen begreifen. Eine Aufstellung wie im Falle des Artikels über die Diffie-Hellman-Schlüsselvereinbarung ist zweckmäßig. Ein weiterer Hinweis für die Einleitung ist, dass überflüssige Adjektive, wie 'erzeugter' vor Prüfteil oder 'gesendete' vor Nachricht, entfallen können. Falls du damit gegebenenfalls ausdrücken möchtest, dass MACs ihre Verwendung bei Datenübertragungen finden, so versichere ich dir, dass dies 'Nachricht' impliziert. Weniger, dafür mehr sinntragende Adjektive erleichtern ebenso den Lesefluss. -- Kunsv 16:12, 10. Sep. 2010 (CEST)Beantworten

>Ein Angreifer kann die Nachricht zwar ändern, da er aber den geheimen Schlüssel nicht kennt, kann er keinen gültigen MAC für die veränderte Nachricht erstellen. Hmm, aber bei einer Man-in-the-middle-attack kennt doch der Angreifer die geheimen Schlüssel, weil er ja vorgaukelt der jeweils andere zu sein? Er kann doch den MAC von Alice entfernen und einen neuen für Bob generieren, oder?

Widerspruch

In der Einleitung steht: "Authentifizierungscodes sind informationstheoretisch sichere symmetrische Authentifizierungsverfahren und gewährleisten die Integrität und Authentizität elektronischer Daten und Nachrichten" Weiter unten im Kapitel "Bezug zu Digitalen Signaturen" heisst es aber: "Da jeder, der einen MAC verifizieren kann, auch einen MAC erstellen kann, ist im Gegensatz zu digitalen Signaturen die Authentizität nicht gewährleistet."

Es ist richtig, dass der Empfänger einer Nachricht einen gültigen MAC erzeugen kann, da er im Besitz des symmetrischen Schlüssels ist. Ich denke aber, die Authentizität ist sichergestellt, aber nicht die Verbindlichkeit (non-repudiation). Der Sender kann immer abstreiten, die Nachricht gesendet zu haben und behaupten, sie sei vom Empfänger erstellt werden. --213.3.105.222 20:40, 28. Jul. 2009 (CEST)Beantworten

der satz ist wirklich etwas unglücklich; ich habe ihn daher entfernt. jedes verfahren muss natürlich bestimmungsgemäß verwendet werden, damit die gewünschten konsequenzen, also hier die authentizität, auch eintreten. gruß Murkel (anmurkeln) 08:05, 29. Jul. 2009 (CEST)Beantworten