我有两个相同的md5哈希密码,并应使用MessageDigest.isEqual方法返回true。但是,比较返回错误。比较两个消解的md5字符串返回false
使用Array.toString打印字节数组时,它们是相同的。它仍然不起作用,无论是Arrays.euqals还是MessageDigest.isEqual。
public boolean verifyUserCredentials(String username, MessageDigest password) {
ListIterator<User> iterator = userList.listIterator();
while (iterator.hasNext()) {
User user = iterator.next();
byte md1[] = user.getPassword().digest();
byte md2[] = password.digest();
if (user.getUsername() == username && MessageDigest.isEqual(md1, md2)) {
return true;
}
}
return false;
}
我不认为你的问题与比较md5s有任何关系。这是你笨拙的用户名。 – 2013-05-08 23:55:45
我一直在做这么多次相同的错误。感谢您的意见。 – mgerstner 2013-05-09 06:31:39