Шифрование — преобразование ColdFusion encrypt () в PHP openssl_encrypt ()

Я бью стену прямо сейчас; Я пытаюсь преобразовать следующее ColdFusion encrypt () код для PHP с помощью PHP openssl_encrypt () метод (PHP 7)

<cfset key = ToBase64(BinaryDecode("24a5d2b96b9aee2fb515c94fb36da508", "Hex"))>
<cfset encryptedString = Encrypt("Encrypting this string in CF and hopefully PHP too.", key, "AES", "Hex")>

Вот моя попытка в PHP:
(Я обновил свой код. Спасибо @Ageax за отзыв!)

Однако результаты все еще разные.

$key = base64_encode(hex2bin("24a5d2b96b9aee2fb515c94fb36da508"));
$encrypted = openssl_encrypt(
"Encrypting this string in CF and hopefully PHP too.",
'AES-128-ECB',
$key
);
echo '<p><strong>AES-128-ECB encryption</strong>: '.bin2hex(base64_decode($encrypted)).'</p>';

Результат в ColdFusion (Спасибо @Ageax):

Key: JKXSuWua7i+1FclPs22lCA==
Encryption: 1CCA4C862D3D2DC85637AF2F0E532145DEFC135F1268D5DFA991C77ED624BA0228E557BAEB06D96925B4A2968ACF55AC1312F28BCC42CB89EADE6BB76BD698F5

Результат в PHP:

Key: JKXSuWua7i+1FclPs22lCA==
Encryption: 4e487f1f9ff3ecaa82b5672803d9baecf5907c10bd91dbfdaf630927250c195f7e5a1d3e129da161b01a0a307ed73acf672d39614a91a53f6e1adcd1db6d1632

Любой отзыв будет потрясающим. Спасибо!

0

Решение

Я решил это !!! Моя ошибка состояла в том, что я закодировал ключ в base 64 (base64_encode), вы просто удалили его и все готово! Ура! 🙂

НЕПРАВИЛЬНО:

$key = base64_encode(hex2bin("24a5d2b96b9aee2fb515c94fb36da508"));

ПРАВИЛЬНЫЙ:

$key = hex2bin("24a5d2b96b9aee2fb515c94fb36da508");

Спасибо всем за ваш отзыв!

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector