我们正在jQuery Mobile平台上开发移动Web应用程序,要求用户提供其用户名和密码。移动应用程序开发--HTML5 LocalStorage与SessionStorage与Cookies的比较
而不是要求用户重新输入他们的详细信息,每次我们只要求他们提供一次用户名和密码,然后提示他们输入密码。
我们将加密此引脚并加密用户标识符字符串,并将两者都保存在LocalStorage或Cookie中。
当用户第二次访问应用程序时,我们将测试是否可以找到用户标识符,如果是,则提示他们输入一个引脚。
一旦输入密码,我们将安全地(SSL)传递密码和用户标识以在服务器上解密和验证。
我读过几个地方,我们应该使用Cookie而不是LocalStorage(从安全的角度来看)。你是否同意这一点,可以在大多数智能手机上使用Cookie?
我们还需要确保用户在每次关闭浏览器或浏览到其他页面或超过30分钟不活动时都需要重新输入密码。
为了管理这个,我正在考虑在SessionStorage中存储一个值,因为我已经知道这比LocalStorage更安全,并且在浏览器关闭时会过期。或者我们可以再次使用Cookies。
安全性是一个关键的问题,所以我会有兴趣听到任何提示和/或可能的替代方法。
提前感谢...
我在所选答案中阅读了对话。即使散列存储密码与存储密码一样存储密码,因为它们可以取消散列 - 但我明白你来自哪里:但即使只将引脚发送到服务器也会出现同样的问题。标准做法是在服务器端添加salt到已接收到的任何散列,然后散列并存储结果。稍后在随后的每次登录中,将接收到的散列值与您存储的偏移量进行比较,以确定散列盐的长度,当然这只是您知道的。从而避免任何直接存储。 – T9b 2011-05-10 15:52:47
你如何解决它? – 2015-01-06 23:23:39