Ono što je Java Beograd zaboravio da kaže, a vrlo bitno je za razumjevanje ovog koncepta je da su algoritmi kao što je MD5 jednosmjerni. Iz password-a možeš da dobiješ uvijek ist hash ali iz hasha ne možeš da rekonstrujišeš password.
Većina baza podataka ima ugrađene funkcije md5, sha, itd... Tako da ti implementacija ovoga vrlo jednostavna.
Npr. za MySql:
novi korisnik:
Code:
INSERT into korisnik (username, password) VALUES ('user', MD5('pass'));
provjera da li su user i pass validni, ako upit vrati nešto onda je ok.
Code:
SELECT username FROM korisnik WHERE username='user' AND password=MD5('pass');
I eto ga niko osim korisnika ne zna pass.