This commit is contained in:
dekun
2026-05-27 07:45:16 +08:00
parent 1f695799bf
commit 703fd912f8
4 changed files with 652 additions and 388 deletions
+105
View File
@@ -0,0 +1,105 @@
# 更新说明 — crypto_key
本文档记录各版本功能变更与升级注意事项。
---
## v2.0.0(当前)
### 新增
- **登录系统**:用户名 + 密码(单用户),凭据保存在 `.env`
- **数据加密**`data.json` 使用 Fernet(AES)加密存储,密钥为 `DATA_ENCRYPTION_KEY``.env`
- **凭证类型扩展**
- 交易所 APIBinance / OKX / Gate
- 网站账号(网址可点击)
- 邮箱账户(mailto / 网页登录链接)
- 企业微信机器人、钉钉机器人
- 微信(微信号 + 手机号)、QQ(QQ 号 + 手机号)
- **自定义类型**:系统设置中自行添加字段(如小红书、抖音、快手)
- **系统设置页**
- 修改登录用户名/密码(写入 `.env`
- 管理自定义类型(增删、搜索)
- **查询机制**:添加后不自动展示;按类型 + 关键词 +「确认」后显示
- **类型搜索**:添加/查询时支持输入过滤类型
- **旧数据迁移**:明文 `data.json` 首次加载自动转为加密格式
### 变更
- 监听地址由 `127.0.0.1` 改为 **`0.0.0.0`**,支持局域网访问
- API 主路径由 `/api/accounts` 扩展为 `/api/credentials`(保留旧路径兼容)
- 数据模型由固定 `username/api_key/api_secret` 改为 `type_id + fields` 结构
- 依赖增加:`python-dotenv``cryptography``werkzeug`
### 安全
- 浏览器 **不** 使用 localStorage/sessionStorage 存储明文
- Session Cookie 设置 `HttpOnly``SameSite=Lax`
- `.env``data.json``settings.json` 默认加入 `.gitignore`
### 升级注意(从 v1.x 升级)
1. 备份现有 `data.json`
```bash
cp data.json data.json.bak
```
2. 安装新依赖:
```bash
pip install -r requirements.txt
```
3. 配置 `.env`(可复制 `.env.example`,或首次运行自动生成):
- `SECRET_KEY`
- `AUTH_USERNAME` / `AUTH_PASSWORD`
- `DATA_ENCRYPTION_KEY`
4. 启动服务,旧明文数据将 **自动迁移** 为加密格式。
5. 使用默认或自定义账号登录,在「系统设置」中修改密码。
6. PM2 用户执行:`pm2 restart api-key-manager`
> **重要**:升级后切勿删除或修改 `.env` 中的 `DATA_ENCRYPTION_KEY`,否则无法解密已有数据。
---
## v1.2.0
### 新增
- 交易所下拉:Binance / OKX / Gate
- OKX 专用 Passphrase 字段
- 按交易所查询(下拉 + 确认)
- 添加成功后默认不展示列表
- 敏感字段打码显示(复制仍为明文)
### 变更
- 支持局域网访问(`0.0.0.0:5200`
---
## v1.1.0
### 新增
- PM2 守护进程支持(`ecosystem.config.cjs`
- Ubuntu `/opt/crypto_key` 部署脚本与文档
- 启动脚本:`pm2-start.sh` / `pm2-start.ps1`
---
## v1.0.0
### 初始功能
- Flask 后端 + 单页前端(黑色主题)
- 多账户 API 密钥管理:`username`、`api_key`、`api_secret`
- 本地 `data.json` 明文存储
- 每条记录三个复制按钮
- 端口 5200,无登录
---
## 版本规划(待定)
- [ ] 可选 HTTPS / 反向代理说明模板
- [ ] 凭证编辑(当前仅支持添加、删除)
- [ ] 导出/导入加密备份包
- [ ] 登录失败次数限制