Sta*_*low 10 javascript security authentication encryption
在非ssl传输的情况下,密码如何从浏览器发送到服务器?
我想在发送之前使用bcrypt来哈希密码+盐...但是似乎没有针对bcrypt算法的javascript实现...
是md5,SHA-1足够好吗?
PS:我的网站没有存储任何用户个人信息..我只是希望用户的密码不被黑,因为用户可能在包含他/她个人信息的其他网站上使用相同的密码
kem*_*002 22
说实话,你可以在前端哈希,但它不会解决你的根本问题.由于您要存储哈希以供以后验证,所以黑客需要知道的是哈希值.然后黑客可以将散列值发送给您,您的系统会将其验证为正确的值.您实际上是将未加密的密码发送到系统.
为了有效,转移需要通过SSL加密.
实际上,解决哈希问题的简单方法就是在中间攻击中扮演那个人.由于它不使用SSL,因此使用浏览器的人无法知道HTML内容不是来自您的服务器.攻击者可以简单地将他的代码放在客户端和服务器之间,并在HTML中添加其他代码来密钥记录密码.然后发布的信息将发送给攻击者; 他或她采取所需的(在这种情况下是密码),然后将信息转发到您的服务器.你和攻击者都不会知道你没有互相沟通.
这就是您必须从可验证的来源购买证书的原因.他们正在验证您正在与之通信的服务器是他们所说的人.
相关:中毒DNS