【问题标题】:Sending password from client app to server - JAVA将密码从客户端应用程序发送到服务器 - JAVA
【发布时间】:2018-09-16 05:54:33
【问题描述】:
我正在开发一个需要用户登录的应用程序。在服务器端,我使用 PBKDF2 算法对密码进行哈希处理,但目前我正在将密码作为纯文本 - 字符串发送到服务器。而且我不知道如何改变它。现在它很容易嗅到。
我应该怎么做才能使它更安全?
【问题讨论】:
标签:
java
security
passwords
client
client-server
【解决方案1】:
我遇到了同样的问题,下面是我的解决方法
客户端对密码 (SHA3-512) 进行哈希处理并将其发送到服务器,服务器获取此密码并使用随机更改盐函数再次对其进行哈希处理,所有连接均通过 SSL 和 POST 方法完成
用户输入1234 -> 客户端发送hduhd73y743fhiuj4u -> 服务器存储在数据库37y487f.f4u4uj4o3i5885(不是实际值)
通过这种方法,服务器永远不会知道实际密码,因此中间人将无法获得这个实际密码,请记住,它不会阻止中间人模仿这个散列密码和将其发送到服务器以作为用户登录