Repository navigation
CipherRelay v2.0.8
Android 专用修复(2026-10-21,2.0.8+77):
- 修复点击“检查更新”导致整个 App 退出:Android Rust HTTPS 客户端不再依赖未初始化的 Java 证书验证器,仍严格校验证书、主机名、发布清单签名和安装包哈希。
- 三个 APK 均由维护者本机构建,沿用原签名,可直接覆盖安装并保留数据。现代手机请选择 arm64-v8a。旧 build 76 无法在 App 内检查更新,请从本页手动下载 build 77 安装。
- Android API 36 模拟器已验证从 4076 覆盖升级至 4077、连续三次联网检查更新、切后台返回、断网错误提示;未将模拟器结果称为实体手机验证。
- Windows、macOS、Linux 发布包保持原样。Android 的独立构建号、源码提交、文件大小、SHA-256 和签名证书见发布清单及 build 77 验证报告。
- 修复代码:acking-you/proxy-everything#38 和 #25
CipherRelay 2.0.8+76 / native 0.6.7
Windows 更新与网络修复:
- Windows 安装交接改为独立 Rust 更新程序:确认安装助手就绪后才退出,等待旧进程完全结束,再执行安装并核对安装后的版本。失败会保留安装包和诊断日志。
- 修复应用异常退出后遗留 DNS ETW 会话导致的进程绕过失效。恢复游戏大厅等请求的 DNS 进程归属,保留仍在运行的其他实例;不修改 TCP/UDP 线路协议。
- 从旧版 Windows 升级,请先手动运行本发布页的 setup.exe 一次。旧版存在的更新交接故障无法通过下载新包自行修复;2.0.8 已包含新的更新程序。
所有平台共用的 Rust 优化:
- 下载、包大小/进度、SHA-256 与签名校验移入 Rust,采用流式写入和有界回调,支持取消并清理未完成文件。
- 节点操作、进程枚举、订阅服务和日志持久化交由 Rust,减少 Dart 阻塞工作和重复序列化。
- 星系布局、天体/星点计算使用可复用原生缓冲区,健康状态更新复用已有布局。48 个密集国家的布局基准中,Dart AOT 中位数 12,278 微秒、Rust(含 FFI)603 微秒,缓存命中 2 微秒;该数据仅代表布局计算。
- Flutter 保留界面状态、绘制和必要的平台桥接,迁移范围与测量边界见仓库 docs/rust-ui-runtime.md。
验证与安装:
- Rust 工作区测试、严格 Clippy/格式检查、Flutter 分析及测试通过。
- Windows 使用真实 DNS 路径和异常退出恢复测试,并验证完整安装包与 Rust 安装交接流程。游戏大厅修复针对已复现的 DNS 归属故障;未自动操控实际游戏完成端到端验证。
- Android APK 在维护者本机重新编译原生库后构建,保留既有签名及 application ID,按 ABI 单独提供。现代实体手机通常选择 arm64-v8a。
- 发布包的文件大小、SHA-256 和 Android 签名/版本信息记录在签名发布清单及随附验证报告中。
代码:
- 主仓库 PR:acking-you/proxy-everything#36
- Flutter PR:#23
- tun2proxy PR:acking-you/tun2proxy#11
- 发布验证与打包修正:acking-you/proxy-everything#37 和 #24