![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 169 Pomógł: 2 Dołączył: 6.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mój problem jest związany z md5 - szyfrowaniem jedno kierunkowym. Mam 3 pliki:
login.php - służy do logowania, odczytuje HASH z bazy i porównuje go z wpisanym hasłem record.php - służy do zapisywania, zapisuje HASH do bazy remind_pass.php - do przywracanie hasła, zapisuje nowy HASH do bazy Login i record współpracują ze sobą bez żadnych problemów. Natomiast remind_pass generuje wogule inny HASH niż record dla tych samych wartości. Nie wiem czym jest to spowodowane.
Ten post edytował Earth 28.01.2007, 10:57:36 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 0 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Login i record współpracują ze sobą bez żadnych problemów. Natomiast remind_pass generuje wogule inny HASH niż record dla tych samych wartości. Nie wiem czym jest to spowodowane. Co w tym dziwnego? Tak ma być. Jeśli user zapomniał hasła to generowane jest nowe, haszowane i zapisywane do bazy. Jak sam napisałeś md5 jest 'jednokierunkowe' więc starego hasła w jawnej postaci nie można odzyskać dlatego tworzone jest nowe i wysyłane userowi na maila. Poza tym pisze się - w ogóle. -------------------- Załóż konto na dropbox.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 169 Pomógł: 2 Dołączył: 6.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
No i jest problem w tym, że dla takich samych wartości w tych 2 plikach, HASH jest inny. Przynajmniej record współpracuje z login mają takie same HASH, a remin_pass już generuje inne HASH'a.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
DRY -- Dont repeat yourself -- czyli musisz miec jedna funkcje generujaca hashe -- unikniesz takich bledow. I sprawdz jeszcze czy z dokladnie tej samej wartosci generujesz hashe.
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 28.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
spróbuj zmienić w remind_pass.php
na echo "Twoje nowe hasło: <BR> ".strval($password)." <BR> Postaraj się jak najszybciej zmienić hasło!!!" ; byc moze php źle wyświetla tak dużą liczbe wygenerowana przez mt_rand;] |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 169 Pomógł: 2 Dołączył: 6.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Po wpisaniu ".strval($password)." udało się.
// Tak po za tematem nie wiem dlaczego, ale jak wsadzę funkcje do innego pliku. To szyfrowanie już nie działa. Do bazy zapisuje dane nie zaszyfrowane. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 04:40 |