Windows注册表解密(CryptUnprotectData)WPA密钥

Windows注册表解密(CryptUnprotectData)WPA密钥,c,linux,registry,wireless,encryption,C,Linux,Registry,Wireless,Encryption,我正在用C编写一个linux程序,从windows注册表配置单元中提取wpa/wep密钥 起初我希望使用wine的CryptUnprotectData函数,但现在我意识到wine使用了不同的算法,只是模仿了window的版本。我也意识到只有加密数据的用户才能解密数据 我正在使用aircrack ng套件中的WZbook作为指南。 我已经从一个蜂巢中提取了数据,没有任何问题,但我有点被困在如何解密密钥上 如果一个用户的密钥在注册表中加密,那么另一个用户如何解密该数据?我确信,如果psk/密码短语

我正在用C编写一个linux程序,从windows注册表配置单元中提取wpa/wep密钥

起初我希望使用wine的CryptUnprotectData函数,但现在我意识到wine使用了不同的算法,只是模仿了window的版本。我也意识到只有加密数据的用户才能解密数据

我正在使用aircrack ng套件中的WZbook作为指南。

我已经从一个蜂巢中提取了数据,没有任何问题,但我有点被困在如何解密密钥上

如果一个用户的密钥在注册表中加密,那么另一个用户如何解密该数据?我确信,如果psk/密码短语已经存储,他们不必重新键入它

即使在从linux离线访问配置单元时,数据是否也被明确加密

除了微软的逆向工程算法,还有其他解决方案吗D

非常感谢您提供的任何帮助/建议


谢谢。

据我所知,DPAPI使用根据用户实际密码计算的哈希,因此您需要Crypt函数的开源实现和用户的显式密码


最近在实现CryptUnprotectData方面做了一些工作:

我可以想象它实际上是加密的。您可能对chntpw感兴趣-另一个离线读取/写入Windows注册表(即从Linux)的项目。他们的目标是更改用户密码,我不确定这是否使用相同的加密/解密机制。谢谢,我知道chntpw。据我所知,虽然它只是更改或清空用户的密码,而不是解密它。我知道你可以对windows密码哈希进行字典攻击,所以我猜这不是相同的加密。我对它知道的不多。谢谢你的回复。谢谢你的链接!我想我必须放弃,但也许有办法。他们还没有发布消息来源,但我在上面找到了他们的这篇文章。它看起来很有趣,我会通读一遍。至少到那时我应该知道更多关于它是如何工作的,以及它是否能够实现。谢谢你的帮助。我刚看完那篇论文。这正是我需要的。谢谢,太好了!如果可行的话,我很高兴,上次我看这个时,它是一条死胡同。