gpt4 book ai didi

encryption - Microsoft CNG BCryptEncrypt 返回密文 == 明文

转载 作者:行者123 更新时间:2023-12-05 08:02:07 25 4
gpt4 key购买 nike

我正在尝试围绕 CNG 的 AES 实现 AES-OFB 包装器以进行对称加密。

我遇到了一个我无法理解的问题...我创建了一个 AES 算法句柄 (BCRYPT_AES_ALGORITHM) 并导入了一个 AES key 。然后,我尝试生成一个 16 字节的 key 流,用于对我的明文/密文进行异或运算。我第一次运行此机制时,keyStreamPtr 从一些随机字节流更改为另一个随机字节流,但是,我第 3 次这样做(第 3 组 16 字节 key 流),我开始获得相同的输出并且它永远发生。

            status = BCryptEncrypt((BCRYPT_KEY_HANDLE)keyHandle, 
keyStreamPtr,
keyStreamLength,
NULL, //no padding
NULL, // no IV
0, // no IV
keyStreamPtr,
keyStreamLength,
&Length,
0); // no option flags

有没有人见过这样的事情?为什么 AES 会返回与输入的明文完全相同的密文?同样,这是针对 AES-OFB 实现的……也许我做错了什么?

最佳答案

我唯一能想到的就是你把 key 流加密一遍。如果这样做,您将有效地执行加密/解密: P XOR C XOR C = P 其中 C 是 key 流,P 是纯文本。您可能想查看代码中的缓冲区/流处理。

关于encryption - Microsoft CNG BCryptEncrypt 返回密文 == 明文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9460934/

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