【发布时间】:2017-05-10 12:26:27
【问题描述】:
我正在创建一个需要身份验证过程的 Web 应用程序。可悲的是,我不能使用 HTTPS,所以我被不安全的 HTTP 困住了。目前,我正在通过 HTTP 以纯文本形式发送密码......我知道这很糟糕(即使使用 HTTPS)!这就是为什么我在 JS 中寻找一种方法来散列密码,并将散列发送到服务器。 你们知道我该怎么做吗? (根据我的需要,使用与 PHP 相同的河豚实现将是最好的解决方案)
谢谢!
编辑:我知道任何可以拦截字符串的人都可以连接,但他们不知道密码,只知道哈希。
【问题讨论】:
-
如果你不能使用 HTTPS,你就没有一个安全的网站。
-
这会比发送纯文本密码更安全吗?任何拦截它的人仍然拥有他们需要进行身份验证的字符串。
-
另外,每个人都可以使用 HTTPS。 2017 年没有充分的理由不使用它。
-
没有任何客户端加密工具有任何用处。
-
"I know that anybody that could intercept the string could connect, but they couldn't know the password"- 具体来说...截获此信息的人确实知道密码。他们不知道用户输入的原始密码,该密码可能在其他地方使用(例如同一用户的银行网站),但他们确实知道您的网站。他们现在也知道哈希,以及生成它的客户端代码。因此,他们可以轻松地使用常用密码进行暴力破解。您的客户可能会坚持不使用 HTTPS,但在这里不要给他们一种错误的安全感。
标签: javascript php http