PHPとColdFusion9のAES暗号化では異なる結果が生じます。誰かが私を助けてくれますか?PHP ColdFusion9 AES暗号化 - 異なる結果
<cfset thePlainData = "This is a plain string." />
<cfset theKey = "12345678123456781234567812345678" />
<cfset theAlgorithm = "AES/CBC/PKCS5Padding" />
<cfset theEncoding = "base64" />
<cfset theIV = "1234567812345678" />
<cfset encryptedString = encrypt(thePlainData, theKey, theAlgorithm, theEncoding, theIV) />
ColdFusionのコードの下には私KLt55n5/T3ee6xVq9VGFbyCacJznkHEqC/RDRhL + 4NW =
を与えながらPHPコード以下ザ
$key = "12345678123456781234567812345678";
$iv = "1234567812345678";
$data = "This is a plain string.";
echo base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $data, MCRYPT_MODE_CBC, $iv));
は私G + tdEOfQTtVCQGxW3N5uzkqN207OyfIPxS6zf2xrKKY =
を与えます
私はどこが間違っているのか?前もって感謝します。
上記のPHPは私のために実行されますが、上記のCFは「指定されたキーはこの暗号化の有効なキーではありません:不正なキーサイズ」です...本当に正確なCFコードですか?このCF9エンタープライズですか? –
あなたの迅速な対応に感謝します。私はColdFusion9体験版を使用しています。 – user812120
CFは 'theKey'がbase64であることを期待しています。 'theKey'をbase64に変換すると、あなたはもっと近くになりますが、そこまでではありません。だからそれはエンコードの違いかもしれません。 'theKey/iv'の両方を16進またはbase64のどちらかで印刷できますか? – Leigh