Я хочу зашифровать строку в PHP так же, как ColdFusion.
Код ColdFusion (ключ был создан с использованием GenerateSecretKey ('AES') ):
<cfset encryptedData = encrypt('text', 'CJsP3yDcEM9RIwme53rAUQ==')>
Что приводит к (результат ниже должен иметь два пробела в конце):
$8X"%DP
Самое близкое, что я могу придумать (простите, я очень мало знаю о шифровании):
$cipher = 'AES128'; // assumed the default algorithm in CF is AES so this made sense
$ivlen = openssl_cipher_iv_length($cipher); // These two lines are because the AES ciphers demand an init vector
$iv = openssl_random_pseudo_bytes($ivlen);
$key = 'CJsP3yDcEM9RIwme53rAUQ==';
$data = openssl_encrypt($data, $cipher, $key, $options=0, $iv);
echo $data;exit;
Но это не сработало, поскольку вектор инициализации будет отличаться каждый раз.