Как зашифровать с помощью SHA256 и соли?

До: я извиняюсь за мой английский.

Хорошо, сейчас я использую следующий метод шифрования:

SHA256_PassHash (inputtext, «78sdjs86d2h», MyHash, sizeof (MyHash));

SHA256 со солью: «78sdjs86d2h

Прямо сейчас я проверяю пароль следующим образом:

if(isset($_POST['username']) && isset($_POST['password'])){
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);

$check = get_row("SELECT playerID FROM playeraccounts WHERE playerName='$username' && playerPassword='$password'");
if(isset($check['playerID']))
{
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
mysql_query("UPDATE playeraccounts SET rpgon=1 WHERE playerName='$username'");
$id = $check['playerID'];
header("location: index.php");
}
else
{
$err = 'Username sau parola incorecte';
}
}

Как я могу заставить его работать с этим методом соли? Пожалуйста, я не очень разбираюсь в PHP … может кто-нибудь рассказать мне о том, как зашифровать входной текст?

1

Решение

Не используйте SHA256 (который для дальнейшего использования это хеш-функция, а не метод шифрования) для хранения паролей. Ссылаться на Как безопасно хранить пароли ваших пользователей для современной передовой практики.

Поскольку вы спрашиваете о PHP, вы хотите использовать password_hash() а также password_verify().

Также, остерегайтесь случаев внедрения SQL-кода.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]