Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Odkodowywanie hasha crypt()
Forum PHP.pl > Forum > Przedszkole
Raven1122
Witam, do hashowania uzywam funkcji crypt, w jaki sposob odkodować zasolone haslo?? smile.gifZ gory Dziekuje za pomoc
kondziu9516
oo dołącze się do pytania rówież z hashowaniem md5 smile.gif
Raven1122
Wedlug manuala nie hashuj za pomoca md5 tylko hash() lub crypt() smile.gif
kondziu9516
dlaczego??
Raven1122
Note: Secure password hashing

It is not recommended to use this function to secure passwords, due to the fast nature of this hashing algorithm. See here for details.
kopiowane z manuala, a dlaczego to nie wiem

kondziu9516
heh spoko smile.gif

Dzięki ale i tak zostane przy md5 cool.gif
Crozin
@kondziu9516: MD5 którego da się złamać w czasie kilku sekund do kilku minut na przeciętnym komputerze? Dobre posunięcie. Dla haseł stosujemy funkcje typu bcrypt, PBKDF2 albo chociaż coś z rodziny SHA-2.
Raven1122
a na glowne pytanie ktos odpowie?? smile.gif
CTRL
Cytat
Note: There is no decrypt function, since crypt() uses a one-way algorithm.


Tak trudno przeczytać manuala?
Raven1122
a jaka funnkcje polecacie ktora zawiera mozliwsc odsolenia ;p
CTRL
A istnieje takowa? Solić można przecież w jakikolwiek sposób. Czy Ty aby nie próbujesz dostać się do czyjegoś hasła? Raczej moderatorzy nie będą tego tolerować.
Raven1122
nie probuje sie dostac do czyjegos hasla tylko sam robie rejestracje no i w bazie danych mam niezasolone hasla, a chcialbym je "odsolic" zeby sprawdzic czy uzytkownik podal dobre haslo przy inpucie
lobopol
Na cholerę to chcesz odkodować? hashujesz to co podał i tego hasha dopiero porównujesz.
Raven1122
Zrobilem tak:
  1. <?php
  2. $string = 'password';
  3. $hash = crypt($string);
  4. if($hash == $string){
  5. echo("Dobrze");
  6. }
  7. else{
  8. echo("zle");
  9. }
  10. ?>


Wynik chyba znamy, jak nie to oczywiscie zle, czyli jak ja mam to porownac? przeciez uzytkownik w pole wpisze swoje haslo a nie caly hash ;/
crocodillo
Jeśli Ty tak na poważnie to hashujesz hasło podane przez użytkownika i porównujesz z już zahashowanym hasłem z bazy danych (oczywiście w obu przypadkach musi być użyty ten sam algorytm hashowania)
fr33d0m
Cytat(Raven1122 @ 29.02.2012, 21:24:39 ) *
Zrobilem tak:
  1. <?php
  2. $string = 'password';
  3. $hash = crypt($string);
  4. if($hash == $string){
  5. echo("Dobrze");
  6. }
  7. else{
  8. echo("zle");
  9. }
  10. ?>


Wynik chyba znamy, jak nie to oczywiscie zle, czyli jak ja mam to porownac? przeciez uzytkownik w pole wpisze swoje haslo a nie caly hash ;/


Przy rejestracji user wpisuje haslo, Ty hashujesz i zapisujesz do bazy. Później, podczas logowania znowu hashujesz i porównujesz hash tym z bazy gdzie login=login i pass=hash(pass)
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.