本地数据有多安全?
ApplicationData.Current.LocalSettingsWindows 8商店应用程序中使用的存储空间?
应用数据存储的这篇文章没有提到安全性,这一个也没有。
这些数据能从应用程序的外部操作吗?
我看了数据的位置
C:\Usersusername\AppData\Local\Packagespackage_namespace\LocalState)
但没有找到。它到底是在哪里保存的?
我试图评估这个存储机制的安全性,以决定我是否可以将安全关键信息存储在那里。
发布于 2013-03-25 14:54:34
经过进一步的调查,我发现:
http://lunarfrog.com/blog/2012/09/13/inspect-app-settings/
数据存储在
C:\Usersusername\AppData\Local\Packagespackage_namespace\LocalState\Settings\settings.dat
它是一个Windows注册表文件(REGF),它可以与注册表编辑器打开,也可以被操作。
的意思是,本地存储不安全。
如果没有其他方法,加密数据和混淆键是一种可能性。
发布于 2013-03-26 05:52:40
如果要存储的是用户凭据,请查看PasswordVault类。否则,按照您自己的建议使用DPAPI。
发布于 2013-03-26 03:17:48
这篇应用程序数据存储文章没有提到安全性,这篇文章也没有提到安全性。这些数据能从应用程序的外部操作吗?
该存储类似于iOS的核心数据。它本质上是不可信的输入,除非存储受到保护(低于应用程序级别)。即使该存储受到加密保护,它也可能没有经过身份验证,因此可能会受到篡改。
如果没有其他方法加密数据和混淆密钥是可能的。
在Windows平台上,保护敏感数据的标准方法是使用数据保护API (DPAPI)。使用DPAPI与用户提供的秘密(API中的附加熵)进行最佳保护。您可以将DPAPI的数据与用户的配置文件、注册表或文件系统存储在一起。例如,请参见Windows数据保护、如何:使用数据保护和数据保护API (Windows应用程序)。Michael和David LeBlanc在http://www.microsoft.com/learning/en/us/book.aspx?id=5957中对这一主题有了很好的处理。参见第9章,保护机密数据,从第299页开始。
如果您想要像加密这样的数据库,请查看SQLCipher。它使用认证加密,因此它提供了机密性和完整性。Windows 8支持本地库,包括在其手机上(例如,请参见Windows Phone 8上的本机代码)。
https://stackoverflow.com/questions/15617821
复制相似问题