【问题标题】:Windows 10 Secure StorageWindows 10 安全存储
【发布时间】:2016-07-06 19:14:30
【问题描述】:

在 Windows 10 中,是否有类似于 Android TrustZone 的安全存储机制?

数据在哪里加密并存储在与常规用户文件空间不同的位置?

我希望存储来自任何其他用户或应用程序不需要访问的应用程序的数据,我真的不想只是加密它并将其存储在磁盘上。

有什么想法吗?

【问题讨论】:

  • blogs.windows.com/buildingapps/2015/10/13/… "默认情况下,UWP 应用被隔离在自己的容器中,因此其他 UWP 应用无法访问它们的数据。"
  • 这当然是可能的。但是,我目前拥有的是作为 Windows 服务编写的,而不是 Windows 应用程序。有没有不涉及 UWP 的方法?
  • 如果您是服务,则对文件进行 ACL,以便只有服务帐户可以访问它。这样,普通用户无法访问它。其他应用程序需要在服务帐户下运行才能访问该文件,但那又如何呢?如果攻击者可以配置服务,那么他们就拥有管理员权限并且已经可以访问他们想要的任何东西。

标签: windows security storage


【解决方案1】:

由于 Windows 是一个开放平台(与非根 Android 不同 - 我现在谈论的是用户的观点),没有简单的方法可以将任何内容存储在磁盘上(或其他地方)并保护它免受用户的使用权。用户本质上是其 PC 及其磁盘上所有内容的所有者。

您可以做的最好的事情是使用CryptProtectData / CryptUnprotectData WinAPI 函数将数据“绑定”到用户帐户。这些 API 不存储数据,而只是使用从用户凭据派生的密钥对其进行加密。然后,您可以将此加密数据存储在用户的配置文件目录中。

【讨论】:

  • 我认为可能是这样。谢谢!
  • 您认为将此加密的 blob 存储在注册表的 HKCU 部分有什么缺点吗?
  • @PeterWeyzen Microsoft 建议不要在注册表中存储大量二进制数据。如果您的数据量小于 2KB,您可以将其存储在注册表中。但总的来说,数据污染注册表会导致注册表臃肿、碎片化,影响日常运营。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-05-30
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多