php7.1 шифрование openssl с помощью aes_128 ecb PKCS 7padding дает неверный результат

Я использую openssl для шифрования шестнадцатеричных данных. Выходные данные отличаются правым выводом (длиннее правого вывода). онлайн шифрование веб-сайта , Я думаю, возможно, нужно установить отступы. Но я нахожу это вопрос,В ответе сказано, что pkcs7padding является настройкой по умолчанию.

//secret hex '2b7e151628aed2a6abf7158809cf4f3c'
//input  hex '6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51'
//right output hex '3ad77bb40d7a3660a89ecaf32466ef97f5d3d58503b9699de785895a96fdbaaf'


$secret = '2b7e151628aed2a6abf7158809cf4f3c';
$input = '6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51';
$output = openssl_encrypt(hex2bin($input),'aes-128-ecb',hex2bin($key),OPENSSL_RAW_DATA);

echo bin2hex($output);
//3ad77bb40d7a3660a89ecaf32466ef97f5d3d58503b9699de785895a96fdbaafa254be88e037ddd9d79fb6411c3f9df8

0

Решение

openssl_encrypt(hex2bin($input),'aes-128-ecb',hex2bin($key),OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING);
1

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

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

По вопросам рекламы [email protected]