Olá,
Aqui está o algoritmo mencionado pelo professor, caso alguém queira. Vi que sugeriram a implementação na transcrição da aula mas como no momento em que escrevo ainda não foi colocado, vou colocar aqui caso alguém precise:
public class CifradorDeSenhaComMD5 implements CifradorDeSenha{
@Override
public String cifrarSenha(String senha) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(senha.getBytes());
byte[] bytes = md.digest();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < bytes.length; i++) {
sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("erro ao gerar hash da senha");
}
}
@Override
public boolean validarSenhaCifrada(String senhaCifrada, String senha) {
return senhaCifrada.equals(cifrarSenha(senha));
}