收藏
回答

参数解密报错AEADBadTagException: Tag mismatch! ?

1.针对 https://pay.weixin.qq.com/wiki/doc/apiv3/Offline/apis/chapter5_9_32.shtml 可以正常解密,我看他们算法都是一样的,


2.针对


https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter8_6_6.shtml

不清楚,相同的算法,为啥第一个可以正常解密,第二个就解密不了!!!

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

1 个回答

  • Memory
    Memory
    07-12

    加密使用的AES-GCM包含了Galois Message Authentication Code (GMAC)的消息认证机制。解密时会对数据的完整性进行校验。出现tag mismatch异常,表示解密时的消息认证失败。通常有三种可能:

    • 使用了错误的API v3密钥,如使用了其他商户号的密钥,或者使用了APIv2的APIKey。
    • 密文不正确。请检查提交解密的密文和收到的密文。注意报文中的密文经过了Base64编码。
    • 解密时接口遗漏传入附加数据(associated_data)。

    如果是同一个商户号会员通知ok,可以排除密钥问题,大概率是密文存在问题或者associated_data搞错了

    07-12
    有用
    回复 4
登录 后发表内容