Como comparar hash em Java?

6 respostas Resolvido
spring-bootjava
D

A 3 dias estou tentando comparar o hash do banco de dados com o que vem do formulário de login, mas sem sucesso.

Estou usando a biblioteca de.mkammerer, porém a função verify está como @Deprecated, com isso não estou conseguindo comparar os dois hash.

Ficarei grato se puderem me ajudar.

Obrigado.

6 Respostas

RoinujNosde
Solucao aceita

verify(dbHash, formPassword.toCharArray())

D

Sério mano rsrs… sempre quebro a cabeça e acaba sendo algo simples… se bem que dessa vez eu não fazia ideia dessa solução.

Enfim, vou testar e dou o feedback aqui… muito obrigado!

RoinujNosde

https://javadoc.io/doc/de.mkammerer/argon2-jvm/2.6/de/mkammerer/argon2/Argon2.html#verify(java.lang.String,java.lang.String)
É o que a documentação recomenda.
O deprecated deveria funcionar igual, ele só vai ser removido.

D

Até li essa documentação mas não entendi nada.

Não entendi o que muda de um verify para o outro, só que dois deles tem três parâmetros. Como o compiler sabe quando é um verify ou outro.

Quando eu fizer formPassword.toCharArray() ele deve parar de mostrar que é @Deprecated ?

Na próxima versão vai haver outra forma de comparar hash’s ?

Desculpa, são muitas dúvidas

RoinujNosde

Pela quantidade e tipo dos parâmetros.

Para o método que você estava usando, é a forma que passei.

São basicamente o mesmo método, o de 3 parâmetros pede o Charset, se não passar ele usa UTF-8.

D

Cara, que bacana, acho que entendi, vou fazer alguns testes.

Valeu demais!

Criado 20 de abril de 2021
Ultima resposta 20 de abr. de 2021
Respostas 6
Participantes 2