Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Kodowanie Haseł
Forum PHP.pl > Forum > Przedszkole
tomspec22
  1. function codepass($password) {
  2. return sha1(md5(sha1(md5($password))));
  3. }


orginalnie było tak :

  1. function codepass($password) {
  2. return sha1(md5($password));
  3. }


Zwiększy to bezpieczeństwo kodując bardziej czy nie za bardzo
?
Pyton_000
nie,
użyj bcrypt + silny algorytm (min sha256)
tomspec22
Poszperałem i zamieniłem na taki skrypt :

  1. function crypt_apr1_md5($password) {
  2. $salt = substr(str_shuffle("abcdefghijklmnopqrstuvwxyz0123456789"), 0, 8);
  3. $len = strlen($password);
  4. $text = $password.'$apr1$'.$salt;
  5. $bin = pack("H32", md5($password.$salt.$password));
  6. for($i = $len; $i > 0; $i -= 16) { $text .= substr($bin, 0, min(16, $i)); }
  7. for($i = $len; $i > 0; $i >>= 1) { $text .= ($i & 1) ? chr(0) : $password{0}; }
  8. $bin = pack("H32", md5($text));
  9. for($i = 0; $i < 1000; $i++) {
  10. $new = ($i & 1) ? $password : $bin;
  11. if ($i % 3) $new .= $salt;
  12. if ($i % 7) $new .= $password;
  13. $new .= ($i & 1) ? $bin : $password;
  14. $bin = pack("H32", md5($new));
  15. }
  16. for ($i = 0; $i < 5; $i++) {
  17. $k = $i + 6;
  18. $j = $i + 12;
  19. if ($j == 16) $j = 5;
  20. $tmp = $bin[$i].$bin[$k].$bin[$j].$tmp;
  21. }
  22. $tmp = chr(0).chr(0).$bin[11].$tmp;
  23. $tmp = strtr(strrev(substr(base64_encode($tmp), 2)),
  24. "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
  25. "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
  26. return "$"."apr1"."$".$salt."$".$tmp;
  27. }
Crozin
I nie jest on niczego wart. Skorzystaj z password_hash oraz password_verify.
Pyton_000
facepalmxd.gif blink.gif
com
Bylo juz Temat: podwojne hashowanie hasel ale tak jak napisal Crozin chyba jedna z najbardziej slusznych obecnie smile.gif
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.