MD4 ist eine von Ron Rivest entworfene Einweg-Hashfunktion, die einen
128 bit langen Hashwert produziert. MD steht für
Diese Entwurfsziele und das Prinzip des Message Digest, das in MD4 verwendet wird, sind Basis einiger anderer Einweg-Hashfunktionen: MD2, MD3, MD5, RIPEMD, HAVAL, SHA. Deren Modifikation im Vergleich zu MD4 sind auch eine Folge der ständig wachsenden Rechenleistung, obwohl sämtliche kryptanalytischen Angriffe nicht auf den ganzen Algorithmus erweitert werden konnten.
MD2 ist eine von Ron Rivest entwickelte Einweg-Hashfunktion mit 128 bit langem Hashwert, die zusammen mit MD5 in den Privacy-Enhanced-Mail-(PEM)-Protokollen verwendet wird. Der Klartext wird auf ein Vielfaches von 16 Byte erweitert und anschließend wird eine 16 Byte lange Prüfsumme angehängt. 16 Byte mit Nullen, 16 Byte der Nachricht und deren XOR-Verknüpfung bilden den ersten Block, der noch komprimiert wird. Weitere 16-Byteweise Verknüpfungen und Kompressionen mit der Nachricht bilden die Ausgabe. Die Sicherheit von MD2 hängt von einer zufälligen Bytepermutation ab. Bisher wurden noch keine Schwächen entdeckt, allerdings ist MD2 langsamer als die meisten anderen Algorithmen.
MD3 wird hier nur zwecks Vollständigkeit genannt. Wegen mehrerer Mängel brachte Ron Rivest diese Funktion nie über die Experimentierphase hinaus.
MD5, ebenfalls von Ron Rivest entwickelt, ist die am weitesten verbreitete Einweg-Hashfunktion. Diese ist zwar komplexer als MD4, arbeitet aber nach einem ähnlichen Prinzip und erzeugt ebenfalls einen Hashwert der Länge 128 bit. MD5 wird auch in Pretty Good Privacy (PGP) angewandt, einem Programm zur E-Mail-Kommunikation.
Nach einigen Vorbereitungsschritten verarbeitet MD5 den Eingabetext in Blöcken von 512 bit, aufgeteilt in Teilblöcke der Länge 32 bit. Durch Anhängen einer 64-bit-Darstellung der Länge der Nachricht, eines einzelnen Bits mit dem Wert Eins und sonst Nullen wird die Nachricht auf ein Vielfaches von 512 Bit aufgefüllt. Dadurch wird sichergestellt, daß verschiedene Nachrichten nach dem Auffüllen nicht identisch sind.
Die Hauptschleife des Algorithmus besteht aus vier Runden, die vier
32-bit-Verkettungsvariablen (


Nach jeder Runde werden initialisierte Variablen (
Bei jeder Operation wird eine unterschiedliche nichtlineare Funktion verwendet, deren einzelne Ergebnisbits unabhängig und gleichmäßig verteilt sind. Im Vergleich zu MD4 wurde der Hauptschleife eine vierte Runde hinzugefügt und jeder Schritt enthält eine eindeutige Konstante. Da jeder Schritt vom Ergebnis des vorherigen abhängt, entsteht ein schnellerer Lawineneffekt.
Eine differentielle Kryptanalyse ist unwirksam, allerdings können Kollisionen durch Angriffe auf den Kompressionsalgorithmus von MD5 produziert werden. Damit ist zwar eine wichtige Eigenschaft nicht mehr gegeben, aber MD5 ist trotzdem der weitverbreiteste Hash-Algorithmus.