gpt4 book ai didi

winapi - Rust 中是否有等同于 win32crypt.CryptUnprotectData() 的 Rust

转载 作者:行者123 更新时间:2023-11-29 08:36:26 27 4
gpt4 key购买 nike

在 Python 中,pywin32 库提供了一个名为 win32crypt 的模块,其中有一个名为 CryptUnpotectData 的方法,可以使用 Windows 解密 Windows 加密数据API。

这就是我在 Python 中应用它的方式:

import win32crypt
# ...
password = win32crypt.CryptUnprotectData(EncrytedPassword, None, None, None, 0)

我找到了 winapi 的绑定(bind)但我找不到 CryptUnprotectData 函数,我发现最接近的等效函数是 the CryptDecrypt function .

这是我在 Rust 中的实现:

extern crate winapi;
let decrypted_password = winapi::um::wincrypt::CryptDecrypt(/* ???? */);

我不确定如何使用此函数以及它是否会解密我的加密密码字符串并返回它。如果更有经验的 Rust 用户可以通过示例或解释为我阐明这一点,我会很高兴。

最佳答案

如果您转到 documentation for winapi (链接自 crate page 以及 README ),您会发现一个大搜索框:

search box in docs

如果您在该搜索框中键入“CryptUnprotectData”,您将收到 3 个结果:

search results

点击第一个结果将带您进入特定功能,CryptUnprotectData .如 Cannot call CryptDecrypt from the WinApi crate because it could not find the module 中所述,您需要使用适当的功能标志来启用该功能 (dpapi)。

如 README 所述:

Why is there no documentation on how to use anything?

This crate is nothing more than raw bindings to Windows API. If you wish to know how to use the various functionality in Windows API, you can look up the various items on MSDN which is full of detailed documentation.

这个函数的用法是described on MSDN .

关于winapi - Rust 中是否有等同于 win32crypt.CryptUnprotectData() 的 Rust,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48515385/

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