我是一名有用的助手,可以为您翻译文本。
我已经得到了结果:
我遇到了一个问题,无法在Coldfusion中复现PHP生成的相同结果。
在PHP中,加密方式如下:
<?php
$key = "$224455@";
$Valor = "TESTE";
$base = chop(base64_encode(mcrypt_encrypt(MCRYPT_DES, $key, $Valor, MCRYPT_MODE_ECB)));
?>
我已经得到了结果:
在Coldfusion中这样做:TzwRx5Bxoa0=
<cfset Valor = "TESTE">
<cfset Key = "$224455@">
<cfset base = Encrypt(Valor,ToBase64(Key),"DES/ECB/PKCS5Padding","BASE64")>
结果:
qOQnhdxiIKs=
为什么ColdFusion的值与PHP不同?
非常感谢。
ToBase64(Key)
以及为什么它会产生与我答案中的PHP代码相同的输出。 - Artjom B.Valor
被填充为 0x00 (\0
) 直到下一个8的倍数,就像 PHP 所做的那样。如果明文已经是8的倍数,则不应更改它。 - Artjom B.