• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

greyback

Desincriptar password de base de dados mysql

14 mensagens neste tópico

$original=mysql_query("select password('clipass') from clientes where cliuser='$user'",$lig);

$lin=mysql_fetch_row($original);

$original=$lin[0];

      echo $original;

Boas! Eu tenho uma base de dados de clientes com a password encriptada, e gostaria de fazer um menu, em que fosse possível alterar a password, com o UPDATE...

mas agora imprimo a password ( está encripatada) para a comparar com a password original que o user insira como metodo de validação, e nao consigo comparar...

e gostaria de saber como faço em codigo PHP para desincriptar e comparar com a original, que dps da validação de comparação, usaria o UPDATE para a actualização da base de dados...

podem-me ajudaR?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não precisas de desencriptar, basta encriptar a inserida e compará-la com a que está na BD.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

$nova1=password('nova');

e como encripto?

sem inserir?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Da mesma maneira que encriptaste quando inseriste?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

greyback não faço a minima ideia de qual sistema usaste (ou usaram) para encriptar a password, pas penso ser a mais comum, o MD5, para comparar usa md5('apassword').

Boa sorte

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Da mesma maneira que encriptaste quando inseriste?

eu para encriptar, usei $str="insert into clientes (cliuser,clipass,climorada,clitele,clinome,climail,clidataadmi) values ('$login' ,password('$pass'),'$morada' ,'$telef','$nome','$mail','$d')";

tao simples quanto isso

password('$pass')

logo se nao quero inserir como faço para encriptar sem inserir na base de dados?

greyback não faço a minima ideia de qual sistema usaste (ou usaram) para encriptar a password, pas penso ser a mais comum, o MD5, para comparar usa md5('apassword').

Boa sorte

nao percebi muito bem como usar :x

md5('pass','pass1') ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aí tens a tua resposta :thumbsup:

mas não dá :s

isso foi o que já fiz e nao deu :D :s

$nova1=password('nova');

ponho isto e dá o seguinte erro:

Fatal error: Call to undefined function password() in C:\Programas\wamp\www\ClubeVideo\HTML\alterarpass.php on line 13

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui tens uma função que fiz num instante para te mostrar como comparar duas strings que podem ser passwords:

<?php
$texto_1 = md5("password1"); //encripta o primeiro valor (inserir query DB)
$texto_2 = md5("password1"); //encripta o segundo valor
$resultado = strcmp ($texto_1, $texto_2);
$texto = ($resultado == TRUE)?"As passwords não são iguais.":"As passwords são iguais.";
echo "<center><h1>".$texto."</h1></center>";
?>

Na password 1 basta pores uma variavel que va buscar os dados à BD. :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui tens uma função que fiz num instante para te mostrar como comparar duas strings que podem ser passwords:

<?php
$texto_1 = md5("password1"); //encripta o primeiro valor (inserir query DB)
$texto_2 = md5("password1"); //encripta o segundo valor
$resultado = strcmp ($texto_1, $texto_2);
$texto = ($resultado == TRUE)?"As passwords não são iguais.":"As passwords são iguais.";
echo "<center><h1>".$texto."</h1></center>";
?>

Na password 1 basta pores uma variavel que va buscar os dados à BD. :thumbsup:

*2105116A108E03930F47CFD5A5555F37530FB30D

b148e7f41fdc3be4b14e8d17e068bbad

a primeira é a forma que ta na base de dados :S

a segunda é a forma q me disseste :S

não da :s

nao deve ser a emsma forma de encriptação, porque a pass é a mesma e nao coincidem :S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

greyback, se a password já está encriptada, não vais encriptar outra vez. E tenta ver se a encriptação é sha1 (é o mesmo processo).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

greyback, se a password já está encriptada, não vais encriptar outra vez. E tenta ver se a encriptação é sha1 (é o mesmo processo).

tambem nao xD

tou a tentar de outra forma :s

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

*2105116A108E03930F47CFD5A5555F37530FB30D

b148e7f41fdc3be4b14e8d17e068bbad

a primeira é a forma que ta na base de dados :S

a segunda é a forma q me disseste :S

não da :s

nao deve ser a emsma forma de encriptação, porque a pass é a mesma e nao coincidem :S

Greyback, tu sabes a password que esta na base de dados? Só se souberes e puseres na função para criar a hash (md5("apasswordqueforaqui")) é que as passwords vão ser iguais! -.-

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Porque estão a complicar? A forma para ele gerar o hash da password já existe, e pertence ao MySQL. Só vi isso agora.

Para obteres o hash para comparação, executa o seguinte:

   $q_res=mysql_query("select password('novapass')",$lig);
  $lin=mysql_fetch_row($q_res);
  echo $lin[0];

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora