在提交之前用javascript加密密码是否有意义?

Jam*_*mes 4 javascript sha512

我在http://marakana.com/blog/examples/php-implementing-secure-login-with-php-javascript-and-sessions-without-ssl.html上关注这个例子

我不完全明白的是这样做有什么好处?秘密的单词张贴在表单中,所以任何可能正在嗅探的人肯定会看到这个秘密单词,以及javascript,并且无论如何都能找出密码.这样做真的有意义吗?

Jon*_*Jon 5

窃听者无法获取密码,因为他们只知道:

  • 秘密的话
  • 秘密字/密码组合的哈希值

由于哈希是单向的,因此您无法从这些哈希中获取密码.

您获得的:用户设置了服务器能够验证的密码,而无需自己发送明文密码.

  • @James:db存储`hash(密码)`.在auth上,服务器选择`secret`并将其发送给客户端.用户输入`password`,客户端发回`hash(secret + hash(password))`.服务器从db知道`hash(密码)`并且它也知道`secret`,所以它可以独立地计算`hash(secret + hash(password))`.如果值与客户端提供的值匹配,则auth成功. (3认同)