$body=array(
"groupID"=>1348
);
$json_str = json_encode($body);
$key = '1234567812345678';
$iv = '1234567812345678';
$encrypted = openssl_encrypt($json_str,'AES-128-CBC',$key,OPENSSL_ZERO_PADDING,$iv);
这样的写法有什么问题么?
结果是:
HP7a0w0Pt9vF5PoaKFijhg==
似乎结果和网站的不一致。。。
下面是参考网站
http://tool.chacuo.net/cryptaes
网站的结果是
HP7a0w0Pt9vF5PoaKFijhgB6pvRsuY8IDFDE75tsiBQ=
AES 是按数据块大小(128/192/256)对待加密内容进行分块处理的,会经常出现最后一段数据长度不足的场景,这时就需要填充数据长度到加密算法对应的数据块大小。
OpenSSL 默认模式使用 PKCS7 对数据进行填充