问题:微信小程序手机号授权登录出现下面问题
openssl_decrypt(): IV passed is only 15 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0
解决:
微信小程序登录后,使用session_key 和 iv 解密出现上述错误。经过查找资料,原来是 iv 是通过get 方式传参的,会把 iv 数据里的 “+” 转换成空格,导致解密失败。 (iv 是openssl_decrypt 的参数)
解决方法:
(1) 改为 post 传参
(2)在base64_decode 之前把空格替换为+ $aesIV=base64_decode(str_replace(" ","+",$iv));
参考:
https://www.yisu.com/zixun/234546.html
https://developers.weixin.qq.com/community/develop/doc/0000ec33464b5856245892c7451800