Skip to content

Latest commit

 

History

History
147 lines (113 loc) · 5.79 KB

File metadata and controls

147 lines (113 loc) · 5.79 KB

CipherGate 多语言对接示例

AYssu CipherGate 卡密授权系统的多语言第三方对接示例

官方网站 · 快速开始 · 示例下载 · 开发文档


项目简介

本项目为 AYssu CipherGate 卡密授权系统提供 12 种主流编程语言 的完整对接示例,帮助开发者快速集成卡密验证、设备绑定、应用公告、版本更新等功能到自有应用中。

所有示例均经过测试验证,可直接运行。

支持语言

语言 加密方式 目录 一键下载
Java AES ciphergate-java-aes/ 下载
Java RSA ciphergate-java-rsa/ 下载
C++ AES ciphergate-cpp-aes/ 下载
Python AES ciphergate-python-aes/ 下载
JavaScript AES ciphergate-javascript-aes/ 下载
TypeScript AES ciphergate-typescript-aes/ 下载
Go AES ciphergate-go-aes/ 下载
Rust AES ciphergate-rust-aes/ 下载
Kotlin AES ciphergate-kotlin-aes/ 下载
Scala AES ciphergate-scala-aes/ 下载
PHP AES ciphergate-php-aes/ 下载
Lua AES ciphergate-lua-aes/ 下载

API 能力

所有示例均完整实现以下接口:

接口 路径 说明
卡密登录 POST /api/v1/card/login 验证卡密并绑定设备
卡密换绑 POST /api/v1/card/rebind 更换绑定设备
应用公告 POST /api/v1/app/announcement 获取应用公告信息
应用变量 POST /api/v1/app/variables 获取自定义变量配置
版本检查 POST /api/v1/app/update-check 检查是否有新版本
下载更新 GET 下载更新包

安全机制

  • AES-128-ECB 对称加密传输业务数据
  • HMAC-SHA256 请求/响应签名验证
  • 时间戳校验 防重放攻击(15秒偏差)
  • Nonce 随机数 每次请求唯一标识

快速开始

方式一:下载示例包

examples/ 目录下载对应语言的 zip 包,解压后按 运行文档.md 执行即可。

方式二:克隆仓库

git clone <repository-url>
cd ciphergate-samples

各语言运行命令

语言 运行命令 环境要求
Java ./gradlew run Java 17+
C++ mkdir build && cd build && cmake .. && make && ./ciphergate-client CMake, OpenSSL, libcurl
Python pip install -r requirements.txt && python main.py Python 3.8+
JavaScript node main.js Node.js 18+
TypeScript npm install && npm start Node.js 18+, TypeScript
Go go mod tidy && go run . Go 1.21+
Rust cargo run Rust 1.70+
Kotlin ./gradlew run Java 17+, Kotlin
Scala ./gradlew run Java 17+, Scala
PHP php main.php PHP 7.4+
Lua luajit main.lua LuaJIT 2.1+

项目结构

ciphergate-samples/
├── ciphergate-java-aes/          # Java AES 示例
├── ciphergate-java-rsa/          # Java RSA 示例
├── ciphergate-cpp-aes/           # C++ AES 示例
├── ciphergate-python-aes/        # Python AES 示例
├── ciphergate-javascript-aes/    # JavaScript AES 示例
├── ciphergate-typescript-aes/    # TypeScript AES 示例
├── ciphergate-go-aes/            # Go AES 示例
├── ciphergate-rust-aes/          # Rust AES 示例
├── ciphergate-kotlin-aes/        # Kotlin AES 示例
├── ciphergate-scala-aes/         # Scala AES 示例
├── ciphergate-php-aes/           # PHP AES 示例
├── ciphergate-lua-aes/           # Lua AES 示例
├── examples/                     # 打包好的示例下载
├── pack.sh                       # 打包脚本
└── README.md                     # 本文件

配置说明

所有示例使用以下默认配置(可自行修改):

服务端地址: https://www.ayssu.com
应用 Key:   iLyilmnIJJXRpa0jPbYrNs01eeMoTH8q
应用 Secret: HHjXxmUNtSeERqUGLxu2mmGTCMzdSmMNXAAHTB8ZRFzHiKgQIpSegy4iwrRFuE1p
加密密钥:   cg_demo_key_7756
卡密:       VEXXM8NH9QLPRGRS
设备 ID:    dev-0012

⚠️ 以上为演示配置,正式使用时请替换为您自己的应用密钥。

集成步骤

  1. 选择语言 — 从上方表格选择对应的示例包
  2. 引入代码 — 将 ThirdPartySignThirdPartyCardClient 类集成到您的项目
  3. 配置参数 — 填入您的 AppKey、AppSecret、AES 密钥
  4. 调用接口 — 根据业务需求调用对应 API 方法

常见问题

问题 原因 解决方案
THIRD_PARTY_AUTH_ERROR AES 密钥不匹配 确认密钥与服务端配置一致
THIRD_PARTY_AUTH_BAD_SIGNATURE 签名错误 检查 AppSecret 是否正确
DECRYPT_MISMATCH 请求体字段与加密数据不一致 确保业务字段未被篡改
响应已过期 客户端与服务端时间差 > 15 秒 同步系统时间
版本检查返回 500 客户端版本高于服务端最高版本 降低版本号或联系管理员

技术支持

如有问题,请联系 AYssu 技术支持团队。

许可证

本项目仅供授权用户使用。未经授权,禁止复制、分发或用于商业用途。