Ir para conteúdo

POWERED BY:

Arquivado

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

vitinho.vitor

[Resolvido] Codificar

Recommended Posts

Olá, tenho um sistema de login que terá no máximo uns 5 usuários. Então estou cadastrando direto no banco. Queira saber se tem como codificar a senha pq quando eu entro no BD a senha está la, se alguem invadir verá a senha e queria codificá-la. Como eu faço isso??

 

Desde já agradeço

Vitor

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então mas eu tenho que executar o MD5 quando eu coloco a senha no BD? Pq eu nao estou utilizando nenhum formulário, eu entro no BD e insiro as informações.

obrigago

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, fiz isso aí embaixo, ele gravou criptografada mas quando digito a senha que eu gravei, sem ser criptografada, ele nao aceita. O que eu faço?

envia.php :

<?php
$nome =$_POST['nome'];
$usuario =$_POST['usuario'];
$senha = md5($_POST['senha']);
$db = mysql_select_db("w18kilatemvet11");
$query = "INSERT INTO  `w18kilatemvet11`.`usuarios` (
`id` ,
`nome` ,
`usuario` ,
`senha`
)
VALUES (
NULL ,  '$nome',  '$usuario',  '$senha'
);";
mysql_query( $query );
echo "Feito! <a href='form_est.php'>Voltar!</a>";
?>

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

 

<?php
$nome=$_POST["nome"];
$senha=$_POST["senha"];
mysql_query("SELECT nome, senha FROM tabela WHERE nome='$nome' AND senha='md5($senha)'");
?>
O que isso faz?

Ao usuario enviar a senha, o script pega a senha e consulta essa senha no banco! Mas antes de consultar ele a codifica com md5, do mesmo modo que foi encriptada ao fazer o cadastro!

Compartilhar este post


Link para o post
Compartilhar em outros sites

para inserir em md5 no bd na mão eh assim:

 

INSERT INTO tabela VALUES( '', 'usuario', MD5('senha'));

 

na verificação do usuarios e senha você tem q converter em md5 a verificação.

 

$senha = md5($_POST[senha]);

 

para dai compara-las.

 

 

espero que tenha ajudado,

 

 

vlw,

Compartilhar este post


Link para o post
Compartilhar em outros sites

na hora de gravar a senha *cadastro do usuario você tem que salvar esta como hash *md5 e na hora de compara ela *login você tem que comparar tambem com o hash md5 =]

 

uma dica é da 2 md5 por exemplo .. não que isso se torne mais seguro contra ataques.. mas por exemplo se eu tive passando pelo teu banco e ve escrito "e10adc" no começo da senha ja vo sabe que provavelmente a senha é 123456 .. *de tanto testa agente acaba decorando os hash :P

 

obs: hash possui chave assimétrica, isso que dise que depois de aplicadado não ha mais como retornar o valor anterior.

 

valww

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falcão, cuidado com SQL injection na hora de passar os dados diretamente pro banco como você fez

 

$nome=$_POST["nome"];
$senha=$_POST["senha"];
mysql_query("SELECT nome, senha FROM tabela WHERE nome='$nome' AND senha='md5($senha)'");

Seria bom ter usado

 

$nome=addslashes($_POST["nome"]); //tem uma função anti_injection aqui no forum que tb é boa
$senha=$_POST["senha"];
mysql_query("SELECT nome, senha FROM tabela WHERE nome='$nome' AND senha='md5($senha)'");
,

 

pra dar uma amenizada no aviso que o Will deu , EU costumo adicionar alguma string extra no começo da string antes de aplicar o MD5 hehe. Acho que ajuda

 

Tipo:

 

$senha = md5('viva' . $_POST[senha]);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado, consegui entrar normalmente!

 

só uma curiosidade, para que serve esse 'viva' no $senha = md5('viva' . $_POST[senha]);

reforça a senha?

 

obrigado à todos

 

Vitor!

Compartilhar este post


Link para o post
Compartilhar em outros sites

não que isso se torne mais seguro contra ataques.. mas por exemplo se eu tive passando pelo teu banco e ve escrito "e10adc" no começo da senha ja vo sabe que provavelmente a senha é 123456 .. *de tanto testa agente acaba decorando os hash

é bem pouco provavel que ocorra algo assim mas como eu disse antes.. o negocio é diminui as probabilidades por menores que sejam :P

 

valww

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi! Obrigado, resolvido, pra num abrir outro tópico, alguem sabe como eu faço aquele negocio que destrói a session depois de algum tempo sem usar? Obrigado

 

Vcs são 100000+ muito obrigado pela ajuda!!

 

At+

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.