Új hozzászólás Aktív témák

  • cucka

    addikt

    válasz Sk8erPeter #3426 üzenetére

    De ha itt md5-tel ismét "titkosítom" azt a karaktersorozatot, amit a felhasználó bevitt, és az eredményt összevetem az adatbázisban tárolt adatokkal, akkor ezt miért nem tudják ugyanezzel a módszerrel automatizáltan feltörni?
    Már hogy képzeled az automatizáltan feltörést? Végigpróbálod az összes lehetséges jelszót?
    A lényege a dolognak, hogy az md5 (és más hash algoritmusok is) egyirányúak. Ez azt jelenti, hogy nincs olyan algoritmus, ami polinomiális időben tudna egy adott hash-re ütközést találni. Tehát hiába látod a hash-t, a jelszót nem tudod belőle visszafejteni.

    Most ez kábé olyan, mintha nem is lenne titkosítva, mert a bevitelkor úgyis a titkosított
    eredményt veti össze a már korábbban titkosítottal.

    Nem. Először is a hash az nem titkosítás, hanem hash. Más a célja, másra jó. Hiába tudja az illető a hash-t, attól még nem tud belépni az oldaladra, mert ahhoz a jelszót kéne tudnia.

    Hogy érzékeld a különbséget a hash és a titkosítás között: gondolom te is találkoztál már netről letöltött zenével/programokkal, ahol a fileok mellett ott az svf file. Na az pont ugyanilyen hash algoritmussal készül, az svf-ben minden filehoz tartozik egy 32 biten ábrázolt szám. Miután letöltötted a fileokat, ezzel lehet ellenőrizni, hogy valóban helyesek-e az adatok. A hash algoritmusok egyik jellemzője, hogy nagyon "szórnak", tehát ha a bemeneti adatot kis mértékben megváltoztatod, az eredményül kapott hash teljesen más lesz. Ezért jó pl. ilyen ellenőrzésekre. (Igen, elvileg az md5 vagy az sha1 is tökéletesen megfelelő ilyen ellenőrzésekre, de ha nem kifejezetten fontos az egyirányúság, akkor jellemzően megéri valamilyen gyorsabb algoritmust használni)

Új hozzászólás Aktív témák