salam. belə problemim var. deməli sayt veriblər, indi admin parolu dəyişmək lazımdı. paneldə elə funksiya yoxdu. gərək parolu özüm şifrələyim phpmyadmin-də qeyd edib login edə bilim admin kimi. ama bilmirəm nə ilə şifrələnib md5-di ya md5-i sha384 ilə yenidən şifrələyr bilmirəm nədi. xahiş edirəm kimsə kömək etsin. php kod;
public function generatePasswordHash($pwd, $salt='') { $random_salt = md5(self::generatePassword([ 'set' => 'extended_cs', 'min_length' => 12, 'max_length' => 16 ])); $hash = hash_hmac('sha256', md5($pwd), $random_salt.$salt); /*if (!is_string($hash) || (strlen($hash)<32)) { return md5(md5($pwd).$random_salt.$salt); }*/ return $hash.$random_salt; } public function validatePassword($hash, $pwd, $salt='') { $random_salt = substr($hash, 64, 32); if (!$random_salt || (strlen($hash)<96)) {return false;} $input_hash = hash_hmac('sha256', md5($pwd), $random_salt.$salt); // print substr($hash, 0, 64)." == {$input_hash} = hash_hmac('sha256', ".md5($pwd).", {$random_salt}.{$salt});"; return ($input_hash==substr($hash, 0, 64)); }
Verilmiş cavablar və yazılan şərhlər (1 cavab var)
1
Birinci funksiya ile yeni şifre yarada bilersiniz. Burda elave heç ne lazım deyil.
Meselen: echo generatePasswordHash(“yeni_sıfre”);
Ekrana çap olun kodları bazadakı köhne şifre yerindeki ile deyişin.
Sual verin
Cavab verin