在国际交易开放平台,url请求的多个参数都要参与签名(与文件上传有关的api中,文件字节流那个参数不参与签名,POST请求access_token通过请HTTP请求头传递,不参与签名),下面以两个参数为例,假设请求的url格式如下所示:

签名示例:

https://open.patpat.com/api/current_time?b=2&a=1(假设app_secret= 123456

  • 1、 构造签名因子:拼装的参数。参数 b=2&a=1,首先将参数的key和value拼在一起,得到b2和a1,然后按照首字母排序,得到a1和b2,最后按顺序拼在一起得到a1b2 ,得到s
  • 2、 对签名因子执行hmac_sha1算法。 Signature=uppercase (hex (hmac_sha1 (s, app_secret)) 得到签名69DAA1B8D1740A85392A75E881ECB64989FA2A72

——app_secret为签名密钥,与urlPath中的app_secret对应

——hmac_sha1为通用的hmac_sha1算法,各编程语言一般都对应类库

——hex为转为十六进制

——uppercase为转为大写字符

©2015 Interfocus Inc. All Rights Reserved