Skip to content

投诉通知验签错误 #3288

Closed
Closed
@je45

Description

@je45

简要描述

微信支付投诉通知验签错误,通知头部签名Base64解码异常。

模块版本情况

  • WxJava 模块名: weixin-java-pay
  • WxJava 版本号: 4.6.0

详细描述

导致的原因是因为微信的签名探测,会生成"WECHATPAY/SIGNTEST/"开头的签名值,导致签名base64解码异常。
希望能统一处理下微信签名探测流量。

日志

java.lang.IllegalArgumentException: Last unit does not have enough valid bits
	at java.util.Base64$Decoder.decode0(Base64.java:734) ~[?:1.8.0_391]
	at java.util.Base64$Decoder.decode(Base64.java:526) ~[?:1.8.0_391]
	at java.util.Base64$Decoder.decode(Base64.java:549) ~[?:1.8.0_391]
	at com.github.binarywang.wxpay.v3.auth.CertificatesVerifier.verify(CertificatesVerifier.java:33) ~[weixin-java-pay-4.6.0.jar:?]
	at com.github.binarywang.wxpay.v3.auth.CertificatesVerifier.verify(CertificatesVerifier.java:46) ~[weixin-java-pay-4.6.0.jar:?]
	at com.github.binarywang.wxpay.v3.auth.AutoUpdateCertificatesVerifier.verify(AutoUpdateCertificatesVerifier.java:121) ~[weixin-java-pay-4.6.0.jar:?]
	at com.github.binarywang.wxpay.service.impl.BaseWxPayServiceImpl.verifyNotifySign(BaseWxPayServiceImpl.java:351) ~[weixin-java-pay-4.6.0.jar:?]
	at com.github.binarywang.wxpay.service.impl.BaseWxPayServiceImpl.parseComplaintNotifyResult(BaseWxPayServiceImpl.java:1294) ~[weixin-java-pay-4.6.0.jar:?]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions