Я использую openssl_encrypt в Laravel, я использовал эту функцию раньше в PHP 5.6, которая работала нормально, но после того, как я переключился на Laravel, я взял функции шифрования и дешифрования из моего старого веб-приложения, но я получаю следующую ошибку:
openssl_encrypt(): IV passed is 24 bytes long which is longer than the 16 expected by selected cipher, truncating
private $iv = "########################";
private $keys = "###########";
protected function encryption($plainData)
{
$cipher = "aes-256-cbc";
$encryptedData = base64_encode(openssl_encrypt($plainData, $cipher, $this->keys, 1,$this->iv));
return $encryptedData;
}
//decryption
protected function decryption($encryptedData)
{
$decodeData = base64_decode($encryptedData);
$cipher = "aes-256-cbc";
$data = openssl_decrypt($decodeData, $cipher, $this->keys, 1,$this->iv);
return $data;
}
У кого-нибудь есть понимание, каким образом я могу решить эту проблему?