Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [md5] plz help
dziama
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Wawa

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


Witam wszystkich,
mam taka dziwna akcje
rejestracja użytkownika poprzez formularz wpisuje do bazy danych hasło zakodowane md5 jako :xxxxxxxx
z kolei logowanie użytkownika wprowadzone hasło koduje przez md5 jako: yyyyyyyy.

czy ktoś może mi powiedzieć co jest nie tak?
z góry dzięki
Go to the top of the page
+Quote Post
itsme
post
Post #2





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




ale powiedz jaki jest problem (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
co sie dzieje nie tak (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
uboottd
post
Post #3





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

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


A jestes pewien ze przekazujesz zawsze te same stringi ? Wez wloz sobie gdzies echo $moja_zmienna_z_haslem i zobacz czy na pewno nie ma roznic.
Go to the top of the page
+Quote Post
dziama
post
Post #4





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Wawa

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


dodawanie usera:
jest tak:
*formularz z <input type=password name=pass>
//kodowanie
$passcode=md5($pass);
no i z echo $zapytanie mam w miejscu hasła xxxxxx

*formularz logowania
<input type=password name=pass>
i robie kodowanie-
$pwd=md5($pass);
i porównianie
if($passcheck[0] == $pwd)
i echo $pwd; - co daje yyyyy
Go to the top of the page
+Quote Post
maggot
post
Post #5





Grupa: Zarejestrowani
Postów: 77
Pomógł: 0
Dołączył: 7.05.2002
Skąd: Sz-n/Wroc/Wawa

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


a to czytales ?
http://forum.php.pl/viewtopic.php?t=789
Go to the top of the page
+Quote Post
dziama
post
Post #6





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Wawa

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


ale mi tu nie chodzi o przekazywanie zmiennych, tylko o to dlaczego dzieje sie tak ze md5 koduje raz wartosc do xxxx a innym razem ta sama wartosc to yyyy i jak mam zapobiec czemus takiemu.
A moze ktos poda mi jakis prosty sposob zakodowania hasla i potem sprawdzenia jego poprzez kodowanie/dekodowanie.
Probowalem przez mhash ale to cos nie dziala.
Dzieki za pomoc
Go to the top of the page
+Quote Post
DeyV
post
Post #7





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




md5 jest w 100% skutecznym, bardzo bezpiecznym i najpopularniejszym rozwiazaniem.
Stąd nie dziw sie ogólniemu przekonaniu, że bład tkwi w Twoim skrypcie.
Go to the top of the page
+Quote Post
Jabol
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

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


a może wprowadzasz hasła w innym kodowaniu??
Go to the top of the page
+Quote Post
scanner
post
Post #9





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




[php:1:0adabe00ed]<?php
//zmienna A
$passcode=md5($pass);
//zmienna B
$pwd=md5($pass);
// a skad sie wziął $passcheck (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
if($passcheck[0] == $pwd)
?>[/php:1:0adabe00ed]

Wklej dokładnie kody a nie jakieś fiubzdziu za przeproszeniem, ok?
Go to the top of the page
+Quote Post
dziama
post
Post #10





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Wawa

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


formularz logowania:
----------------------------
<?php
echo " TUTAJ FORMULARZ Z LOGIN I PASS";

if($akcja==zaloguj){
$pwd=md5($pass);

echo $pwd; -wyświetla xxxxxxx
include ("conn.php");
$logowanie = " SELECT pass FROM pmx_users WHERE login='$loginame'";
$wynik_log = mysql_query($logowanie);
$znaleziono = mysql_num_rows($wynik_log);
if ($znaleziono==0)
{
echo "Użytkownik o podanej nazwie nie istnieje.Jeżeli chcesz się zarejestrować, kliknij <a HREF=rejestracja.php>tutaj</A>";
} else {
$passcheck = mysql_fetch_array($wynik_log);
if($passcheck[0] == $pwd)
{
session_register("loginame");
session_register("passcheck");
echo "<meta http-equiv='refresh' content='0; url=main.php'>";
}else {
echo "Podałeś nieprawidłowe hasło, spróbuj ponownie lub skorzystaj z przesłania hałsa na adres e-mail."; }
}
}

}


?>

dodawanie użytkownika:
<?
echo "TU FORMULARZ Z IMIE, NAZWISKO, LOGIN I PASSWORD";

$passcode=md5($pass);
include("conn.php");
//zapytanko do wstawienia usera
$adduser = " INSERT INTO pmx_users (`id_usera`, `imie`, `nazwisko`, `pesel`, `telefon`, `gsm`, `email`, `login`, `pass`) VALUES ('', '".$imie."', '".$nazwisko."', '".$pesel."', '".$telefon."', '".$gsm."', '".$email.", '".$login."', '".$passcode."')";
$useradded = mysql_query($adduser);

echo $adduser; - zwraca m.in jako $passcode yyyy

?>

Mam nadzieje, że teraz jest juz w miare jasne jak to wygląda.
Go to the top of the page
+Quote Post
scanner
post
Post #11





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Jasne by było, gdybyś zastosował się do tego punktu regulaminu
Tak sobie myślę i zastanawiam się skąd bierzesz zmienne:
$passcode=md5($pass); bo na moje oko, to nejlepiej byś wyszedl na tym, jakbyś wyciągał je z $_POST.

Zacznij od tego, że sprawdź czy w nazwach pól w formularzy nie masz literówek.

Podczas rejestracji:
Zrób echo $pass.' => '.$pascode.'>br>';
Zapisz dwynik na kartce i ten sam kodzik wstaw przy logowaniu.
Jelsi tylko $pass jest te samo, to MD%($pass) musi być IDENTYCZNE.
Pamiętaj, że nawet dodatkowa spacja w haśle powoduje zmienę md5().
Go to the top of the page
+Quote Post
dziama
post
Post #12





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Wawa

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


dzięki ale własnie sam sobie poradziłem, troche kombinowania i znalazł sie błąd aczkolwiek nie wiem jak go wytłumaczyć no ale
Go to the top of the page
+Quote Post
kain
post
Post #13





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.04.2003

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


wiem ze to temat na off-topic ale ... tu jest poruszony ten problem przynjamie czesciowo .

Czy mogl by ktos mi powiedziec dzie znajde model matematyczny dm5 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? ale prosilbym o polski text bo z angielskigo nie jestem az tak dobry zeby zrozumiec belkot matematyczny (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
dragossani
post
Post #14





Grupa: Przyjaciele php.pl
Postów: 398
Pomógł: 0
Dołączył: --
Skąd: Poznań

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


W tej pracy jest fragment na temat MD5. Warto się jednak pomęczyć i przebrnąć przez oficjalną specyfikację jeśli rzeczywiście Cię to interesuje.
Go to the top of the page
+Quote Post
kain
post
Post #15





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.04.2003

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


Dzieki
Masz racie przebrnalem przez specyfikacje (3h- z pomoca qmpla z angli (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ) i jush wszytko wiem. Chodzilo mi wlasciwie o sam algorytm decryptujacy ale ... to tam bylo a po zatym przydatny bzdecik taki texcik jest do czego zajzec w razie glopiej wpadki na informatyce 8)
Go to the top of the page
+Quote Post
LuckyStrike
post
Post #16





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 4.05.2003
Skąd: wawa

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


oczywiście że md5 dobrze działa. Powiem więcej: twoj kod działa też dobrze, tylko ty tego nie widzisz (nie widziałeś) bo masz taki bajerek:
echo "<meta http-equiv='refresh' content='0; url=main.php'>";
czyli twoje echo jest pokazane przez chwilke i po (refresh=0) twoje zmienne maja juz inne wartości, a właściwie sa puste. Dlatego zamiast zaszyfrowanego hasła dostajesz coś takiego "d41d8cd98f00b204e9800998ecf8427e" czyli zaszyfrowany pusty ciąg.
Pozdrawiam!
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 - 17:52