在delphi中的何处可以找到此DES_set_key_unchecked过程
我正在从AlRyy现有的C++代码中移植Opera恢复 我敲了这根线在delphi中的何处可以找到此DES_set_key_unchecked过程,delphi,Delphi,我正在从AlRyy现有的C++代码中移植Opera恢复 我敲了这根线 DES_set_key_unchecked((const_DES_cblock *)&hashSignature1[0],&key_schedule1); 在哪里可以找到类似于delphi的过程/函数 提前感谢与其担心具体的功能,不如退一步看看代码的总体目标。这段代码是用来用3DES加密的。只要您对消息进行3DES加密,任何函数的行为都无关紧要 为此,您应该要求提供一个能够使用Delphi进行3DES加密的
DES_set_key_unchecked((const_DES_cblock *)&hashSignature1[0],&key_schedule1);
在哪里可以找到类似于delphi的过程/函数
提前感谢与其担心具体的功能,不如退一步看看代码的总体目标。这段代码是用来用3DES加密的。只要您对消息进行3DES加密,任何函数的行为都无关紧要 为此,您应该要求提供一个能够使用Delphi进行3DES加密的库。这就是一个例子。使用其
TDCP\u3des
类并调用其Init
方法。函数期望输入键是一个由三个键组成的数组,每个键宽八个字节。在原始代码中,DES_set_key_unchecked
所做的是用前面计算的MD5哈希中的一些字节填充特定于平台的DES_key_schedule
结构。DCPcrypt使用不同的平台特定结构:
var
keys: array[0..2, 0..7] of Byte;
ThreeDes: TDCP_3des;
Move(hashSignature1[0], keys[0], SizeOf(keys[0]));
Move(hashSignature1[8], keys[1], SizeOf(keys[2]));
Move(hashSignature2[0], keys[2], SizeOf(keys[1]));
ThreeDes.Init(keys, SizeOf(keys) * 8, ...);