微信支付宝签名逻辑鉴赏

在现今的互联网行业中,一些软件功能开发、流量获取,已经绕不开微信、支付宝等流量入口,特别是在做支付时。

本文调研了微信、支付宝的接口请求验证方式,希望对大家对接微信、支付宝的数据签名验证有一些帮助。

微信支付签名验签

一、必须步骤

设置Key密钥,需要商户自行到微信后台中设置。
根据邮件内容下载证书。

二、签名生成算法

  1. 将所有非空参数按照参数名ASCII码从小到大进行排序,包含随机参数:nonce_str,并以&字符进行组合成字符串stringA,即stringA=key1=value1&key2=value2…;
  2. 将key数据附加到stringA字符串之后,以&字符进行连接,得到字符串tempString,即tempString=stringA+&key=**;
  3. 对tempString使用md5算法获取hash值,并将hash值全部转化为大写,得到sign;
  4. 在进行接口请求时必须带上参数:nonce_str、sign。

三、证书方式

微信中,在进行退款、撤销等情形下使用的是证书方式。
证书会在注册商户时,微信官方也邮件方式告知到商户去下载证书。

四、其他相关

项目 说明
接口请求方式

你可能感兴趣的:(微信支付宝,后端)