Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Sal PHP e hash SHA256 para senha de login


Esses exemplos são do php.net. Graças a você, também acabei de aprender sobre as novas funções de hash do php.

Leia a documentação do php para descobrir as possibilidades e práticas recomendadas:http ://www.php.net/manual/en/function.password-hash.php

Salvar um hash de senha:
$options = [
    'cost' => 11,
];
// Get the password from post
$passwordFromPost = $_POST['password'];

$hash = password_hash($passwordFromPost, PASSWORD_BCRYPT, $options);

// Now insert it (with login or whatever) into your database, use mysqli or pdo!

Obter o hash da senha:
// Get the password from the database and compare it to a variable (for example post)
$passwordFromPost = $_POST['password'];
$hashedPasswordFromDB = ...;

if (password_verify($passwordFromPost, $hashedPasswordFromDB)) {
    echo 'Password is valid!';
} else {
    echo 'Invalid password.';
}