( Exit | 2005. 09. 24., szo – 01:24 )

Maga a példa program nem igazán szemléltet semmit. Gyakorlati felhasználhatósága 0. A postcriptes hamisítás már érdekesebb, de azért még az sem vészes /hiszen a hamisított rész már eleve benne volt a dokumentumban, amit Ceasar digitálisan aláír/.

Az egész MD5-ös hókusz-pókusz ebből az egy sorból ered:

If MD5(x) == MD5(y) then MD5(x+q) == MD5(y+q)

Magyarán, ha létezik olyan x és y vektor /lehetnek akár különböző hosszúak is/, amelyek MD5 hashe ugyanaz, akkor mögéjük írva tetszőleges q vektort az új x+q és y+q vektorok hashe is egyenlő lesz. A most előforduló példákban x és y vmi előre kiszámolt tetszőleges vektor sor, aminek semmi köze az adott példához /kivéve, hogy az MD5 hashük egyenlő/. Gyakorlatilag dummy bájt sorok, amik jelzésként szerepelnek. A q pedig tartalmazza a good és evil tartalmat is, ami az x v. y előfordulásának függvényében kerül elő /x esetén a good, y esetén az evil aktiválódik/.

Tehát annyira nem vészes a helyzet, hogy most mindenki elkezdjen parázni, hogy az MD5 nem biztonságos vagy hogy régi.

Persze azért ez elég ok lehet rá, hogy lassan átálljunk valami másra. Mondjuk nem értem, hogy az MS akkor miért nem rögtön SHA 512-re vált? Miért kell minden lépcsőt egyesével szedni és elősször 256-ra áttérni /utána meg gondolom a 384-re és csak utána az 512-re/?