# CyberExch **Repository Path**: liuyun073/CyberExch ## Basic Information - **Project Name**: CyberExch - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-23 - **Last Updated**: 2026-07-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CyberExch ## 项目简介 CyberExch 是一个面向全球用户的 C2C + OTC 加密货币交易平台,支持 BTC、ETH、USDT 等主流数字资产交易。 从开源项目 ZTuoExchange 改造而来,采用 Spring Cloud 微服务架构,已完成全面的现代化升级。 ### 核心功能 - **OTC交易**:支持法币与数字货币的场外交易,完整广告/订单/聊天/申诉链路 - **币币交易**:支持限价单/市价单,Java 内存撮合引擎(价格优先、时间优先) - **杠杆交易**:支持数字货币杠杆交易 - **钱包服务**:支持 BTC、ETH、USDT(OMNI/ERC20)、ACT、ECT 等多币种充值、提现、地址管理 - **用户中心**:用户注册、登录、实名认证、Google 验证、推广邀请 - **管理后台**:完整的后台管理功能(用户/财务/OTC/交易/系统/内容管理) - **行情服务**:实时行情数据、K线图表、WebSocket/Netty 双通道推送 - **活动管理**:注册礼品、积分系统、投票、理财竞猜 ## 技术架构 ### 后端技术栈 - **Java 11**:开发语言 - **Spring Boot 2.7.18**:基础框架 - **Spring Cloud 2021.0.8**:微服务框架 - **Spring Cloud Alibaba 2021.0.5.0 (Nacos)**:服务注册与配置中心 - **MyBatis-Plus 3.5.3.1**:ORM 框架 - **MySQL 8.0.33**:关系型数据库 - **MongoDB 4.0+**:行情/K线时序数据存储 - **Redis 5.0+**:缓存/会话 - **Elasticsearch 7.17.9**:全文搜索 - **Kafka 3.4.0**:消息队列(撮合/行情/钱包异步通信) - **Shiro 1.13.0**:权限控制 - **Netty 4.1.100**:网络通信(移动端实时推送) - **Knife4j 4.5.0**:API 文档(OpenAPI 3) ### 前端技术栈 - **Vue 3.4 + TypeScript + Element Plus + Vite 5**:管理后台 + 用户前端 - **UniApp 3.0 + Vue 3 + TypeScript**:移动端跨平台(支持 App/小程序/H5) ## 项目结构 ``` CyberExch/ ├── 00_framework/ # 后端微服务(Java 11 / Spring Cloud) │ ├── gateway/ # API网关 (7000) │ ├── ucenter-api/ # 用户中心API (7001) │ ├── admin/ # 管理后台API (7002) │ ├── exchange-api/ # 币币交易API (7003) │ ├── exchange/ # 撮合引擎服务 (7004) │ ├── otc-api/ # OTC交易API (7005) │ ├── market/ # 行情服务 (7006) │ ├── chat/ # 聊天服务 (7007) │ ├── wallet/ # 钱包服务 (7008) │ ├── open-api/ # 开放API (7009) │ ├── exchange-core/ # 撮合引擎核心库 │ ├── margin-core/ # 杠杆核心库 │ ├── otc-core/ # OTC核心库 │ ├── common-web/ # 公共Web模块 │ ├── core/ # 核心基础库 │ └── netty/ # Netty推送框架 │ ├── 01_wallet_rpc/ # 钱包RPC服务(Java 11 / Web3j / Bitcoin RPC) │ ├── bitcoin/ # BTC钱包 (6001) │ ├── bitcoin-usdt/ # OMNI-USDT钱包 (6002) │ ├── eth/ # ETH钱包 (6003) │ ├── ect/ # ECT钱包 (6004) │ ├── act/ # ACT钱包 (6005) │ └── eth-token/ # ERC20代币钱包 (6006) │ ├── 04_web_admin_vue3/ # 管理后台前端(Vue 3 + TypeScript)~48页,100%完成 ├── 05_web_front_vue3/ # 用户前端(Vue 3 + TypeScript)43页,100%完成 ├── 06_web_uniapp/ # 移动端跨平台(UniApp 3 + Vue 3)53页,100%完成 ├── docs/ # 项目文档(架构/设计/运维/用户手册) ├── tests/ # 自动化测试 ├── nginx/ # Nginx反向代理配置 └── docker-compose.yml # Docker 一键部署配置 ``` ## 快速开始 ### 环境要求 - JDK 11+ - Maven 3.6+ - Nacos 2.x - MySQL 8.0+ - Redis 5.0+ - MongoDB 4.0+ - Elasticsearch 7.x - Kafka 3.x ### 安装步骤 1. **克隆代码** ```bash git clone cd CyberExch ``` 2. **构建后端** ```bash cd 00_framework mvn clean install -DskipTests ``` 3. **数据库配置** - 创建数据库:`CREATE DATABASE bitrade DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;` - 导入初始化脚本:`mysql -u root -p bitrade < 00_framework/sql/init.sql` 4. **启动 Nacos** ```bash # 下载并启动 Nacos sh nacos/bin/startup.sh -m standalone # 访问 http://localhost:8848/nacos ``` 5. **启动微服务** ```bash # 按顺序启动:网关 → 核心 → 业务服务 cd 00_framework/gateway && mvn spring-boot:run cd 00_framework/ucenter-api && mvn spring-boot:run cd 00_framework/admin && mvn spring-boot:run # ... 依次启动其他服务 ``` 6. **构建前端** ```bash # 管理后台 cd 04_web_admin_vue3 && npm install && npm run dev # 用户前端 cd 05_web_front_vue3 && npm install && npm run dev # 移动端(使用 HBuilderX 打开 06_web_uniapp) ``` ## 核心模块说明 ### 00_framework 后端微服务(10个服务) | 服务 | 端口 | 说明 | |------|------|------| | gateway | 7000 | API网关,路由转发 + CORS + 负载均衡 | | ucenter-api | 7001 | 用户中心:注册/登录/实名/资产/提币/推广 | | admin | 7002 | 管理后台API:用户/财务/OTC/交易/系统管理 | | exchange-api | 7003 | 币币交易入口:下单/撤单/委托查询 | | exchange | 7004 | 内存撮合引擎:价格优先/时间优先撮合 | | otc-api | 7005 | OTC交易:广告/订单/申诉/商家管理 | | market | 7006 | 行情服务:实时价格/K线数据 | | chat | 7007 | 聊天服务:OTC交易聊天 | | wallet | 7008 | 钱包服务:充提币处理/地址管理 | | open-api | 7009 | 开放API:第三方接入/机器人控制 | ### 01_wallet_rpc 钱包服务(7个币种) | 服务 | 端口 | 支持币种 | |------|------|----------| | RPC Gateway | 6000 | 统一入口 | | Bitcoin | 6001 | BTC | | Bitcoin-USDT | 6002 | USDT (OMNI) | | Ethereum | 6003 | ETH | | ECT | 6004 | ECT | | ACT | 6005 | ACT | | ETH-Token | 6006 | ERC20 代币 | ### Kafka 消息队列 | Topic | 方向 | 说明 | |-------|------|------| | exchange-order | exchange-api → exchange | 新委托订单 | | exchange-trade | exchange → market | 成交明细 | | exchange-order-completed | exchange → market | 订单完成通知 | | withdraw | ucenter-api → wallet | 自动提币任务 | | deposit | wallet-RPC → wallet | 链上充币确认 | ## 部署说明 ### Docker 一键部署 ```bash docker-compose up -d ``` ### 生产环境部署 1. **环境准备**:安装 Nacos、MySQL、Redis、MongoDB、Elasticsearch、Kafka 2. **配置修改**:修改各服务 `application-prod.yml` 为生产环境配置 3. **构建打包**:`mvn clean package -DskipTests` 4. **构建前端**:`npm run build` 部署到 Nginx 5. **启动服务**:使用启动脚本或 systemd 启动各微服务 6. **Nginx配置**:配置反向代理和 SSL ### 监控与维护 - **监控**:Prometheus + Grafana 监控系统 - **日志**:ELK 收集和分析日志 - **备份**:定期备份数据库和配置文件 ## 安全措施 - **参数校验**:JSR380 注解严格校验所有输入 - **SQL注入防护**:MyBatis-Plus 参数化查询 - **权限控制**:Shiro 基于角色的权限管理 - **敏感数据加密**:密码/密钥加密存储 - **Google验证**:2FA 双重身份验证 - **HTTPS**:生产环境强制启用 ## 参与贡献 1. **Fork** 本仓库 2. **新建** Feat_xxx 分支 3. **提交**代码 4. **创建** Pull Request ## 联系方式 - **技术支持**:support@cyberexch.com - **商务合作**:business@cyberexch.com - **安全问题**:security@cyberexch.com ## 许可证 本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件