签名
更新时间:2023.04.28微信支付API v3通过验证签名来保证请求的真实性和数据的完整性。
# 请求签名
商户需要使用自身的私钥对API URL、消息体等关键数据的组合进行SHA-256 with RSA签名。请求的签名信息通过HTTP头Authorization
传递,具体说明请见 签名生成指南。没有携带签名或者签名验证不通过的请求,都不会被执行,并返回401 Unauthorized
。
# 应答签名
对于签名验证成功的请求,微信支付API v3会使用微信支付的平台私钥对应答进行签名。签名的信息包含在HTTP头部中,具体说明请见 签名验证指南。
注意
- 请使用微信支付的公钥进行验签,它包含在微信支付平台证书中。
- 请对携带了签名的应答进行验签。
- 没有携带签名的成功应答(HTTP状态码为2xx),应认为是伪造或被篡改的应答。
# 回调通知签名
当调用商户的接口时,微信支付会使用微信支付的平台私钥对回调请求进行签名。签名的方法同应答签名的方式一致,商户必须 使用微信支付公钥验证回调的签名。
通知必须验证微信支付签名,避免被恶意攻击。
文档是否有帮助