签名认证和加密传输#
为保障 API 请求的安全性与完整性,每次调用接口时,客户端需基于请求内容生成签名,并通过 HTTP 请求头的形式传递至服务端。平台会据此校验请求合法性,任何校验失败的请求都将被视为未授权并被拒绝处理。
请求头参数说明#
| 名称 | 描述 | 示例值 |
|---|
algorithm | 签名所使用的加密算法,目前支持:HMAC-SHA256 | HMAC-SHA256 |
date | 请求时间戳,建议使用 UTC 的 ISO-8601 格式 | 2025-05-12T00:00:00Z |
body-md5 | 非 GET 请求体的 MD5 哈希(若无请求体则应为空字符串) | a4e00bea676896c4524f112fd0e2f6b6 |
aio-sign | 使用 API Secret 对签名串签名后,再进行 Base64 编码生成的签名值 | QmFzZTY0RW5jb2RlZFNpZ25hdHVyZVN0cmluZw== |
aio-aes | 若响应内容加密,此字段表示 AES 加密使用的 IV,用于解密响应体 | pS1k2dfGjI9klq3j |
aio-api-key | 您在 AIO 平台创建的 API Key,用于识别调用方身份 | viQblWoiMslwpVgHtNBfLstt |
签名认证#
签名认证用于验证请求来源的合法性,防止数据在传输过程中被篡改。平台通过对请求关键信息进行 HMAC 签名,并通过请求头传输签名信息| 字段名 | 说明 |
|---|
algorithm | 使用的签名算法,支 持 HMAC-SHA256 或 HMAC-SHA3_256 |
date | 当前时间戳,使用 UTC 的 ISO-8601 格式 |
method | HTTP 请求方法,大写,如:GET、POST |
uri | 完整的请求路径,包括 path 和 query_string (如果有则加上) 例如 /v2/tx?page=1&size=10 |
body_md5 | POST 方法中,对请求体内容计算得到的 MD5 值 |
代码示例:GET /tx#
代码示例:POST /tx/pay-in#
加密传输(可选)#
为提升通信安全性,AIO 支持在回调或接口请求中通过 AES 对响应数据进行加密。客户端可通过请求头中的 aio-aes 字段传递加密所用的初始向量(IV),服务端将基于配置的 AES_KEY 返回加密数据。代码示例:GET /tx#
代码示例:POST /tx/pay-in#
Response 密文解密#
补充说明#
签名生成方法、AES 加密方法,请根据实际开发包文档集成。
若需追踪签名参数计算或调试接口,可适当输出签名原文、签名结果等信息。
Modified at 2026-05-18 08:39:01