Lekcja 10 - funkcja SHA2 kasuje hasło

Forum przeznaczone dla MySql - bazy danych.
seeker
Początkujący
Początkujący
Posty: 10
Dołączył(a): piątek, 4 kwietnia 2014, 12:10

Lekcja 10 - funkcja SHA2 kasuje hasło

Post przez seeker »

Z ciekawym problemem spotkałem się podczas próby hashowanie haseł z sha512. Moja funkcja nie działa tak jak powinna, ale usuwa wszystkie hasła z tabeli. Po kolei wygląda to następująco. Mam sobie następującą, przykładową tabelkę o nazwie klienci_z_sha512:
Obrazek

Wykonuję następujący kod:

Code: Zaznacz cały

   $query_sha512 = " 
                        UPDATE klienci_z_sha512 SET haslo = SHA2(haslo, 512)
                        ";
                mysql_query($query_sha512) or die(mysql_error());
                 
                
                $query_select_password = " 
                        SELECT haslo FROM klienci_z_sha512
                        ";
                $result_password = mysql_query($query_select_password) or die(mysql_error());
                      
                while($row_password = mysql_fetch_assoc($result_password))
                      var_dump($row_password)."<br/>";
i w wyniku otrzymuję odpowiedź var_dump:
array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } array(1) { ["haslo"]=> string(0) "" } Query was empty

i tabelka pusta:
Obrazek

Dodam, że pole hasło jest typu varchar(128). Wie ktoś, co tutaj się stało?
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: Lekcja 10 - funkcja SHA2 kasuje hasło

Post przez Morfidon »

Hej,

Może w Twojej wersji MySQL na serwerze nie ma jeszcze funkcji SHA2?

SHA2 istnieje w MYSQL od wersji 5.5. W kodzie źródłowym dodanym do lekcji pokazuje jak to zrobić bez tej funkcji MySQL. Można skorzystać z funkcji wbudowanej w PHP tzn. funkcji hash, np. hash("sha512", $haslo");

Pozdrawiam
Post Reply