同样的密码和salt经过SHA1加密算法结果和数据库的不一样的问题

qq_41255722 2019-06-15 10:17:13
@RequestMapping(value="checkPsd",method=RequestMethod.GET)
public @ResponseBody String checkPsd(String password){
User user=this.userService.findByLoginName(getCurUser().loginName);
byte[] salt = user.getSalt().getBytes();
byte[] hashPassword = Digests.sha1(password.getBytes(), salt, 1024);
String psdCheck = Encodes.encodeHex(hashPassword);
if(user.getPassword()==psdCheck){
return user.getSalt();
}
return psdCheck+"+"+password+"+"+user.getSalt()+"+"+user.getPassword();

}


这是测试时的代码,password是一样的,salt是从数据库取出来的,同样都是经过1024次哈希运算,请问为什么psdCheck和user.getPassword()的值也就是加密后的值会不一样
...全文
148 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧