Skip to content

v0.3.9 — 半在线心跳 License Server + 客户端信任根固化

Choose a tag to compare

@github-actions github-actions released this 19 Aug 08:40
· 16 commits to main since this release

v0.3.9 重大更新

本版本完成半在线心跳 License Server 上线与客户端信任根加固,并补齐时钟与首次心跳的安全边界。

安全加固

Phase-1: License Server

  • 生产服务运行于 Ubuntu 24.04,使用非 root systemd 服务与 Python venv。
  • TLS 自签证书带 IP SAN,并以 SPKI pin 作为客户端身份信任依据。
  • 服务端 Ed25519 签名私钥采用加密 PKCS8 存储。

Phase-2: 客户端信任根

  • 嵌入真实 server Ed25519 公钥。
  • 固定心跳端点 https://124.221.210.12:8443。
  • 强制实时 SPKI pin 校验;pin 不匹配时拒绝续期。
  • server 公钥缺失或签名无效时 fail-closed,仅保留 7 天离线 grace,不因单次网络故障退出程序。

Phase-3: P1 加固

  • 校验 server_timestamp 单调性,防止时钟回拨绕过。
  • 修复 fresh_until <= 0 首次心跳无限 grace 问题,并以签名 issued_at 作为首次 grace 锚点。
  • 显式校验响应 client_pubkey 与本机请求一致。
  • 重新编译并打包 Cython verifier。

已关闭风险

  • Fake license-server MitM 续期绕过。
  • 接受任意自签证书的 SPKI pin 空实现。
  • 空 server 公钥时跳过签名校验的 fail-open。

下载与校验

  • Windows x86_64: DouStudio-v0.3.9-windows-x86_64.zip
  • ZIP SHA-256: 7A38C63812555318179A19AC68AB8613FDAAAF968240AE049B181F30845AF1EC
  • 同名 .sha256 文件已随 Release 上传。
Get-FileHash -Algorithm SHA256 .\DouStudio-v0.3.9-windows-x86_64.zip

验证

  • GitHub Actions 构建与上传成功。
  • License 触达回归:67 passed,1 skipped。
  • 版本、设置与更新路径:50 passed。
  • Windows 真机:主界面启动成功,无重复激活弹窗。
  • 打包程序健康检查:version=0.3.9、activated=true、license_status=valid。
  • 生产心跳握手成功,fresh_until、last_server_sync 与 clock_offset_ms 已真实落盘。

升级提示

  • 启动时会连接 124.221.210.12:8443 执行一次授权心跳。
  • 临时网络故障不会立即阻止使用;有效授权按 7 天离线 grace 运行。
  • 后台默认每 24 小时续期一次。