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-битный размер блока. Любая помощь будет принята с благодарностью.