Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite galera.
Estou com um problema aqui que é o seguinte:
Hospedei um sistema com banco mysql na locaweb mas não estou conseguindo que o usuário faça login. Após alguns testes, debugs e pesquisas no google constatei que o problema é na classe Bcrypt.
A classe pode ser encontrada no blog do Thiago Belem.
http://blog.thiagobelem.net/criptografando-senhas-no-php-usando-bcrypt-blowfish/
Nesse mesmo post, se vcs olharem os comentários, é citado o problema pelo Rafael Peregrino.
Pelo que entendi do problema é que a classe não consegue comparar o hash cadastrado no banco com o hash da senha digitada pelo usuário. Tem algo haver com o método crypt ( do próprio php ) e versão do php.
Alguém já passou por isso ou sabe como resolver esse problema?
obrigado desde já.
Alguém que trabalhe com locaweb?
Opa William.
Fiz algumas pesquisas e encontrei esse link que ajuda a alterar a versão do php na locaweb (com o mesmo problema):
http://wiki.locaweb.com.br/pt-br/Como_alterar_a_vers%C3%A3o_do_PHP
Só a título de curiosidade, coloquei alguns echo na classe e ela me retornou o seguinte:
Input no Bcrypt: 123
Input para verificar no Bcrypt: $2Cw51.ICu1Nw
Hash no Bcrypt (o que está no banco): $2a$08$NDI2NzA1NzU0NTIyMTJlMeJ4/rhYZ7pNhsN14txEbgt2wXKos0vz2
Ou seja, algo não está permitindo verificar o input com a senha criptografada do banco, o que pode ser o que você mencionou. Vou verificar isso e posto os resultados.
Olá galera. O problema era mesmo a versão do php no servidor. Ao que parece o resultado do método crypt dá resultados diferentes da versão 5.2 para a versão 5.3.
Valeu William Bruno pela ajuda.
oi @Marcos Cardoso,
Já tentou ativar a versão 5.3 do php, lá na LW ?
Se existe diferença do hash gerado em 32 e 64 bits, gere todos os hashs já na hospedagem. Ai sim vai conseguir comparar. Uma idéia é vc fazer uma rotina para atualizar seu banco gerando novamente os hashs já na hospedagem.