【发布时间】:2015-05-24 13:11:45
【问题描述】:
我制作了一个登录屏幕,想检查客户端输入的密码以及服务器数据库中的密码。如果它们的 HashCode 匹配,则接受密码。但是,我在客户端屏幕上写入密码时得到的 HashCode 与服务器端接收到的字符串(密码)的 HashCode 不同。
有人知道为什么吗?提前感谢您的任何见解。
【问题讨论】:
-
你误会了。您不应该为此使用
hashCode(),您应该使用安全哈希,并且您应该让数据库进行哈希和比较。 -
如果两个(开箱即用)对象相等,则它们的哈希码也将相等。因此,如果您看到不相等的哈希码,则关联的字符串也不相等。如果没有看到一些代码,就无法说出你是如何走到这一步的。无论如何,正如@EJP 所提到的,您不应该以这种方式测试密码。
-
服务器接收到的字符串是否与客户端发送的相同?
标签: java hashmap passwords client-server hashcode