好吧,我的工作似乎陷入了两难境地。 我已经有了一个工作注册页面,用户可以在其中注册并在提交之前验证所有字段,此验证是通过确切的用户输入完成的,并测量密码长度,用户名等。客户端
但是,在最终提交表单之前,密码是哈希,我希望阻止人们嗅出密码。因此服务器接收详细信息和散列密码。我的问题是,如果用户更改JavaScript验证以允许更短的密码我的PHP脚本将无法告诉。我不能允许用户使用短于8个字符的密码,但几乎不可能对散列密码运行验证?
虽然如果用户已禁用JavaScript,我可以验证密码,因为它不会在第一时间进行哈希处理,但如果有人将JavaScript更改为无效,则验证客户端是我似乎注意到问题的地方。不可否认,我可以使用加密和解密,但我觉得必须有一些我一直在忽视的东西。
我真的没有看到我发布我的代码的使用,但如果需要,我会。如果我对我的解释不是很清楚,或者我错过了一些明显和明显的东西,我会道歉。
答案 0 :(得分:4)
密码应该在服务器端进行哈希处理。否则,可以像使用纯文本密码一样轻松地嗅探和重放哈希。不要忘记独特的盐。
对于传输,您需要HTTPS。