- 目前除了通用接口,所有其它接口都规定需要进行签名验证,以保证请求数据不会被恶意篡改;
- 如果需要签名,签名应当在HTTP请求头中以
Signature
字段传递; - 签名接口都需要传递
timestamp
参数 ,其值应当是请求发送时刻的UNIX时间戳(毫秒)。服务器收到请求时会判断请求中的时间戳,如果是10
秒之前发出的,则请求会被认为无效。
签名步骤
1
构建 Payload
将参数列表排列成一个字符串,用
&
分隔每个参数,例如:
tokenName=USDT&amount=500&chainName=Ethereum&toAddress=0x9C903Cc6233ea0E9275452C13efe967a04EBe58b×tamp=1724985575933
2
使用 HMAC SHA-256 算法对 Payload 进行签名
3
将输出的签名编码为 16 进制格式
966174f21ae551a832a4830231e3d3dacf4ad326dc437d391ec525dd4fdaab44