Javascript 如何让浏览器保存密码,即使它';它没有发送到服务器
情况: 出于安全原因,我从不向服务器发送清除密码。 它是sha1ed客户端,只有散列被发送到服务器。 编辑:这只是我安全性的一部分(我还使用SSL、服务器端哈希、同步盐等)请不要将其作为关于安全性的线程 为此,我有两个输入,第一个是可见的,名为“password”,另一个是隐藏的,名为“sha1password” 当用户点击“登录”按钮时,JS代码会将“输入密码”置为“输入密码”,并在向服务器发送帖子之前清空“输入密码” 最后一步是防止浏览器保存sha1密码。因为如果您这样做,表单将填充50个字符的密码,用户将感到恼火 问题:Javascript 如何让浏览器保存密码,即使它';它没有发送到服务器,javascript,php,passwords,password-protection,Javascript,Php,Passwords,Password Protection,情况: 出于安全原因,我从不向服务器发送清除密码。 它是sha1ed客户端,只有散列被发送到服务器。 编辑:这只是我安全性的一部分(我还使用SSL、服务器端哈希、同步盐等)请不要将其作为关于安全性的线程 为此,我有两个输入,第一个是可见的,名为“password”,另一个是隐藏的,名为“sha1password” 当用户点击“登录”按钮时,JS代码会将“输入密码”置为“输入密码”,并在向服务器发送帖子之前清空“输入密码” 最后一步是防止浏览器保存sha1密码。因为如果您这样做,表单将填充50个字
这很好,但浏览器不会保存密码,因为发送帖子时“输入密码”为空。是否有一种方法允许浏览器保存密码而不将其发送到服务器?需要记住的事项
- 如果有很多密码输入,Chrome不保存密码
- 加载页面后(甚至在jquery
初始化之后)会调用Chrome检查多个密码$(function(){})
- 要添加另一个密码输入,只需在100毫秒后使用setTimeout函数
你完成了;)chrome只存储清除密码的散列可能的重复密码不会真正增加任何安全性。如果有人嗅探到连接,他们将获得sha1password,然后将其发送到服务器并获得身份验证。你为什么不使用SSL?@Cerbrus与此不同。他知道如何避免向服务器发送密码——他的问题是如何让浏览器在不发送密码的情况下将密码保存在其密钥链中。@Barmar:问题不是关于安全性,而是关于将密码保存到浏览器中。我理解这一点。但是你在浏览器中保存密码时遇到问题的唯一原因是你在用sha1password做傻事。你这么做是因为你认为它增加了安全性,但事实并非如此。因此,请像其他人一样输入密码,浏览器将正确保存密码。