![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 195 Pomógł: 0 Dołączył: 29.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Które hashowanie wybrać? Za pomocą md5 czy sha1? I dlaczego?
Jak obydwa zaimplementować do php, jeśli przez formularz rejestracyjny podaje hasło i zapisuje je do bazy mysql? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 29.02.2004 Skąd: /dev/null Ostrzeżenie: (0%) ![]() ![]() |
Odgrzewam ten kotlet bo mam kilka mysli nt. soli
Z jednej strony dobrze jest jesli sol jest unikalna dla kazdego z uzytkownikow bo wtedy jest pewnosc, ze cracker bedzie mial duzy problem ze zlamaniem hasla, ale z drugiej strony trzeba jakos ta sol trzymac np w bazie danych. Jesli cracker zdobedzie hashe to jest to praktycznie 100% pewnosc ze wyciagnal je z bazy danych i nie jeden hash tylko wszystkich userow (wlamka do bazy), bo nie mysle tutaj o przypadku trzymania hasla w cookies bo to zbyt idiotyczne ;P Wiec jest w stanie przejrzec rozne mozliwosci w jaki sposob hash byl tworzony, np polaczenie timestamp z 2 literka loginu, troche to trwa ale przy kradziezy takiej bazy danych np wykopu sie to oplaca. Moze dobrym pomyslem jest jednak trzymac sol jako stale smieci nie w bazie danych a w pliku, calkowicie oddzielonym od public_html, gdzies powyzej zeby nie mozna go bylo tak latwo znalezc, przy kradziezy bazy danych nie ma zadnej mozliwosci zlamania soli bo nigdzie jej w bazie nie znajdzie i jesli sol jest zaawansowana (jak pisal bodajze normanos ze znakami specjalnymi). Aby pobrac sol musialby wlamac sie na serwer a to troche trudniejsza sprawa niz wyciagniecie bazy danych. Mysle ze sposob nr 2 jest jednak bezpieczniejszy, moge sie oczywiscie bardzo mylic i ochrzancie mnie troche jesli tak jest ;-) Ten post edytował bumfank 31.10.2009, 17:29:34 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 05:20 |