Skip to content

创建安全会话

POST/web/v1/secure-channel/sessionNone

通过交换 RSA 加密的 AES 密钥创建一个新的安全通道会话。客户端使用服务器的 RSA 公钥加密其请求和响应 AES 密钥,然后提交到此接口。服务器解密并存储密钥,返回会话 ID 用于后续加密通信。

鉴权

Auth Chain: None — 这是一个公开接口,不需要 JWT 或 Turnstile。

请求参数

NameTypeRequiredInDescription
keyIdstringYesbody从获取公钥接口获得的 RSA 密钥 ID
encReqKeystringYesbodyBase64 编码的 RSA 加密 AES 密钥,用于请求加密
encRespKeystringYesbodyBase64 编码的 RSA 加密 AES 密钥,用于响应加密

成功响应

成功200
{
  "version": "1.3.0",
  "timestamp": 1709337600000,
  "success": true,
  "code": "2000",
  "message": "SUCCESS",
  "data": {
    "sessionId": "sess_abc123def456",
    "expiresAt": 1709424000000
  }
}

错误响应

Bad Request400
{
  "success": false,
  "code": "4000",
  "message": "Invalid or expired RSA key ID"
}
Bad Request — 解密失败400
{
  "success": false,
  "code": "4000",
  "message": "Failed to decrypt session keys"
}

说明

  • expiresAt 字段为毫秒级时间戳,表示会话过期时间。
  • 会话密钥永远不会以明文返回;仅提供会话 ID 和过期时间。
  • 使用流程:(1) 获取公钥,(2) 生成两个随机 AES-256 密钥(一个用于请求,一个用于响应),(3) 使用公钥进行 RSA 加密两个密钥,(4) 调用此接口,(5) 在后续加密请求中使用会话 ID。

内部文档