收藏
回答

Java版解密用户数据encryptedData始终报错

Java版本的后台解密用户数据这句byte[] resultByte = cipher.doFinal(dataByte);

始终报错javax.crypto.IllegalBlockSizeException: last block incomplete in decryption

尝试了各种方法,都无法解决,到底服务器返回的这个用户信息encryptedData的编码长度是固定的吗?

官方有没有解密的例子方法呢?

望帮助解决呢。

回答关注问题邀请回答
收藏

10 个回答

  • 李刚
    李刚
    2018-11-07

    是因为小程序传到后台的数据中。字符串“+”自动转化成了“ ”空格,导致解密失败,后台将字符串改回来就好了。

    2018-11-07
    有用 1
    回复 1
    • 疯狂敲代码
      疯狂敲代码
      2023-05-16
      后台怎么处理,大佬
      2023-05-16
      回复
  • fly
    fly
    2017-10-31

    还有小程序有bug: beta版本的正式版本的session保存了会互相影响到

    2017-10-31
    有用
    回复
  • fly
    fly
    2017-10-31

    我解决了,是因为按下获取手机号后就不能再wx.login,这样会把session变了,和点下按钮之前的session不一样就返回失败了!

    2017-10-31
    有用
    回复
  • 2017-10-30

    秋秋加你了  你咋做的? 有效吗?  真是想吐


    2017-10-30
    有用
    回复
  • fly
    fly
    2017-10-30

    609 737 181 你这个就是decode url就可以

    2017-10-30
    有用
    回复
  • 2017-10-30

    你有什么办法没?  怎么加你   我们交流一下呢

    2017-10-30
    有用
    回复
  • 2017-10-30

    app那边打印出来的里面有+号一样的  然后到后台直接获取到的字符串是有问题的  估计  我大概找出原因了  这些个大神也不出来解答解答  我得先试试看

    2017-10-30
    有用
    回复 1
    • 疯狂敲代码
      疯狂敲代码
      2023-05-16
      怎么处理的?
      2023-05-16
      回复
  • fly
    fly
    2017-10-30

    奇怪,一直可以, 分享到群里打开就肯定出现这个错误了.

    调用A服务器不行,调用B服务器就可以,然后再调用A服务器也可以,代码都一样


    2017-10-30
    有用
    回复
  • 2017-10-30

    没有   不过我发现在app里面打印出来的跟后台获取的字符串不一样的啊

    2017-10-30
    有用
    回复
  • fly
    fly
    2017-10-30

    解决了吗? 我也出现这样的, 用的是jre7

    2017-10-30
    有用
    回复
登录 后发表内容