收藏
回答

jsapi支付接口回调验签结果总是false 是什么原因呢?

jsapi支付接口回调验签结果总是false 是什么原因呢

//certPublickey 解密后平台证书的公钥

// sign 接口应答签名

//s 接口应答字符串(应答时间戳\n应答随机串\n应答主体\n)

  public bool VerifySign(string certPublickey, string sign, string s)

    {

        writeLog(certPublickey+",,"+sign+",,"+s);

        X509Certificate2 publicCert = new X509Certificate2(Encoding.UTF8.GetBytes(certPublickey));

        RSACryptoServiceProvider publicKey = (RSACryptoServiceProvider)publicCert.PublicKey.Key;

        SHA256CryptoServiceProvider sHA = new SHA256CryptoServiceProvider();

        return publicKey.VerifyData(Encoding.UTF8.GetBytes(s), sHA, Convert.FromBase64String(sign));

    }

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

1 个回答

  • 蔡婷
    蔡婷
    发表于移动端
    2021-04-16
    您好,V3验签失败,请按照以下链接中的提示排查,谢谢! https://wechatpay-api.gitbook.io/wechatpay-api-v3/qian-ming-zhi-nan-1/qian-ming-yan-zheng V2参考:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3
    2021-04-16
    有用
    回复 1
    • -.-
      -.-
      2021-04-16
      请问如果是第一次使用平台证书进行验签,必须要使用工具下载证书吗?第一次不能使用 v3/certificates 接口直接下载解密公钥验签吗?
      2021-04-16
      回复
登录 后发表内容
问题标签