我正在实现一个由Javascript前端组成的Web应用程序(如果您愿意,可以使用单页面应用程序)和Rails后端。
前端应用通过API向服务器发出请求,我想知道在登录时发送密码或重置密码的最佳做法是什么。
我应该发送清除密码,还是应该发送哈希?
我认为两种解决方案都有其缺点:
如果我用JS散列密码,用户将在他的浏览器中获得代码,并且可以理解我如何保护密码。
如果我保持清楚,beh,它很清楚,因此可以截获。
答案 0 :(得分:1)
只要您使用HTTPS,就无法截获他们的密码。嗯....它可能不会被截获。但是他们为了获取密码而必须使用的策略有些超出了您的控制范围。用户必须确保他们实际上已连接到您的网站。
我建议阅读this answer as well。
他讨论了拦截HTTPS通信所需的内容。您的责任是确保您的网站仅通过HTTPS提供服务,并且您拥有完全有效的证书。