MD5 on niin kutsuttu message-digest -algoritmi, jota käytetään muun muassa kryptografiassa. MD5 on yksi monista Ronald Rivestin kehittämistä tiivistealgoritmeista ja se perustuu aikaisempaan MD4-algoritmiin, jonka analyysit osoittivat mahdollisesti turvattomaksi.[1][2] MD5-algoritmi tuottaa tuloksenaan 128-bittisen tiivisteen, joka tyypillisesti esitetään 32-merkkisenä heksakoodatussa muodossa. Esimerkiksi merkkijonon The quick brown fox jumped over the lazy dogs MD5-tiiviste on 8c1788205b6abffb0c6a4a1f4b10395a. Algoritmin referenssitoteutus on esitetty IETF:n standardissa RFC 1321.
Mahdollinen hyökkäystapa on kuvattu dokumentissa RFC 6151 ja MD5 ei enää sovellu korkeampaa tietoturvaa vaativiin sovelluksiin vaan niissä on käytettävä esimerkiksi SHA-tiivisteitä.[3]
Ensimmäinen artikkeli, joka esitteli MD5-törmäyksiä julkaistiin vuonna 2004.[4] Sen jälkeen menetelmät ovat kehittyneet: vuonna 2006 kesti noin minuutin löytää törmäys tavallisella kannettavalla tietokoneella ja vuonna 2007 väitettiin törmäyksen löytyvän kymmenessä sekunnissa. MD5-törmäyksiä on myös käytetty X.509-sertifikaatteja vastaan.[5]