Modification Detection Code
aus Wikipedia, der freien Enzyklopädie
Ein Modification Detection Code oder auch Manipulation Detection Code (MDC) ist ein Hash-Wert, der aus Daten berechnet wird um bei Bedarf deren Integrität überprüfen zu können.
Wie der Titel bereits andeutet, soll ein MDC Veränderungen (engl. Modification) von Daten aufzeigen. Da auch absichtliche Veränderungen (engl. Manipulation) damit erkannt werden sollen, genügt es nicht eine einfache Prüfsumme zu verwenden, da hierbei Kollisionen zu leicht zu erzeugen wären. Um dieses Problem zu lösen werden zur Erstellung des MDC kryptographische Hash-Funktionen verwendet.
Wenn die Integrität der Daten, beispielsweise nach einer Übertragung, geprüft werden soll, genügt es selbst den entsprechenden MDC noch einmal zu berechnen und mit dem MDC der ursprünglichen Daten zu vergleichen.
Da der MDC im Unterschied zum Message Authentication Code nicht die Verwendung eines geheimen Schlüssels vorsieht, ist er nicht dazu geeignet die Authentizität der Daten sicherzustellen. Ein Angreifer der also sowohl auf Daten als auch auf den MDC Zugriff hat, könnte die Daten modifizieren und den zugehörigen MDC mit einem selbsterzeugten überschreiben. Die Modifikation liesse sich in diesem Fall später nicht mehr erkennen.
Gebräuchliche Verfahren zum Erzeugen des MDC sind MD5 und SHA-1.