栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

pad block corrupted,IV not 16 bytes long,last block incomplete in decryption

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

pad block corrupted,IV not 16 bytes long,last block incomplete in decryption

​微信小程序获取用户绑定的手机号信息解密出现pad block corrupted,前端打开授权页面时先调用login(),将jscode存在本地,当点击授权时,先检查jscode是否过期,如果过期了,就调用login获取最新的;未过期则将本地存储的jscode拿出来,传递给后端,请求后在complete中调用login()刷新本地jscode。

传参时,需要调用encodeURIComponent方法对encryptedData和iv进行编码。如果不对参数进行编码,参数中的特殊字符到后端时会变成空格,而且多个特殊字符连在一起时,只会转成一个空格,会出现IV not 16 bytes long 或者 last block incomplete in decryption 的错误。后端参数接收有些接口会自动将参数解码,有些不会,没搞懂为啥,用encryptedData.contains("%")来判断是否要解码。解码用的工具类是hutool的URLDecoder,java.net下的URLDecoder好像解不出来。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/349620.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号