对接签名
1. 协议
请求协议:https协议post请求
Content-Type: application/json
报文格式(请求&返回):json
2. 请求地址
uat环境:https://uat-paas-gateway.e-buychina.com
3. 安全签名
签名算法:
为了保证请求及接收数据在传输过程中不被篡改,对接口请求及响应数据统一使用sha256进行签名。请求需要计算签名值,响应报文需要校验paas返回的签名值。
签名方法:
将json格式请求报文第一级key按照字母表顺序排序后使用key1=value1&key2=value2格式拼接成字符串最后再拼上签名密钥。
特别说明:
如果value也是一个对象,将对象转成json转字符串后参与签名。
使用SHA-256签名算法
4. 签名示例:appId=ebuyde43082858d1;KEY=D6954F665B12A4318DF2DE43082858DE
1、原始请求报文
{
"action":"refund",
"appId":"ebuyde43082858d1",
"content":{
"outTradeNo":"202107071625649048080",
"refundTradeNo":"202107071625649048080"
},
"lang":"zh_CN",
"signType":"sha256",
"timestamp":1625649048115,
"uuid":"20210707-cd28bed6332846979cf012223c981a14"
}
2、签名字符串拼接
content对象先转String字符串后再拼接,键值key值根据ASCII码的顺序拼接
拼接示例:action=refund&appId=ebuyde43082858d1&content={"outTradeNo":"202107071625649048080","refundTradeNo":"202107071625649048080"}&lang=zh_CN&signType=sha256×tamp=1625649048115&uuid=20210707-cd28bed6332846979cf012223c981a14
3、签名前字符串
拼接KEY:action=refund&appId=ebuyde43082858d1&content={"outTradeNo":"202107071625649048080","refundTradeNo":"202107071625649048080"}&lang=zh_CN&signType=sha256×tamp=1625649048115&uuid=20210707-cd28bed6332846979cf012223c981a14&D6954F665B12A4318DF2DE43082858DE
4、签名结果
sign=cefb7347b73b2793a6d4a99993480500bd74752e7b983acedb9515166e22d271
No Comments