Php 三重des解密函数不工作

Php 三重des解密函数不工作,php,encryption,mcrypt,3des,php-openssl,Php,Encryption,Mcrypt,3des,Php Openssl,所以我一直在做这个函数,我不确定出了什么问题 我获得加密数据和密钥: $key = 'aaaaaaaabbbbbbbbccccccccdddddddd'; $data = 'b5057bbc04b842a96144a0f617f2820e'; 我已经把它们转换成二进制: $key = pack('H*',$key); $data = pack('H*',$data); 并运行解密函数: echo bin2hex(mcrypt_decrypt(Mcrypt_3des, $key, $data,

所以我一直在做这个函数,我不确定出了什么问题

我获得加密数据和密钥:

$key = 'aaaaaaaabbbbbbbbccccccccdddddddd';
$data = 'b5057bbc04b842a96144a0f617f2820e';
我已经把它们转换成二进制:

$key = pack('H*',$key);
$data = pack('H*',$data);
并运行解密函数:

echo bin2hex(mcrypt_decrypt(Mcrypt_3des, $key, $data, MCRYPT_MODE_ECB));
$key = 'aaaaaaaabbbbbbbbccccccccdddddddd';
$key = pack('H*',$key);

// DATA
$data = 'b5057bbc04b842a96144a0f617f2820e';
$data = pack('H'.strlen($key),$data);

// DECRYPT OPEN SSL
$result = openssl_decrypt($data,'des-ede', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING);
然而,我得到的结果是:
e2119b734b505e3fa8717ee17f3a548

但是如果我在上面运行相同的解密 或

它实际上减少到
546573743132330000

实际上是
Test123123

有什么问题的建议吗

编辑:

我已尝试切换到
openssl\u decrypt

然而,我一直得到一个虚假的回报

代码:


我能够使用open SSLs解密函数使其正常工作:

echo bin2hex(mcrypt_decrypt(Mcrypt_3des, $key, $data, MCRYPT_MODE_ECB));
$key = 'aaaaaaaabbbbbbbbccccccccdddddddd';
$key = pack('H*',$key);

// DATA
$data = 'b5057bbc04b842a96144a0f617f2820e';
$data = pack('H'.strlen($key),$data);

// DECRYPT OPEN SSL
$result = openssl_decrypt($data,'des-ede', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING);

我能够使用open SSLs解密函数使其正常工作:

echo bin2hex(mcrypt_decrypt(Mcrypt_3des, $key, $data, MCRYPT_MODE_ECB));
$key = 'aaaaaaaabbbbbbbbccccccccdddddddd';
$key = pack('H*',$key);

// DATA
$data = 'b5057bbc04b842a96144a0f617f2820e';
$data = pack('H'.strlen($key),$data);

// DECRYPT OPEN SSL
$result = openssl_decrypt($data,'des-ede', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING);

仅供参考,并可能从的未来版本中删除PHP@Machavity很高兴知道,有没有更新的功能我可以使用呢?你看到下面无数的警告说不要使用它吗?我觉得从来没有人这样做过!最好不要使用mcrypt,它是废弃软件,多年来没有更新过,不支持标准PKCS#7(née PKCS#5)填充,只支持非标准的空填充,甚至不能用于二进制数据。mcrypt在2003年就有很多杰出的作品。取而代之的是考虑使用或提供完整的解决方案,并保持正确,就像FYI一样,并且可以从未来版本中移除。PHP@Machavity很高兴知道,有没有更新的功能我可以使用呢?你看到下面无数的警告说不要使用它吗?我觉得从来没有人这样做过!最好不要使用mcrypt,它是废弃软件,多年来没有更新过,不支持标准PKCS#7(née PKCS#5)填充,只支持非标准的空填充,甚至不能用于二进制数据。mcrypt在2003年就有很多杰出的作品。取而代之的是考虑使用或提供完整的解决方案,并保持正确。