v6.1.0 专业界面版卡密注入说明
================================

客户端版本：7.0.0
初始验证服务器：https://api.qqyyt.cn

已注入：
- 启动前卡密强制验证
- 首次激活设备绑定
- Ed25519 服务端签名验签
- 运行期间每 15 分钟授权心跳
- 短期离线租约
- Web 后台签名地址清单自动同步
- 服务器地址缓存与旧地址回退
- 侧栏授权类型和到期时间显示

更换服务器：
1. 先在旧服务器 Web 后台“系统设置”同时填写旧、新地址。
2. 保持旧服务器在线一段过渡期，让客户端启动或心跳同步。
3. 将服务端整个目录搬到新服务器，必须保留 .env、数据库和签名私钥。
4. 已同步过清单的客户端无需重新打包。
5. 未同步过的离线客户端，可将后台下载的 license_bootstrap.json 放到 EXE 同目录。

客户端仅包含公钥，不包含服务端私钥。
公钥 SHA-256 指纹：
b173f9fbfc326c581b5c0bb42d9e01ce28b0b34e844900e9f098393548168d56

打包 EXE：
运行 BUILD_EXE.bat，输出位于 run.dist。

【v6.2.2 服务器迁移修复】
- 客户端会按签名清单版本和更新时间选择最新服务器，不再让旧缓存压住新 bootstrap。
- 服务端每次激活/复核都会签名下发服务器地址，客户端会记住本次成功连接地址。
- 可在 .env 设置 LICENSE_API_URLS=https://新地址，初始化脚本会保留该配置。
- 也可复制 license_server.example.json 为 license_server.json 并填写新地址。
- 若旧服务器已完全离线且客户端从未同步新地址，必须替换新的 license_bootstrap.json 或使用上述本地覆盖。
- 新服务器必须迁移原 data/ed25519_private.pem，重新生成私钥会导致客户端拒绝签名。
- 可直接运行 `06_SET_LICENSE_SERVER.bat` 输入新地址，脚本会写入最高优先级配置并清理旧地址缓存。
