Jaucējfunkcijas (Hash funkcijas)

Datubāzēs nekad neglabā paroles atklātā tekstā. Vispirms vajadzētu atrast un izmēģināt md5 funkciju. Interneta vietnē – https://www.md5online.org/ var pārbaudīt vai var atšifrēt uzstādīto paroli.

212631b80d2d1153eba86248e06d0ced šo te iekopē un pārbauda. Tātad parole “Roberts” ir šādā veidā šifrēta izmantojot md5. Pārbaudot md5online.org var redzēt, ka šo vienkāršo paroli atpazīst! Šis viss attiecas uz pirmajām 3 rindiņām kodā.

Tālāk jāatrod drošāks veids kā šifrēt. Funkcija password_hash ir ļoti laba šādam mērķim. Izmantojot šo metodi, var redzēt, ka tagad parole “Roberts” ir droši nošifrēta un izskatās šādi:

$2y$10$UCzeYEqQZEP4LKXNKoXrReZrKoKvcvPYseKfho6hoIoSH8WiWdjEO

Paroli, kas ir atklātā tekstā “Roberts”, jāsalīdzina ar šifrēto. Vai tās sakrīt? To dara izmantojot password_verify funkciju. Šajai funkcijai kā pirmo parametru norāda atklātā teksta parole un otro parametru norāda šifrēto. Šo funkciju jāizmanto IF nosacījumā.

<?php
$password = 'Roberts';
//$hashedPass = md5($password);
//echo $hashedPass;

$theGoodHashedPassword = password_hash($password, PASSWORD_DEFAULT);
//echo $theGoodHashedPassword;

if(password_verify($password, $theGoodHashedPassword)){
	echo "Parole sakrīt!";
} else {
	echo "Parole nesakrīt!";
}