help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/...

я есть немного PHP, который я бы хотел сделать эквивалентным в ColdFusion.

function & _encryptMessage( $message ) {

   $td = mcrypt_module_open( MCRYPT_RIJNDAEL_256, '', MCRYPT_MODE_CBC, '');
   mcrypt_generic_init( $td, $this->key, $this->iv );
   $encrypted_data = mcrypt_generic( $td, $message );
 mcrypt_generic_deinit($td);
 mcrypt_module_close($td);

   return base64_encode( $encrypted_data );
}

Я думаю это просто

encrypt(message,"","AES","Base64")

Но у меня нет реального способа узнать наверняка, и это не совсем правильно, поэтому я подумал, будет ли кто-то там достаточно хорош, чтобы указать мне правильное направление.

ОБНОВЛЕНИЕ: Для информацииэтот ответ поМистер Дайбыло особенно полезно.

Так что MCRYPT_RIJNDAEL_256 на самом деле означаетразмер блока не сила шифрования, Уровень шифрования по-прежнему равен 256, поскольку ключ и соль генерируются в PHP с использованием значения, которое хэшируется в sha-256.

Это зашифрованный вызов, который я имею сейчас:

encrypt(arguments.messageXML,instance.key,"AES/CBC/PKCS5Padding","Base64",ivSalt)

К сожалению, это взрывается, потому что ivSalt имеет длину 32 байта (256 бит), а AES ожидает только 16 байтов соли. ИщуВот Казалось бы, максимальный размер блока в ColdFusion / Java для AES составляет 16 байтов (128 бит). Кажется, я не вижу, как получить 256-битный размер блока. Любая помощь будет принята с благодарностью.

Ответы на вопрос(2)

Ваш ответ на вопрос