0
я создал две функции для шифрования и дешифрования, как этотШифрование - расшифровка, базы данных
function encryption($x) {
$key = 'SuperSecretKey';
$encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $x, MCRYPT_MODE_ECB);
return $encrypted;
}
function decryption($y) {
$key = 'SuperSecretKey';
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $y, MCRYPT_MODE_ECB);
return $decrypted;
}
я вставил зашифрованный пароль в databbase его работает нормально, когда я получить пароль из базы данных я получить зашифрованный пароль, как это
$dpass = "select Password from persons where Email='" . $_POST['name'] . "'";
$rpass = mysql_query($dpass);
$line = mysql_fetch_array($rpass);
$lpass = $line['Password'];
echo $lpass;
Но проблема в том, когда U использовать дешифрования Func
$d_pass = decryption($lpass);
echo $d_pass;
Это не дает мне тот же текст, который я использовал для пароля? Не могли бы вы рассказать мне, в чем проблема?
Записи все прописной считаются криком и грубым. –
Не храните зашифрованный пароль. Хешируйте их и храните в базе данных. –
Кроме того, WTF работает с 'mysql_query' в 2013 году? : P Проверьте [PDO] (http://php.net/manual/en/book.pdo.php) и [mysqli] (http://php.net/manual/en/book.mysqli.php). – cHao