在GWT应用程序中,我正在构建一个登录系统。
我在服务器端实现了BCrypt。我的User类仅在服务器端,以保护数据。我做了以下假设,如果它们是正确的,就无法解决:
我见过很多例子,但没有人在将密码发送到服务器之前加密密码。这样安全吗?
答案 0 :(得分:1)
只要您使用HTTPS等安全通道,就可以安全地将未加密的密码发送到服务器。
出于性能原因,您还可以将相同的用户对象(不存储密码)保留在内存中,只需确保始终在服务器端验证它。永远不要相信客户提供给您的用户信息。
答案 1 :(得分:1)
在将密码发送到服务器之前散列密码证明什么都没有。 (除了可能保护用户表单在使用相同密码的其他系统上受到损害之外。)
如果攻击者拥有您从客户端发送到服务器的任何内容,无论是明文还是散列或量子脑波,他们都拥有访问系统所需的内容。
敏感信息需要通过加密套接字发送,然后您自己编码的方式无关紧要。