Files
crypto_key/README.md
T
2026-05-27 07:34:34 +08:00

131 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# crypto_key — 凭证保险库
本地 Web 工具,管理交易所 API、网站、邮箱、机器人、微信/QQ 及自定义类型凭证。数据 **AES 加密** 存入 `data.json`,登录凭据与加密主密钥在 `.env`
| 项目 | 说明 |
|------|------|
| 仓库 | [git.bz121.com/dekun/crypto_key](https://git.bz121.com/dekun/crypto_key.git) |
| Ubuntu 部署路径 | `/opt/crypto_key` |
| 服务端口 | `5200` |
| 进程守护 | PM2 |
---
## 功能
- **登录**:用户名 + 密码(`.env`),浏览器不缓存明文
- **内置类型**:交易所 API、网站、邮箱、企业微信/钉钉机器人、微信、QQ
- **自定义类型**:系统设置中添加(如小红书、抖音、快手)
- **查询**:类型搜索 + 关键词 + 确认后显示;网站/邮箱可点击跳转
- **旧 data.json**:首次启动自动迁移为加密格式
- 黑色专业界面,列表展示 + 每项 3 个复制按钮(**复制始终为明文**)
- 可选界面打码显示,不影响复制内容
- 数据持久化至 `data.json`
---
## 首次配置
```bash
cp .env.example .env
# 编辑 .envSECRET_KEY、AUTH_USERNAME、AUTH_PASSWORD、DATA_ENCRYPTION_KEY
pip install -r requirements.txt
python app.py
```
默认首次运行会自动生成 `.env`(用户名 `admin` / 密码 `admin123`,请立即在「系统设置」中修改)。
## Ubuntu 服务器部署(/opt
完整步骤见 **[DEPLOY.md](./DEPLOY.md)**。
```bash
sudo git clone https://git.bz121.com/dekun/crypto_key.git /opt/crypto_key
cd /opt/crypto_key
cp .env.example .env # 并编辑
sudo bash scripts/install-ubuntu.sh
```
访问:
- 本机:**http://127.0.0.1:5200**
- 局域网:**http://<服务器局域网IP>:5200**(如 `http://192.168.1.100:5200`
查看本机 IP`hostname -I``ip addr`
```bash
pm2 status
pm2 logs api-key-manager
```
---
## 本地开发
```bash
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python app.py
```
浏览器打开 http://127.0.0.1:5200(局域网内其他设备用 `http://<本机IP>:5200`
PM2 守护:`./pm2-start.sh`Linux)或 `.\pm2-start.ps1`Windows
---
## 文件说明
| 文件 | 说明 |
|------|------|
| `app.py` | Flask 后端 |
| `index.html` | 前端页面 |
| `ecosystem.config.cjs` | PM2 配置 |
| `scripts/install-ubuntu.sh` | Ubuntu 一键安装 |
| `DEPLOY.md` | 完整部署文档 |
---
## 数据格式
```json
{
"id": "uuid",
"exchange": "binance",
"username": "账户名称",
"api_key": "API Key",
"api_secret": "API Secret",
"password": "仅 OKX 需要"
}
```
---
## API
| 方法 | 路径 | 说明 |
|------|------|------|
| GET | `/` | 前端页面 |
| GET | `/api/accounts` | 获取全部账户 |
| GET | `/api/accounts?exchange=binance` | 按交易所筛选 |
| POST | `/api/accounts` | 新增账户 |
| DELETE | `/api/accounts/<id>` | 删除账户 |
---
## 安全提示
- 无认证,监听 `0.0.0.0`(局域网可访问),请勿暴露到公网;建议仅在可信局域网使用
- `data.json` 为明文密钥,已 `.gitignore`,请定期备份
---
## 依赖
```
flask>=3.0.0,<4.0.0
```
服务器另需:Python 3.8+、Node.jsPM2