请求签名生成与签名验证
概念解释
以下表格阐述了调用图普 API 过程中出现的名词及其含义
| 术语 | 解释 |
|---|---|
SID | 图普应用 ID,对应您在客户控制台中的 SID |
TaskId | 图普识别任务 ID,对应于客户控制台中 SID 下的 taskId |
签名生成流程简述
图普 API 认证方式为签名认证,进行 API 请求与结果处理的过程可以简述为以下步骤:
- 步骤 1: 获取进行调用的
应用 ID(即SID)。 - 步骤 2: 客户端生成签名时间戳
timestamp和一个随机数(建议使用 Unix 时间戳或若干位随机整数)nonce。 - 步骤 3: 使用英文半角逗号
,将SID、timestamp、nonce, 拼接组成 签名原文。例如:
| 字段 | 示例值 |
|---|---|
| SID | 5bbdbb4a412e5e993ce822c2 |
| timestamp | 1665399985 |
| nonce | 0.1527317095951506 |
| 签名原文 | 5bbdbb4a412e5e993ce822c2,1665399985,0.1527317095951506 |
- 步骤 4: 使用
RSA-SHA256散列算法和客户私钥将 步骤 3 中生成的 签名原文 进行加密得到 签名密文 - 步骤 5: 将 步骤 4 中生成的 签名密文 进行
BASE64编码得到最终的 签名结果 - 步骤 6: 将 步骤 5 中生成的 签名结果 以及 步骤 2 中生成的签名时间戳
timestamp和随机数(建议使用 Unix 时间戳或若干位随机整数)nonce按照 API 文档中的格式封装 HTTP 请求体
注意
封装请求体时使用的 timestamp 和 nonce 必须为 步骤 2 中生成的 timestamp 和 nonce ,请勿重新生成