我的这个错是由于类型不一致导致的

sm-crypto加密后输出的是16进制字符串

而在controller解析body后传过来的是byte数组,我直接使用cn.hutool.crypto.symmetric.SymmetricDecryptor#decrypt(byte[])方法解密就会报错

正确的方法应该是解析body后的byte数组先转为String类型的字符串(可以使用org.apache.commons.lang3.StringUtils#toEncodedString),然后调用

cn.hutool.crypto.symmetric.SymmetricDecryptor#decrypt(java.lang.String)方法进行解密

sm-crypto配合hutool加解密报pad block corrupted错误相关推荐

  1. 微信一键登录解密手机号出现javax.crypto.BadPaddingException: pad block corrupted错误

    <button class="weui-btn btn-login" open-type="getPhoneNumber" bindgetphonenum ...

  2. 微信小程序解密encryptedData报错:pad block corrupted 解决方法

    今天碰到一个pad block corrupted错误,跟代码发现是Cipher里面的doFinal()爆出的错. 代码: public static JSONObject getUserInfo(S ...

  3. 微信小程序手机号解密报错:pad block corrupted 解决方法

    微信小程序手机号解密报错:pad block corrupted 解决方法 微信小程序获取用户手机号,后端解密手机号的时候偶尔会报错 javax.crypto.BadPaddingException: ...

  4. 小程序对encryptedData进行解密报错javax.crypto.BadPaddingException: pad block corrupted

    第一次写小程序登陆授权,踩了很多坑.什么用encryptedData.iv.code这些参数去登录,其实只要一个code就够了. 还有各种看不太明白的参数secret.authorization_co ...

  5. 微信小程序解密encryptedData报错pad block corrupted

    前要: 今天调试一下微信授权登录的时候老是第一次报错解密失败pad block corrupted,第二次授权的时候正常,因为第一次已经获取到手机号码! 后端代码: public static JSO ...

  6. 微信小程序授权信息报错:pad block corrupted

    接手的老代码中,授权用户信息和授权手机号之前每次都会调用wx.login 导致新用户第一次授权用户信息一定报错 之后后端打印日志发现报错pad block corrupted,经过看网上的解决办法后发 ...

  7. [crypto]-02-非对称加解密RSA原理概念详解

    说明:本文使用的数据来自网络,重复的太多了,也不知道哪篇是原创. 算法原理介绍 step 说明 描述 备注 1 找出质数 P .Q - 2 计算公共模数 N = P * Q - 3 欧拉函数 φ(N) ...

  8. [crypto]-01-对称加解密AES原理概念详解

    1.对称加解密 术语:P是明文,C是密文,K是密钥,E是加密算法,D是解密算 (1).常用的对称加解密有哪些? (2).加解密的模式 [ecb]这种模式是将整个明文分成若干段相同的小段,然后对每一小段 ...

  9. RSA签名解签 - 前端JSEncrypt库、jsrsasign库和后端UE4使用Crypto++互相加解签

    UE4中Crypto++库加密解密 第五节:RSA签名解签 - 前端JSEncrypt库.jsrsasign库和后端UE4使用Crypto++互相加解签 文章目录 UE4中Crypto++库加密解密 ...

最新文章

  1. 没有了传感器,工业机器人还能工作吗?
  2. Unknown lifecycle phase mvn
  3. C语言 int 转单精度浮点,单精度浮点数与十六进制转换 C语言程序 单片机也可用...
  4. 【机器学习】漫谈特征缩放
  5. as3是js和java_AS3与JS进行交互(一)
  6. 屏幕坏点检测图片_iPhone新机如何检测质量 iPhone新机检测质量步骤【详解】
  7. 机器学习实战(6):SVM-SMO-核函数 手写识别
  8. 如何让Activiti-Explorer使用sql server数据库
  9. 一个例子说明数据库union all的作用
  10. 深入理解Java虚拟机运行时数据区
  11. app测试比相比web测试需要注意的点
  12. 用O(lgn)时间求出两个已排序数组的中位数
  13. IMU与Gyro及其它相关
  14. C语言 一元多项式求导
  15. 基于51单片机的智能窗口控制系统(protues仿真+程序+论文+PPT+PCB)
  16. c++小游戏 走迷宫
  17. Nodejs教程15:net模块初探
  18. 阿里云域名转京东云服务器配置图
  19. pytorch 移植到Android平台(一)
  20. 互联网公司最常见的面试算法题大集合!

热门文章

  1. 计算机网络故障的一般识别与解决方法 论文,计算机网络常见故障的一般识别与解决方法-职业学院毕业论文.doc...
  2. PAT B1033旧键盘打字
  3. CVPR 2017:Interspeices Knowledge Transfer for Facial KeyPoint Detection(跨物种脸部关键点检测知识迁移)
  4. 播放assets文件里视频文件的问题
  5. 组建一个网络需要哪些网络设备和安全设备呢?
  6. 关于virtualbox虚拟电脑控制台严重错误解决方法。。。(博客园搬家至此,尚未整理)(六)
  7. 8 . STM32固件库介绍
  8. IE8经常无故卡死终极解决办法分享
  9. 一年降本 40%:基于云服务的技术成本精细化运营策略
  10. Jmeter二次开发准备-Jmeter插件开发