1. As senhas hash usam principalmente algoritmos de dispersão unidirecional para criar dispersão de senha.
No banco de dados do modo de criptografia de senha, a coluna que armazena o resultado pode exceder 60 caracteres e o comprimento do varchar precisa ser definido como 255.
<?php //Função de criptografia generatePassword($password) { retornar senha_hash($senha, SENHA_DEFAULT); } //Função de verificação verifyPassword($password, $hashPassword) { return password_verify($senha, $hashPassword); } //Resultado da criptografia: $2y$10$.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a
2. A senha md5 é uma criptografia assimétrica. É uma boa ideia adicionar strings ofuscadas ao criptografar.
Este deve ser o método de criptografia de senha mais comum.
Na verdade, esse método criptográfico é muito seguro, pois colisões de hash podem levar a vulnerabilidades.
<?php //Função de criptografia md5_password($password, $hash = 'autofelix_') { retornar md5($hash. $senha); } //Verifica $userinfo = /** Consulta informações do usuário **/; if ($userinfo['senha'] !== md5_password($senha)) { /** Lógica de erro de senha **/ } /** A senha está correta, continue com a lógica **/
Os itens acima são dois métodos para gerar senhas de usuários em php. Espero que sejam úteis para todos.