gpt4 book ai didi

windows - VBA:用于在注册表中存储敏感信息的用户特定 key

转载 作者:可可西里 更新时间:2023-11-01 10:45:03 25 4
gpt4 key购买 nike

我有一个需要连接到远程服务器的 outlook VBA 脚本。为此,用户必须输入他的服务器密码。为了避免每次我想将其安全地保存在注册表中时都输入此服务器密码。

我已经找到一篇文章如何加密字符串: Can I use DPAPI (or something like it) in VBA?

但是你需要一个 key 来加密。我可以在 Windows 中使用特定于用户的东西吗?我怀疑我能否读取已登录用户的 Windows 密码,因为这将是一个安全漏洞。但是有可能得到他的 windows 密码的哈希值吗?在这种情况下,我可以使用 Windows 密码的散列来加密服务器密码并满足这两个要求。除登录用户外,没有其他人可以获得服务器密码,用户自己也不需要每次都输入。

如果无法获取 windows 密码的哈希值,则可能在窗口中存在一些其他用户特定信息,只有登录用户才能访问。

问候,

最佳答案

与此同时,我找到了解决方案。 DPAPI 还提供了两个函数,称为 CryptProtectData 和 CryptUnprotectData。在那里,您可以加密服务器密码,而无需另一个加密密码。

您无法从 VBA 调用此函数,但可以在此处获取通过 DLL 调用实现的示例:http://www.derkeiler.com/Newsgroups/microsoft.public.platformsdk.security/2005-04/0299.html

关于这两个函数的详细信息可以在这里找到:https://support.microsoft.com/de-de/kb/309408/en-us#3

DPAPI 通过使用从名为主 key 的伪随机 512 位数字派生的值数据来帮助保护 secret 信息......因为主 key 包含解密所有用户 secret 信息所需的数据,所以必须保护主 key 。它们使用从用户密码派生的值进行保护。密码是一个只有用户知道的唯一值

关于windows - VBA:用于在注册表中存储敏感信息的用户特定 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29992344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com