请求验证

签名算法

代理钱包所有API请求都需要进行签名认证。我们使用HMAC-SHA256算法对请求参数进行签名,确保请求的合法性和安全性。

请求头参数

每个API请求都需要在HTTP请求头中包含以下参数:

参数名
是否必须
说明

AVE-ACCESS-KEY

API访问密钥

AVE-ACCESS-TIMESTAMP

请求时间戳(UTC时间)

AVE-ACCESS-SIGN

请求签名

签名生成步骤

  1. 准备签名所需的信息:

  • HTTP请求方法(GET/POST,大写)

  • 请求路径(例如:/sendSwapOrder)

  • 请求时间戳(UTC时间)

  • 请求体(如果是POST)

  1. 构造签名字符串:

circle-info
  • 如果请求体是JSON格式,需要对JSON对象按键名进行字典序排序

  • 请求体中不应包含任何空格或换行符

  • Get请求路径中请求参数不参与签名

  1. 使用HMAC-SHA256算法和API Secret生成签名:

  • 使用API Secret作为密钥

  • 对签名字符串进行HMAC-SHA256计算

  • 将结果进行Base64编码

签名示例

一、 在线生成签名的示例代码:可将signature_demo.html部署到服务器上,然后通过浏览器访问即可。

file-download
13KB

部署方式:

  1. 在html所在目录通过python 命令启动一个http服务:python -m http.server 8000,保证8000端口可以访问,就可以在浏览器上访问 http://{服务器ip}:8000/signature_demo.htmlarrow-up-right 即可。

  2. 通过nginx alias 将signature_demo.html文件映射到服务器的根目录下,即可在浏览器上访问http://服务器ip:端口/signature_demo.html。

二、通过代码生成签名:

以下是使用不同编程语言生成签名的示例代码:

Go语言示例

Java语言示例

Python语言示例

Last updated