Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在delphi中的何处可以找到此DES_set_key_unchecked过程_Delphi - Fatal编程技术网

在delphi中的何处可以找到此DES_set_key_unchecked过程

在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加密的

我正在从AlRyy现有的C++代码

中移植Opera恢复

我敲了这根线

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, ...);