我正在研究使用HTML5的离线Web应用程序解决方案。 功能完全符合我的需求,但存储的数据可以直接在浏览器中查询,因此完全不安全!
有没有任何方法可以加密/隐藏数据以使其安全?
谢谢, D.
我正在研究使用HTML5的离线Web应用程序解决方案。 功能完全符合我的需求,但存储的数据可以直接在浏览器中查询,因此完全不安全!
有没有任何方法可以加密/隐藏数据以使其安全?
谢谢, D.
HTML5本地存储存在两个问题 -
对于第一个问题,浏览器强制实行同源策略以限制localStorage(或Safari提供的sqllite数据库支持),因此其他网站无法访问您存储的数据。但是,请记住,如果您的网站存在XSS漏洞,则可能会窃取数据。
对于第二个问题,您无法阻止它。这就像一个cookie - 用户可以选择查看/删除/修改它。
数据加密是可行的(请参见http://farfarfar.com/scripts/encrypt/),但是毫无意义。您无法拥有单一的全局密钥/密码 - 因为攻击者可以轻松从javascript代码中找到密钥。使用用户输入的密码进行加密/解密是可能的,但客户端加密库尚未成熟或经过充分测试。很可能有很多方法可以破解它。
因此,至少现在不要将敏感数据存储在localStorage中。