用于发送不安全的Javascript密码哈希

时间:2014-09-30 23:21:20

标签: javascript authentication hash passwords

我想通过HTTP发送密码。

情景:

  1. 用户在表单中输入用户名和密码。
  2. 使用用户名对密码进行哈希处理并发送到服务器。
  3. 服务器检查密码哈希和用户名并验证用户身份。 (服务器也不知道明文密码。)
  4. 如果某人以某种方式拦截了身份验证消息,他将获取哈希密码和用户名,并且他可能会登录该用户的帐户。实际上,根据服务器,散列密码是密码。

    这就是事情:我不在乎。很少有人会将这些数据劫持,即便如此,它也是如此如果你的帐户被盗,不是真的有问题,你可以换一个新的。

    问题:在JavaScript中散列用户密码的好方法是什么?哈希不能使用随机盐,因为它需要被服务器识别。

    我唯一关心的是如果邮件被拦截,则会发现用户的纯文本密码。原因是明文密码也可能用于危害人们使用的其他可能实际包含重要信息的服务。

    编辑:澄清一下,问题主要是关于使用什么哈希算法,以及是否有轻量级库。

1 个答案:

答案 0 :(得分:0)

如果安全性实际上不是问题,例如人们可以妥协你的系统,并且你想要对哈希值进行限制的唯一原因是为了防止使用彩虹表并确定明文密码,然后这样做:

  • 为服务器上的每个密码计算一个足够长的盐,并将其存储在服务器上(就像大多数系统通常将密码存储在数据库中一样)

  • 以明文

  • 将盐发送给用户
  • 计算盐渍哈希并发回

如果我正确地考虑这个问题,这仍然会阻止使用彩虹表。

否则,请与https一起使用? :P