pteixeira 0 Denunciar post Postado Março 14, 2008 Caros colegas tenho o seguinte FORM de registo q esta a utilizar o MD5 para encriptar a password if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO usuarios (usr_nome, usr_email, usr_senha, usr_dt) VALUES (%s, %s, %s, %s)", GetSQLValueString($_POST['usr_nome'], "text"), GetSQLValueString($_POST['usr_email'], "text"), GetSQLValueString(md5($_POST['usr_senha']), "text"), GetSQLValueString($_POST['usr_dt'], "date")); E tenho o seguinte codigo para o utilizador fazer o UPDATE dos seus dados nomeadamente a password. O problema é q o campo da BD (password) esta encriptado e não tem como alterar a Password. Alguem me ajude a descompilar a password para esse campo? if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) { $updateSQL = sprintf("UPDATE usuarios SET usr_nome=%s, usr_email=%s, usr_dt=%s WHERE usr_id=%s", GetSQLValueString($_POST['usr_nome'], "text"), GetSQLValueString($_POST['usr_email'], "text"), GetSQLValueString($_POST['usr_dt'], "date"), GetSQLValueString($_POST['usr_id'], "int")); Compartilhar este post Link para o post Compartilhar em outros sites
Detros 0 Denunciar post Postado Março 14, 2008 Boa noite, bom cara... a criptografia MD5 não permite volta... uma vez feita... pra sempre feita... seu sistema de senha agora tem rodar em torno disso. O fato de MD5 nao ter retorno , é o que lhe deixa seguro ;) Compartilhar este post Link para o post Compartilhar em outros sites
Furian 0 Denunciar post Postado Março 14, 2008 Caros colegas tenho o seguinte FORM de registo q esta a utilizar o MD5 para encriptar a password if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO usuarios (usr_nome, usr_email, usr_senha, usr_dt) VALUES (%s, %s, %s, %s)", GetSQLValueString($_POST['usr_nome'], "text"), GetSQLValueString($_POST['usr_email'], "text"), GetSQLValueString(md5($_POST['usr_senha']), "text"), GetSQLValueString($_POST['usr_dt'], "date")); E tenho o seguinte codigo para o utilizador fazer o UPDATE dos seus dados nomeadamente a password. O problema é q o campo da BD (password) esta encriptado e não tem como alterar a Password. Alguem me ajude a descompilar a password para esse campo? if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) { $updateSQL = sprintf("UPDATE usuarios SET usr_nome=%s, usr_email=%s, usr_dt=%s WHERE usr_id=%s", GetSQLValueString($_POST['usr_nome'], "text"), GetSQLValueString($_POST['usr_email'], "text"), GetSQLValueString($_POST['usr_dt'], "date"), GetSQLValueString($_POST['usr_id'], "int")); Você quer modificar uma senha cadastrada? Tipo foi criado um cadastro por alguém e você quer fazer um update dessas informações, mas não consegue alterar o campo senha pois está criptografado, é isso? Compartilhar este post Link para o post Compartilhar em outros sites
pteixeira 0 Denunciar post Postado Março 15, 2008 Você quer modificar uma senha cadastrada? Tipo foi criado um cadastro por alguém e você quer fazer um update dessas informações, mas não consegue alterar o campo senha pois está criptografado, é isso? Sim FURIAN é isso mesmo é uma área de administração em que o UTILIZADOR pode alterar os seus dados incluindo a sua senha. Que por sua vez foi encriptada com o MD5 Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Março 15, 2008 você pode trocar a senha,mas alterar o efeito do md5 eh impossivel, se observar tem sistemas q apenas trocam e nao alteram... Compartilhar este post Link para o post Compartilhar em outros sites
pteixeira 0 Denunciar post Postado Março 15, 2008 Desculpa IGOR mas penso q não explicas-te bem. Como irias alterar a Password???? Imagina um form q posta os dados da BD e tem um botão de UPDATE dos dados. Como a password esta em MD5 sempre que abre o FORM o q ele posta no campo PASSWORD são códigos . o QUE EU QUERIA era que no form ele descodificasse o campo MD5 com a verdadeira PASSWORD em vez do MD5, logo q se clicasse no UPDATE ele alterava a PASSWORD e voltava a codificar a PASS em MD5 Compartilhar este post Link para o post Compartilhar em outros sites
klawdyo 0 Denunciar post Postado Março 15, 2008 Cara, faça 3 campos no seu html. 1- Senha atual 2- Nova senha 3- Repita a nova senha Quando o cara enviar esse formulário, você encripta com MD5 o campo 'senha_atual' e verifica se ela é igual ao valor que você tem cadastrado no seu mysql. Se for igual, tu verifica se o campo 'nova_senha' e 'repita a nova senha' são iguais. Se forem iguais, vocÊ dá um update na tabela e altera o valor da senha gravada para md5(nova senha). Se ligou? Você não vai desfazer a criptografia pra comparar a senha. Você vai criptografar a nova senha e verificar se tá igual ao valor antigo. Muito simples. Não tô entendendo porque você tá dizendo que não pode fazer. Compartilhar este post Link para o post Compartilhar em outros sites
rev087 0 Denunciar post Postado Março 16, 2008 Cara, faça 3 campos no seu html. 1- Senha atual 2- Nova senha 3- Repita a nova senha Quando o cara enviar esse formulário, você encripta com MD5 o campo 'senha_atual' e verifica se ela é igual ao valor que você tem cadastrado no seu mysql. Se for igual, tu verifica se o campo 'nova_senha' e 'repita a nova senha' são iguais. Se forem iguais, vocÊ dá um update na tabela e altera o valor da senha gravada para md5(nova senha). Se ligou? Você não vai desfazer a criptografia pra comparar a senha. Você vai criptografar a nova senha e verificar se tá igual ao valor antigo. Muito simples. Não tô entendendo porque você tá dizendo que não pode fazer. O problema não é mudar a senha, mas se o usuário esqueceu a senha hehe. Com MD5 só há uma solução: criar uma nova senha aleatória e enviar por e-mail ao usuário. Compartilhar este post Link para o post Compartilhar em outros sites
klawdyo 0 Denunciar post Postado Março 16, 2008 Ah, você queria informar ao usuário qual a senha, caso ele esquecesse.. tô ligado.. É, sendo assim, a única solução é essa mesmo, enviar pro usuário uma nova senha temporária, ou informá-lo qual a pergunta secreta que ele havia cadastrado e ele daria a resposta, aí você permitiria que ele alterasse a senha.. Se bem que o md5 já deve ter sido quebrado. Com certeza. Só não sei se esse código estaria disponível na net. Eu tomara que não, pelo bem dos nossos sistemas. Compartilhar este post Link para o post Compartilhar em outros sites
brcontainer 16 Denunciar post Postado Março 19, 2008 basta comparar os valores, assim: if(md5($_POST['usr_senha_antiga'])==$_senha_da_DB_com_MD5) e vai verificar o do BD e com oa verficacão e poderar adicionar a nova ;) Compartilhar este post Link para o post Compartilhar em outros sites