收藏
回答

公众号安全模式下部分事件Encrypt解密失败(BadPaddingException)?

在公众号开启安全模式(AES加密)后,服务端接收微信推送消息时,出现部分事件解密失败的问题。

现象如下:

1. subscribe(关注事件)和 text(文本消息)可以正常解密并处理

2. 但 TEMPLATESENDJOBFINISH(模板消息发送结果通知)事件在解密时失败

3. 解密报错信息:javax.crypto.BadPaddingException: pad block corrupted

4. encrypt 字段来源为微信推送 XML 中的 Encrypt 节点,内容完整且未被截断

5. encodingAesKey 使用公众号后台配置的 AES Key(未做多环境或多 key 切换)

6. subscribe/text 正常,但模板回调失败

请求帮助确认:

- TEMPLATESENDJOBFINISH 是否使用与普通消息不同的加密机制或 key

- 是否存在该事件类型不支持 AES 解密的情况

- 或是否需要额外配置支持该事件的解密方式

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

1 个回答

  • 小悟
    小悟
    04-22

    您好,服务端是Java开发的吗

    04-22
    有用
    回复 2
    • robim
      robim
      发表于移动端
      04-22
      是的
      04-22
      回复
    • 小悟
      小悟
      04-22回复robim
      网上搜一下,下载US_export_policy.jar和local_policy.jar,放到/jdk/jre/lib/security这个路径下面,重启一下。
      04-22
      回复
登录 后发表内容