Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]logowanie z użyciem md5
kubek15
post
Post #1





Grupa: Zarejestrowani
Postów: 278
Pomógł: 3
Dołączył: 28.06.2008
Skąd: PL

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


Witam. Zrobiłem sobie logowanie na sesjach i nie wiem czy dobrze mi to wyszło z tą funkcja md5?
W pliku ustawieni mam
  1. <?php
  2. $login = "d1fc87192248ede50eb27fc2398e3606"; // login w md5
  3. $pass = "82a0756393gf6f2279c7980d4e14510d";  // haslo w md5
  4. ?>


i funkcja która to sprawdza

  1. <?php
  2. if($_POST['logowanie']){
  3.  $wys_login = md5($_POST['login']);
  4.  $wys_pass = md5($_POST['haslo']);
  5.  if($wys_login == $login && $wys_pass == $pass){
  6.    $_SESSION['user'] = $nick;
  7.  }
  8. }
  9. ?>


Dobrze to jest czy źle? Bo działa ale niewiem czy jest to coś zabezpieczone. Czy w ustawieniach mam trzymac w md5 czy normalnie?

Proszę o pomoc a nie linki do google i poradników, bo przeczytałem juz pare na ten temat. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


po 1 nie używaj MD5 ponieważ jest kiepska jednokierunkowa funkcja skrótu została złamana i jest podatna na kolizję.
http://pl.php.net/manual/pl/function.hash.php tu masz coś czym możesz to zastąpić
np.
  1. <?php
  2. echo hash( 'md256', 'skowron-line' );
  3. ?>


Cytat
if($_POST['logowanie']){
$wys_login = md5($_POST['login']);
$wys_pass = md5($_POST['haslo']);
if($wys_login == $login && $wys_pass == $pass){
$_SESSION['user'] = $nick;
}
}

Tak naprawde do niewiadomo skąd się biorą te dane
$login, $nick, $pass trzymasz to w pliku (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
pgrzelka
post
Post #3





Grupa: Zarejestrowani
Postów: 313
Pomógł: 24
Dołączył: 9.08.2008
Skąd: Kielce

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


bezpieczne nigdy nie będzie, możesz jedynie wydłużyć czas łamania zabezpieczenia (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

poszukaj w google o dodawaniu soli
zrób sobie sól statyczną na stałe przypisaną do serwisu, zapisaną w pliku, np. $salt = '%$%$d\\=/><afa12312';
hasło w bazie koduj w taki sposób sha1($_POST['pass'] . $salt);
dzięki takiemu rozwiązaniu jeśli ktoś wykradnie Twoje dane z bazy a nie będzie miał dostępu do ftp to nie odczyta zakodowanych haseł

po drugie, po co kodować nicki, utrudnia to ewentualne przeglądanie bazy
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: 3.10.2025 - 06:30