我正在研究一个使用HTML5的离线web应用程序解决方案。功能是我需要的一切,但是存储的数据可以直接在浏览器中查询,因此完全不安全!
有没有什么方法可以加密/隐藏数据以保证数据的安全?
谢谢,D。
发布于 2010-04-15 13:03:23
HTML5中的本地存储有两个问题:
对于1,浏览器对localStorage (或safari所支持的sqllite数据库)实施相同的域限制,因此其他网站将无法访问您存储的数据。但是,请记住,如果您的站点存在XSS漏洞,则可能会窃取数据。
对于2,你不能阻止它。它就像一个cookie --用户可以选择查看/删除/修改它。
数据加密是可能的(参见http://farfarfar.com/scripts/encrypt/),但毫无意义。你不能有一个单独的全局密钥/密码-因为攻击者可以很容易地从javascript代码中计算出密钥。使用用户输入的密码进行加密/解密是可能的,但是客户端加密库还不够成熟,测试也不够好。可能有很多方法可以打破它。
所以,至少现在,不要在localStorage中存储敏感数据。
发布于 2010-04-15 17:50:29
您还可以查看HTML5 SecureStore门户作者的article on this concern
发布于 2010-04-15 13:09:28
如果你将数据存储在用户的计算机上,用户总是可以读取它,无论你对它进行了多少加密,假设你没有使用散列...
敏感数据总是放在服务器端。
https://stackoverflow.com/questions/2642043
复制相似问题