use*_*176 5 c++ encryption winapi
我知道 CryptProtectData 函数使用 Windows 用户的密码加密数据,当我登录 crypter 用户时,我可以使用 CryptUnprotectData 函数解密它,如何仅使用密码而不登录用户解密数据?
小智 6
CryptProtectData 使用加密算法,该算法从环境变量(例如当前计算机 ID 和用户凭据)中获取密钥。这也意味着在大多数情况下您需要成为加密用户才能解密。
然而,有一个小警告,您可以绕过用户凭据进入密钥的构成;但遗憾的是,您能做的最好的事情就是加密可以由同一台计算机上的任何用户解密的内容。
如文档中CryptProtectData所示,您可以将 dwFlags 设置为“CRYPTPROTECT_LOCAL_MACHINE”(dwFlags 是一个枚举,您可以简单地将其设置为 uint 0)。当您对加密内容调用 CryptUnprotectData 时,请务必将 dwFlags 设置为 uint(0),并且这两个函数将完全对称并且彼此可以正常工作。我亲自尝试过,并且可以证明它有效。
是的,这整个需要相同的机器系统真的很烦人,但它是迄今为止加密某些东西并确保世界上没有其他计算机可以解密它的最安全的方法。
| 归档时间: |
|
| 查看次数: |
16429 次 |
| 最近记录: |