json — шифрование MD5 и Triple Des в PHP с помощью KEY и IV

Я поставил задачу интегрировать систему нашей компании во внешнюю систему через API. Когда я прочитал об API, он заявил, что данные должны быть зашифрованы с использованием MD5 и Triple Des Encryption, поэтому я провел некоторое исследование о том, как это сделать.

// Here's the credentials to be used for encryption.

$key = 'dEvu4MHkqz7mRgeqmB1mQEXi';
$iv  = "avz9bUNx";

Данные должны быть отформатированы как строка JSON перед шифрованием.

$params = array(
'Number' => '+11177109886' // example
);

$text = json_encode($params);

После этого я сделал несколько кодов для его шифрования.

function apiEncode($text, $key, $iv)
{
// to append string with trailing characters as for PKCS7 padding scheme
$block = mcrypt_get_block_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CBC);
$padding = $block - (strlen($text) % $block);
$text .= str_repeat(chr($padding), $padding);

$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_CBC, $iv);
return base64_encode($crypttext);
}

Я получил ошибку.

Предупреждение: mcrypt_encrypt (): получил вектор инициализации размером 0,
но размер 32 требуется для этого режима шифрования в
/Applications/XAMPP/xamppfiles/htdocs/dapsapi/rdremit.php в строке 20

1

Решение

Задача ещё не решена.

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

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

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