Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Kodowanie haseł
Forum PHP.pl > Forum > Przedszkole
kosmos
Cześc,
Proszę o pomoc w jednym temacie w którym jestem zielony.

Po co przechowywać w bazie hasła w MD5 skoro jeśli nieproszony gość przechwyci takowe, i tak będzie mógł używając go dosłownie, zalogować się na konto danego usera.

Jak najlepiej przechowywać hasła użytkowników w bazie. Przy użyciu jakiej funkcji (z własnym kluczem) je kodować.

Dzięki

Pozdrawiam
sajegib
MD5 ma to do siebie, że nie da się go rozszyfrować, a skrypty logujące userów porównują właśnie hashe MD5 a nie same hasła, tzn. że wpisanie hasha md5 w pole 'hasło' nic nie da wink.gif
A hasła w bazie polecam przechowywać w postaci hasha hasła i jakiejś randomowej soli


kujol
Jeśli ktoś wykradnie Ci hasło zakodowane w md5 i spróbuje się z niego zalogować to ono jeszcze raz zostanie przepuszczone przez md5 podczas porównywania hasła wpisanego tego z bazą i wyjdzie zupełnie inny ciąg znaków.
Md5 praktycznie jest nie do rozkodowania, trzeba by było porównywać ciągi znaków zakodowanych haseł z tym wykradzionym.
Czyli trzeba znać nie zakodowane hasło biggrin.gif.
pedro84
MD5 było nie do złamania. Jakieś 10 lat temu. Przy odrobinie chęci, obecnie to nie problem.

Obecnie radziłbym stosować Bcrypt albo sha515, koniecznie ze sporą ilością iteracji.
kosmos
Cytat(kujol @ 27.10.2013, 23:11:37 ) *
Jeśli ktoś wykradnie Ci hasło zakodowane w md5 i spróbuje się z niego zalogować to ono jeszcze raz zostanie przepuszczone przez md5 podczas porównywania hasła wpisanego tego z bazą i wyjdzie zupełnie inny ciąg znaków.
Md5 praktycznie jest nie do rozkodowania, trzeba by było porównywać ciągi znaków zakodowanych haseł z tym wykradzionym.
Czyli trzeba znać nie zakodowane hasło biggrin.gif.

Faktycznie! Ehh nie pomyślałem smile.gif Dzięki za wyjaśnienie. Właśnie tego było mi trzeba.
pedro84
Cytat(kosmos @ 28.10.2013, 10:00:45 ) *
Faktycznie! Ehh nie pomyślałem smile.gif Dzięki za wyjaśnienie. Właśnie tego było mi trzeba.

A ja powtórzę jeszcze raz, md5 obecnie nie jest żadnym zabezpieczeniem. W dodatku aż razi, że nikt nie wspomniał o soleniu hasła. Nawet w sieci możesz znaleźć słowniki md5, niektóre całkiem spore.
kosmos
Nikt tego nie neguje. Jak najbardziej masz rację. Chodziło mi o samą istotę całego procesu.
viking
W PHP 5.5 pojawiły się bardziej współczesne funkcje do obsługi haseł
http://www.php.net/password

Warto z nich korzystać.
pedro84
Cytat(kosmos @ 28.10.2013, 15:19:42 ) *
Nikt tego nie neguje. Jak najbardziej masz rację. Chodziło mi o samą istotę całego procesu.

Jasne, wolę tylko podkreślić, żeby czasem OP nie przyjął tego za prawdę objawioną.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.