Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Kodowanie Haseł, Czy takie rozwiązanie ma jakiś sens ?
tomspec22
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 26.11.2014

Ostrzeżenie: (0%)
-----


  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
?
Go to the top of the page
+Quote Post
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


nie,
użyj bcrypt + silny algorytm (min sha256)
Go to the top of the page
+Quote Post
tomspec22
post
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 26.11.2014

Ostrzeżenie: (0%)
-----


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. }
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


I nie jest on niczego wart. Skorzystaj z password_hash oraz password_verify.
Go to the top of the page
+Quote Post
Pyton_000
post
Post #5





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


(IMG:style_emoticons/default/facepalmxd.gif) (IMG:style_emoticons/default/blink.gif)
Go to the top of the page
+Quote Post
com
post
Post #6





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

Ostrzeżenie: (0%)
-----


Bylo juz Temat: podwojne hashowanie hasel ale tak jak napisal Crozin chyba jedna z najbardziej slusznych obecnie (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 05:21