Sózott jelszó

Sózott jelszó???

Gyakran lehet találkozni azzal a kifejezéssel a biztonságtechnikai oldalakon, hogy: salted password. De mit is jelent ez?

Normál esetben egy jelszót tisztán nem ment le a szoftver, web oldal, hanem készít belőle egy kódolt szöveget. Ez lehet egy- vagy kétirányú. 

Kétirányú esetén a szövegből elkészül a kód, és a kódból visszanyerhető a szöveg. Egyirányú kódolás esetén a jelszóból egy speciális szöveg (string) készül.

Példa kétirányú kódolásra

Jelszó: papa -> elkódolva qbqb mint látszik, a kódolás során minden karaktert egy byte -al elcsúsztattunk jobbra. Ha vissza kellene fejteni, akkor egy byte -al balra el kell csúsztatni a karaktereket, és vissza kapjuk az eredeti jelszót.

Példa egy irányú kódolásra

Jelszó: papa -> elkódolva: 0ac6cd34e2fac333bf0ee3cd06bdcf96

A jelszóból az MD5 (Message Digest 5) algoritmus segítségével egy hash kódot (szó szerint darálék) készítettem. A hash kódból nem lehet egyértelműen visszanyerni a jelszót, csak próbálgatással lehetséges az eredeti jelszó visszaállítása.

Miért is jó a sózott jelszó?

Egy normál jelszónak mindig ugyanaz lesz a hash kódja. Azaz a “papa” jelszóhoz mindig “0ac6cd34e2fac333bf0ee3cd06bdcf96” lesz a kód. Ha valaki ügyes, akkor a jellemző jelszavakat (nevek, állat nevek) hash kódjait legenerálja, és eltárolja egy adatbázisban. Lesz egy jó vaskos adatbázisa, amiben könnyen és gyorsan tud keresni, kevésbé terhelve a processzort!

Ha a mi papa jelszavunkat letárolják, és megkapják a hash kódot, akkor pár másodperc alatt megtalálják az eredeti jelszót! Ez bizony rossz!

A sózással azt érjük el, hogy a papa jelszavunk hash kódja nem lesz ugyanaz, mint amit az adatbázisban eltárolnak!

De hogyan tudjuk ezt elérni?

Nagyon egyszerűen! A jelszóhoz hozzá kell csapni egy olyan konstans adatot, ami a felhasználóra jellemző. Pl. Teszt Elek 1976. január 14 -én született. A jelszava papa. tegyük a jelszó mögé vagy elé a születési idejét!

Az új jelszava így fog kinézni: papa19760114 ennek a hash kódja pedig c1badd8d0f01c9590af8e04409bfa85e!

A papa jelszavát szépen használja a felhasználó, és a háta mögött a belépéskor hozzácsapjuk a születési idejét. Így biztosítva van az, hogy a papa jelszavához tartozó hash kódot soha nem fogják feltörni előre legenerált kódokkal!

Related Posts