WinRT / Windows Store应用程序中安全存储加密密钥

3

我想要加密一些存储在本地存储文件夹中的Windows 8应用数据。这些数据并不是非常敏感,但是我想要防止用户伪造/修改它(并且正在考虑使用加密来实现)。

是否有任何安全的密钥存储可供我用于保存密钥以供以后重复使用?我的计划是: 1)在第一次运行时生成密钥并将其存储在某个位置, 2)使用密钥加密数据, 3)每当需要解密数据时,从存储中检索密钥。

2个回答

6

你是否已经看过PasswordVault类?http://msdn.microsoft.com/en-us/library/windows/apps/windows.security.credentials.passwordvault.aspx

基本上所有机密信息都应该放在那里。如果你想要“防止用户伪造/修改它”,问题是,你愿意为此付出多少精力。

一般来说,使用密码保险库中的数据不需要额外的加密即可安全。关于超过该级别的安全性,可以说,攻击者如果能够物理访问计算机,则可以对其进行任何操作,因为你必须将密钥存储在同一台机器上。任何更高级别的安全措施都会迅速达到投入努力与收益递减的点——也就是说,只是添加一些混淆而非真正的安全性。


根据文档,每个应用程序只能使用PasswordVault存储最多10个凭据。 - Mark Pazon

0

注意PasswordVault解决方案,我发现它实际上是一个问题,因为它是一个漫游设置。如果您同时在两个设备上打开应用程序,则会获得两个加密密钥,但一天左右后,漫游设置将覆盖第一个生成的加密密钥。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接