MD5, Message-Digest algorithm 5, är en kryptografisk hashfunktion som skapar ett 128 bitar stort hashvärde av valfri data. MD5 utvecklades 1991 av Ronald Rivest för att ersätta den äldre rutinen MD4. Funktionen är beskriven i bland annat RFC 1321.

MD5 används för att skapa kontrollsummor, bland annat vid filöverföring, digital signering och lösenordsverifiering. Den anses sedan 2005 inte vara en kryptografisk säker funktion, men kan fortfarande användas för att upptäcka fel som har uppstått av misstag.

Mycket arbete har lagts ner på att hitta svagheter i MD5 som kan användas för att till exempel skapa olika filer eller signaturer med samma hashvärde, och för att från ett hashvärde finna ett lösenord i klartext. 2005 lyckades forskare skapa två Postscript-filer med samma hashvärde, och även två X.509-certifikat med samma hashvärde. På Chaos Communication Congress 2008 presenterade en forskargrupp ett falskt CA-certifikat som såg legitimt ut när dess MD5-hashvärde kontrollerades.[1] Med ett sådant certifikat kan en man-in-the-middle-attack utföras.[2]

Flera projekt har arbetat med regnbågstabeller för MD5, som kan användas för att från ett hashvärde finna ett eller flera potentiella lösenord. Dessa tabeller är dock närmast värdelösa om lösenorden saltas före hashning.

Källor redigera

Externa länkar redigera