Skip to main content

📄 正文

无论您是交易所、钱包还是平台方,只要拿到 DCS 交付的一对密钥,就可以用一套统一的签名规则调用所有 /open-api/ 接口——本页帮您把鉴权一次配通。作为持牌、自有 BIN 的发卡机构,DCS 对每一次接口调用都要求可验证的来源与防重放保护。 本页覆盖三件事:调用接口的 HMAC 签名、生产环境密钥的安全提取、以及授权通知所用的 RSA 公钥生成

1. 密钥与请求头

您会从 DCS 拿到什么

沙盒环境的 apiKey/secretKey 请联系 DCS 团队获取;生产环境必须走 安全提取流程

每个请求必带的头

接入机构对 /open-api/ 的每次调用,都需在 HTTP 头中携带(请求体为 JSON 时还需带 Content-Type: application/json,官网示例未列出,但缺失会导致 415 错误):
secretKey 仅用于本地计算签名,切勿在请求头中明文传输。

2. 接口签名(HMAC-SHA256)

签名规则

使用 HmacSHA256 算法,以 secretKey 为密钥,对拼接串签名:
输出为十六进制小写字符串。 拼接串各段说明:
签名算法固定为 HmacSHA256,请一律使用该算法。

防重放(谁做:DCS 校验 / 接入机构生成)

  • TIMESTAMP:DCS 默认只接受 5 秒内 的请求;超时请求一律拒绝。接入机构请确保本地时钟与 UTC 同步。
  • NONCE:每次请求生成一个 [10000, 99999] 的随机数,请勿复用。接入机构仍需为业务写操作设置幂等键,并避免在 5 秒窗口内重放完全相同的请求。

签名实现示例

JavaScript(Postman Pre-request Script)
Java

完整请求示例(GET)

此例中 payload = cardOrderRef=14(GET 的查询参数)。验证您的实现时,先用 DCS 提供的同一组 apiKey/timestamp/nonce/payload 复算出相同的 X-DAPI-SIGN,再上线。

统一响应结构

所有 /open-api/ 接口返回统一结构:
判断成功请以 code == "SYS_SUCCESS" 为准;失败时 code 为具体错误码(见错误码页)。

3. 生产环境密钥的安全提取

为避免生产环境的 apiKey/secretKey 在交付途中泄露,生产密钥不直接发给您,而是走一次性安全提取流程。
沙盒环境无需此流程,直接联系 DCS 团队获取即可。

流程(谁做)

  1. 接入机构提供:一个安全邮箱地址 + 一个用于提取的请求 IP。
    • 邮箱用于接收提取指引;该 IP 会被加入「提取密钥」白名单。
  2. DCS 发送:安全邮箱收到一封邮件,内含一个仅一次有效的临时安全链接。
  3. 接入机构提取:把 extractUrlextractSecretKey 拼接后,在指定 IP 的机器上执行,即可领取 apiKey/secretKey

邮件中的字段

成功响应
失败响应
若未能成功领取密钥:说明链接可能已在有效期内被使用、密钥存在泄露风险。请立即联系 DCS 商务,重新走邮件流程换发。

4. RSA 公钥(授权通知专用)

授权转发通知(DCS → 接入机构 auth_url)对敏感数据(如交易金额、币种)采用 RSA-2048 双向签名 + 加密,与上文调用接口用的 HMAC 是两套独立机制。授权通知没有额外的 AES/IV 层:业务字段整体以 RSA 分段加密,签名算法为 SHA256withRSA
  • HMAC:接入机构调用 /open-api/ 接口时使用(本页第 1–2 节)。
  • RSA:DCS 向接入机构推送授权通知时使用,保护授权流程上的敏感字段。
接入机构需自行生成一对 RSA 密钥,把公钥external_public_key)交给 DCS,私钥自己保管。

生成方式(谁做:接入机构)

第 3 步输出的单行字符串即 external_public_key,连同 auth_url 一并提供给 DCS。

DCS RSA 公钥(谁给:DCS)

接入机构验证 DCS 通知签名、加密返回数据时,使用 DCS 的 RSA 公钥。
  • 沙盒环境
  • 生产环境:请联系 DCS 团队获取。

加解密与签名 Java 示例

签名算法为 SHA256withRSA,密钥 2048 位,加解密按块分段(加密块 245 字节 / 解密块 256 字节):
授权通知的完整加解密与验签细节见 授权转发与加密

5. IP 白名单(三类,缺一不可)

DCS 对所有交互均设白名单。接入机构需向 DCS 提供沙盒与生产各自的静态出口 IP,分别用于以下三个方向:
沙盒与生产环境分别配置,请勿混用。生产密钥的「提取 IP」(第 3 节)与「接口调用 IP」可以不同,请分别向 DCS 说明用途。

下一步

鉴权配通后,前往 快速开始 跑通第一张卡,或先在 前置准备 确认开通、回调与白名单已就绪。授权通知的 RSA 加解密细节见 授权转发与加密