Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cristi@ano

[Resolvido] MD5 no mysql manualmente

Recommended Posts

Olá

Criei a seguinte tabela: nome (varchar 20), usuario (varchar 20), senha (varchar 20)

Inseri manualmente um registro pelo phpmyadmin, onde no campo senha especifico no menu FUNÇÃO a opção MD5

 

No Dreamweaver criei um "Log in User" especificando na variável password o MD5

 

if (isset($_POST['usuario'])) {
  $loginUsername=$_POST['usuario'];
  $password=md5($_POST['senha']);

Mas só consigo logar quando retiro o md5 do form de login e tb tiro o md5 da tabela do bd. Quando insiro um registro com md5 na tabela do bd aparece a seguinte menssagem:

 

Warning: #1265 Dado truncado para coluna 'senha' na linha 1

 

Mas se não usar nenhuma opção minha senha ficará exposta no BD, eu não quero isso. Alguem por favor pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cristi@no,

 

o MD5 são 32 caracteres e não 20, coloque o campo no banco para suportar 32.

 

Outra coisa, não utiliza apenas md5 para segurança da senha, utiliza também salt.

 

ous seja, faça mais ou menos assim:

 

$senha = md5($campoSenha).'!minhastring854%';

ou seja, concatene o hash com mais alguma string. Não esqueça de fazer o mesmo processo para comparação.

 

Crie um salt com letras, números e caracteres especias. Motivo: se o usuário criar uma senha '123456', na verdade a senha dele no banco será 123456!minhastring854%, sendo assim muito mais dificil de descobrir a senha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado pela ajuda Tanem, era isso que faltava.

Grande abraço!!

 

Cristi@no,

 

o MD5 são 32 caracteres e não 20, coloque o campo no banco para suportar 32.

 

Outra coisa, não utiliza apenas md5 para segurança da senha, utiliza também salt.

 

ous seja, faça mais ou menos assim:

 

$senha = md5($campoSenha).'!minhastring854%';

ou seja, concatene o hash com mais alguma string. Não esqueça de fazer o mesmo processo para comparação.

 

Crie um salt com letras, números e caracteres especias. Motivo: se o usuário criar uma senha '123456', na verdade a senha dele no banco será 123456!minhastring854%, sendo assim muito mais dificil de descobrir a senha.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.