收藏
回答

加密数据解密算法 nodejs 偶尔触发报错 WXBizDataCrypt.js



数据


appid:wx3bec1d60196f34c5

session_key:65Nv+Ti0xAint3nRRIfBgg==


encryptedData:zkaajv9OFRNly2hD54kEAA9m+SvjCIRVgkGvK4h2R2CZFazQvVeJnHXjVWcIqIyJ7be5UGSWti7EH2UKSowwdRQchyKmzkJow5va9Z/TzUd15Wm3ayq/pgEHdY/AdM7HmKoV5TIACuikZgMz6+pfRfY3PLfvnqqd5zefeod8UVFs0jzQqi33Jpa9RaTcx0bezFjxf7Y+8a7naV1qpUUIGdj10iBz/d5S02X2pWPUiPJzsajs/h/jravwOXkYegXTGaZdJDL18clYsBFnT+PMsffVxydXr7hWdHp9kkJ3sVW3N4tdcXIIaYaPF3zaEp8BV13wlKVP+6BxjQTR03afbhfVLWC852qjYh+isJ7zB6eQ8ylK4FBLqaciI0X37qVUBLknYKzlKlh9yryeFjdlLJkevFVdvVll31NXc6/cji8zUvtTNNFWw9esESuuFzcZkw4VtNjLO3JKQ+q84suEZY520d5v1yeJsWl/EZt+5wRJSIGAirD9Zn7293CAufpLWPujZcgY5hM4YVKsHsX/r34IAbKnCfUtxIjlqbaDP4E=


iv:HY8qw9vi87wU+CxX4CXi7g==



错误如下


06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt



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

9 个回答

  • peng
    peng
    发表于小程序端
    2020-04-25
    这个需要仔细看下sessionkey的机制,因为会存在授权是的sessionkey 与解密时不一致导致报错。
    2020-04-25
    有用
    回复
  • Hope
    Hope
    2019-09-23

    这个问题现在还在 有解决吗? 老铁们

    2019-09-23
    有用
    回复 4
    • 神经蛙
      神经蛙
      2019-09-23
      sessionKey 和code 对不上 或者过期 重新走下授权流程 拿到最新的code 换 sessionKey
      2019-09-23
      回复
    • Hope
      Hope
      2019-09-23回复神经蛙
      啊,每次测试都是请求接口拿最新的
      2019-09-23
      回复
    • Hope
      Hope
      2019-09-23回复神经蛙
      每次拿最新的 按理说不应该出错
      2019-09-23
      回复
    • 🇭 🇺 🇮
      🇭 🇺 🇮
      2021-08-09
      我每次也是拿最新的code 换sessionKey,还是会报错。
      Error: IllegalBuffer
      at WXBizDataCrypt.define.push.WXBizDataCrypt.decryptData
      2021-08-09
      回复
  • 洛竹
    洛竹
    2018-06-06
    看这个问题比较早了,现在还有这个问题吗
    2018-06-06
    有用
    回复
  • 理查德
    理查德
    2018-05-13

    我也同样遇到这个问题,用“微信开发者工具”  模拟运行的小程序没有问题,但是 用手机扫一扫进入之后, 后台就出现解密手机号码失败:

    Error: Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt

        at WXBizDataCrypt.decryptData (/opt/dida-server/src/api/service/WXBizDataCrypt.js:24:11)

        at Generator.next (<anonymous>)

        at step (/opt/dida-server/app/api/controller/descro.js:1:191)

        at /opt/dida-server/app/api/controller/descro.js:1:437

        at Promise._execute (/opt/dida-server/node_modules/thinkjs/node_modules/bluebird/js/release/debuggability.js:272:9)

        at Promise._resolveFromExecutor (/opt/dida-server/node_modules/thinkjs/node_modules/bluebird/js/release/promise.js:473:18)

        at new Promise (/opt/dida-server/node_modules/thinkjs/node_modules/bluebird/js/release/promise.js:77:14)


    2018-05-13
    有用
    回复
  • 2018-05-10

    可是一点都不频繁啊@LIVE2RISE

    2018-05-10
    有用
    回复
  • 🎶
    🎶
    2018-05-07

    我发现一个用户不要故意频繁解密,好像就不会错误。

    2018-05-07
    有用
    回复
  • 2018-05-04

    我也遇到这个问题。

    2018-05-04
    有用
    回复
  • 🎶
    🎶
    2018-03-28

    出现的概率差不多是 二分之一吧,很频繁 Error: Illegal Buffer

    2018-03-28
    有用
    回复 1
    • vlily
      vlily
      2020-04-25
      后来有解决么
      2020-04-25
      回复
  • 叫我Ray
    叫我Ray
    2018-01-31

    我在开发过程中也遇到了这个问题!十次有1~2次会解密错误。请微信工作人员看一下,我用的是官方提供nodejs方法。

    2018-01-31
    有用
    回复 2
    • 毕竟1米八 ¹
      毕竟1米八 ¹
      2021-04-22
      我每次调用都会出现...
      2021-04-22
      回复
    • 🇭 🇺 🇮
      🇭 🇺 🇮
      2021-08-09
      这个触发的概率挺大的,运气好10次有1次,运气不好,会频繁触发
      2021-08-09
      回复
登录 后发表内容