mcrypt_create_iv returns 未定义变量
mcrypt_create_iv returns undefined variable
我的 encryption/iv 代码不起作用。每当我测试登录时,我都会收到此错误
Warning: openssl_encrypt(): Using an empty Initialization Vector (iv) is potentially insecure and not recommended in /Users/luke/Sites/user.php on line 174
我已经追踪到这条行
$size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB);
$iv = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM);
$method = "aes-128-cbc";
$passWord = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM);
$verificationNumber = openssl_encrypt($passWord, $method, $iv);
Mcrypt 安装正常,如图所示。
你能帮忙吗,或者我可能需要提供更多代码吗?
您正在获取 "CAST" 的 iv 大小:MCRYPT_CAST_256
但您正在使用 "aes-128-cbc" 进行加密。那是一个算法mis-match.
CAST 块大小为 64 位,AES 块大小为 128 位。而是使用 MCRYPT_RIJNDAEL_128
,AES 是 Rijndael 的子集,具有 128 位块。
我的 encryption/iv 代码不起作用。每当我测试登录时,我都会收到此错误
Warning: openssl_encrypt(): Using an empty Initialization Vector (iv) is potentially insecure and not recommended in /Users/luke/Sites/user.php on line 174
我已经追踪到这条行
$size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB);
$iv = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM);
$method = "aes-128-cbc";
$passWord = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM);
$verificationNumber = openssl_encrypt($passWord, $method, $iv);
Mcrypt 安装正常,如图所示。
您正在获取 "CAST" 的 iv 大小:MCRYPT_CAST_256
但您正在使用 "aes-128-cbc" 进行加密。那是一个算法mis-match.
CAST 块大小为 64 位,AES 块大小为 128 位。而是使用 MCRYPT_RIJNDAEL_128
,AES 是 Rijndael 的子集,具有 128 位块。