1. 把报文中除了“signature”外的参数,按字母顺序排列,以“key1=value1|key2=value2”的形式连接组成待签名的字符串。
2. 使用与APP ID配对的APP KEY,采用HMAC SHA256算法,对待签名的字符串进行签名。
3. 对签名结果使用BASE64编码,生成44字节的字符串,即为签名值。
APP KEY(经BASE64编码):
J8aZLFk/n4Z6+yQ3+rKkMcS6jsSuCGbE9Aswu2Ghcck=
请求报文内容(除signature):
{ "app_id":"2024101165732077", "version":"20240801", "trx_id":"2024092827026736", "card_no":"6225237625260000", "signature":"" }
待签名字符串:
app_id=2024101165732077|card_no=6225237625260000|trx_id=2024092827026736|version=20240801
签名值:
fsty60KT6ce/cWDNFG+5fq0ybKU3JilTneIDVHXXV5U=
完整请求报文:
{ "app_id":"2024101165732077", "version":"20240801", "trx_id":"2024092827026736", "card_no":"6225237625260000", "signature":"fsty60KT6ce/cWDNFG+5fq0ybKU3JilTneIDVHXXV5U=" }