【问题标题】:Storing things in encrypted format in windows(not accessible to everyone)在 Windows 中以加密格式存储东西(并非所有人都可以访问)
【发布时间】:2023-03-10 10:53:01
【问题描述】:

我需要一些建议来了解这一点,如果我想存储一些特定的东西,比如密码或一些不应该被一个管理员下的所有用户看到的秘密,它应该只有管理员可以访问。早些时候我计划将其以加密格式存储在注册表中,但即使这样似乎也不安全,因为每个人都可以访问它。

还有其他方法可以在 Windows 的某个位置存储东西吗?请提出一些方法。

【问题讨论】:

    标签: c# windows registry


    【解决方案1】:

    您可以使用DPAPI。它是一种用于敏感数据的简单加密和解密方法。它允许限制用户或机器对加密数据的访问。就这么简单(取自链接页面上的示例):

    byte [] secret = { 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4 };
    ProtectedMemory.Protect( secret, MemoryProtectionScope.SameLogon );
    ProtectedMemory.Unprotect( secret, MemoryProtectionScope.SameLogon );
    

    我不确定这是否符合您的要求,dpapi 与 Windows 登录密码一样安全,一旦您登录,您就可以解密数据(取决于保护范围)。请参阅this SO question 进行讨论。

    【讨论】:

    • 我不想将它存储在每个用户的机器中,我只是希望它甚至只有管理员可以读取。那么我可以将它存储在哪里,以便除了管理员之外的所有用户都隐藏它。
    猜你喜欢
    • 1970-01-01
    • 2021-05-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 2016-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多