Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Szyfrowanie hasła solą
Barcelona
post
Post #1





Grupa: Zarejestrowani
Postów: 322
Pomógł: 15
Dołączył: 29.01.2010

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


Witam, krążę właśnie nad zabezpieczeniem mojej strony za pomocą szyfrowania haseł solą. Dużo się o niej wspomina, jakie ma wady i zalety, ale nigdzie konkretnie nie znalazłem jakichś porad w jaki sposób mogę zastosować to szyfrowanie.
Znalazłem skrypt na openwall, pobrałem go razem z dokumentacją, ale jest ona tylko i wyłącznie w języku eng. Dogadać to się dogadam, ale czytać to już nie za bardzo wstydnis.gif
Znajdzie się jakaś dobra dusza, która pomoże mi z tym problemem.

P.S. Aktualnie szyfruje hasła za pomocą md5. Czytałem że na dzień dzisiejszy nie jest to dobre zabezpieczenie (brutal force i te sprawy), jednak pomyślałem żeby przy logowaniu zastosować recaptcha od google. Myślę że w jakiś sposób zatrzymało by to próbę b-f.

Drugim moim pomysłem jest zrobienie warunków. Jeżeli hasło zaczyna się na np. literkę na to ma szyfrować za pomocą md5, a na przykład jak zaczyna się na b to już za pomocą SH1. Wiem że jest to łopatologiczne rozwiązanie, ale myślę że było by skuteczne smile.gif

To na początek wrzuce przykładowy skrypt logowania
  1. $login = mysql_real_escape_string(trim($_POST['login']));
  2. $haslo = mysql_real_escape_string(trim($_POST['haslo']));
  3. $adres = $_SESSION["adres"];
  4.  
  5. if (isset($login) && $login=="") { $blad++;
  6. $komunikat .= "Login nie został podany!<br />";
  7. }
  8. if (isset($login)) {
  9. $wynik=mysql_query("SELECT * FROM logowanie WHERE login='$login'");
  10. if (mysql_num_rows($wynik)==0) { $blad++;
  11. $komunikat .= "Login <b>$login</b> nie widnieje w naszej bazie! <br />";
  12. }
  13. }
  14. if (isset($haslo) && $haslo=="") { $blad++;
  15. $komunikat .= "Hasło nie zostało podane!<br />";
  16. }
  17. if (isset($haslo)) {
  18. $haslo_spr = md5($haslo);
  19. $wynik=mysql_query("SELECT * FROM logowanie WHERE login='$login' AND haslo='$haslo_spr'");
  20. if (mysql_num_rows($wynik)==0) { $blad++;
  21. $komunikat .= "Hasło nie jest prawidłowe! <br />";
  22. }
  23. }
  24. if ($blad>0) {
  25. echo "<div class='error'>".$komunikat."</div><br/>";
  26. }


Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 11:30