Skip to main content

↩️ 关于 Clash Verge Rev 项目中关于 CVD 的情况梳理与边缘影响科技圈🎗在花频道📮:CVD 协议引入引发争议:订阅安全升级,还是设备身份暴露与反自由使用隐患 开源代理客户端 Clash Verge Rev 在 dev 分支引入一项新的订阅安全机制:CVD,即 Clash Verge Device-binding Protocol,试图解决传统订阅 URL 一旦泄露即可被长期复制、批量滥用的问题

  1. ↩️ 关于 Clash Verge Rev 项目中关于 CVD 的情况梳理与边缘影响


    科技圈🎗在花频道📮:

    CVD 协议引入引发争议:订阅安全升级,还是设备身份暴露与反自由使用隐患 开源代理客户端 Clash Verge Rev 在 dev 分支引入一项新的订阅安全机制:CVD,即 Clash Verge Device-binding Protocol,试图解决传统订阅 URL 一旦泄露即可被长期复制、批量滥用的问题。新方案让客户端生成设备密钥,通过请求头上报公钥,服务端再按设备加密下发订阅,并可限制设备数量、解绑旧设备、拒绝超额访问。 但社区也有在讨论代价:CVD 会引入新的可识别信息。设备公钥虽不等同于…

    关于 Clash Verge Rev 项目中关于 CVD 的情况梳理与边缘影响

    在当前时间(日期),有关 issue 被关闭,同时项目方移除了部分评论(内容上不可确定),在审慎阅读了有关代码以及大部分言论后,我们对此事做一次完整总结,以尝试还原全貌,此次总结主要是基于现有内容进行分析,加之篇幅长度限制难免疏漏,欢迎各位补充与纠正。我们仅尝试还原事件全貌,无意发表任何评论。

    事件脉络与冲突节点

    时间:6 月 2 日 凌晨
    事件节点:功能合并

    贡献者 wonfen 合并了 commit 2cb9c13,引入 CVD 协议。涉及 44 个文件,净增约 1900 行代码,在 Rust 后端新建了独立的 cvd 模块。同时,同步更新了 13 种语言的本地化字符串,并发布了面向用户的介绍文档与面向服务商的集成文档。

    时间:6 月 2 日 上午
    事件节点:社区质疑

    用户 ojibk 在 GitHub 提交了 Issue #7187,指出 CVD 工作原理中存在收集硬件指纹的嫌疑,对用户隐私构成严重威胁。

    时间:6 月 2 日 09:09
    事件节点:冲突升级

    协作者 Dragon1573 迅速关闭了该 Issue 并标记为 "Invalid"(无效/超出范围),试图压制争议。

    时间:6 月 2 日 11:00
    事件节点:内部分歧

    另一核心维护者 Tunglies 介入,公开表态:“对隐私收集不感兴趣,这由其他贡献者私自上传。我尝试交涉下。”随后重新打开该 Issue,并执行了 commit fa27d3e,彻底回滚了 CVD 相关的全部代码。

    时间:6 月 3 日 - 6 月 4 日
    事件节点:生态反击

    内核项目 mihomo 核心开发者 wwqgtxx 加入论战,并在 mihomo 项目中提交了基于标准 age 协议的配置文件加密功能,以此作为 CVD 的替代方案,同时在官方推荐列表中移除了数个涉事或关联客户端。

    时间:6 月 4 日 中午
    事件节点:事件定格

    wonfen 将其辩护言论置顶,并删除了部分反对者的评论,最终关闭并锁定了 Issue #7187 的讨论。


    隐私争议

    在 Issue #7187 中,双方就“是否收集了机器指纹”展开了激烈的技术辩论:
    ・社区部分人员观点:CVD 的设计要求提取主板 UUID、网卡 MAC 哈希等硬件特征。在代理客户端这类对隐私极其敏感的工具中,收集此类硬件指纹是不可接受的,且一旦泄露将导致用户身份与物理设备的精确关联。
    - wonfen 的辩护:在实际的代码实现中,CVD 并没有直接提取硬件指纹,而是使用系统随机数生成了 X25519 密钥对。公钥通过 X-CVD-Pub 请求头发送,私钥则保存在系统钥匙串(Keyring)中,且在删除配置文件(Profile)时会自动销毁。他认为这只是一种“设备槽位限制”,而非“隐私收集”。
    - 技术反驳(kmod-midori / BeiyanYunyi):即使目前的代码仅使用了随机数密钥,由于该密钥被设计为“不可导出”,其本质依然是利用系统钥匙串来强行锚定单台物理设备。此外,在主流桌面平台上,系统钥匙串并非不可攻破,攻击者或审查者只需通过简单的 Hook 即可捞出私钥。这种设计“防君子不防小人”,不仅无法真正提高审查成本,反而给用户制造了安全的假象。


    关联性内容:age 加密

    作为对 CVD 的回应,上游内核项目 mihomo 迅速合并了由 wwqgtxx 提交的代码,引入了基于 RFC 9180(age-encryption)标准的配置文件解密功能。
    mihomo 团队强调,密钥应该由用户自行生成,且必须允许自由导入和导出。用户可以使用标准工具在多个设备间同步同一个私钥。这与 CVD “限制密钥导出、锁定设备槽位”的设计有着本质的区别。


    GitHub - clash-verge-rev/clash-verge-rev Issue #7187
    GitHub - clash-verge-rev/clash-verge-rev commit 2cb9c13
    GitHub - clash-verge-rev/clash-verge-rev commit fa27d3e
    GitHub - MetaCubeX/mihomo commit 358fa5e
    GitHub - MetaCubeX/Meta-Docs commit da03412

    🌸在花频道 · 备用频道 · 投稿通道

    via 科技圈🎗在花频道📮 - Telegram Channel
👀 open eyes to see the world. 丨 site views: -