Spremanje lozinke u bazu

Pozdrav!

Šta mislite dali je dobro vako spremati lozinku u bazu?

Pošto sam čuo da je md5 nesigurno rainbow tablice crackiranje šifri.

Ponekad neke akcije ka sigurnosti aplikacije rezultiraju još većom mogućnosti eksploatacije iste. Što fali sha1() algoritmu?

Prvo bih ti preporučio da proučiš kako algoritmi za kriptiranje podataka zapravo rade. Prouči mogućnosti sudara (collision) pojedinih algoritama (npr. sha1).

Tada će ti biti jasno da je tvoja aplikacija zapravo ranjivija na ovakav način, zbog činjenice da se “sudar” npr. sha1() algoritma događa pri kompleksnosti operacija reda 2^51, dok je mogućnost sudara unutar tvoje metode šifriranja mnogo veća. Samim time što ne znaš koju vrijednost možeš očekivati na kraju.

Dakle, tvoja funkcija prvo primijeni md5(), pa zatim crypt() u kombinaciji sa predefiniranom vrijednosti (salt), pa sha1(), te na kraju md5(). Kako će gotovo svaki od tih algoritama unutar tvoje funkcije izračunati vrijednost (lozinka+salt) - jasno je da si zapravo povećao mogućnost podudaranja (bespotrebno)!

Edit: tvoja aplikacija je, naravno, sigurna za sve tvoje potrebe… Samo sam ti htio ukazati na pravilno korištenje ovakvih algoritama…

sustok, svo to kriptiranje je teški overkil. Rainbow tablice imaju šansu samo kod čistog md5 i slabih lozinki, ali kada ubaciš dobar salt jedna md5 ili sha1 će biti dovoljan,

Samo md5 i dost ti :smiley: nekompliciraj :smiley: