【发布时间】:2019-09-27 03:41:45
【问题描述】:
我将此代码与 Spring 密码加密一起使用,以便比较密码和确认密码:
if(!passwordEncoder.encode(resetDTO.getPassword()).equals(passwordEncoder.encode(resetDTO.getConfirmPassword()))){
....
}
但当我发送正确的值时,它们总是不匹配。比较散列值的正确方法是什么?
【问题讨论】:
-
你的
equals方法错误,或者encode错误,或者getPassword或者getConfirmPassword或者输入数据错误。 -
@luk2302 比较哈希的正确方法是什么?
-
哈希是字符串,所以
string1.equals(string2). -
当您可以访问两个原始值时,为什么要首先比较哈希值?仅当哈希是您拥有的唯一信息时,您才需要与哈希进行比较。 (就像你从数据库中获取/比较它一样。)
标签: java spring-security