2026 年 4 月,开源加密软件 VeraCrypt 的开发者 Mounir Idrassi 收到了一条来自微软的简短通知:他所属的公司 IDRIX 已不再满足验证要求,账户已被终止,且不可申诉。这条消息意味着他使用了多年的 Windows 驱动程序签名账户和引导加载程序签名账户被彻底封锁,VeraCrypt 的 Windows 版本更新陷入停滞。这一事件不仅影响了 VeraCrypt 项目的数千名用户,更暴露了开源软件对主流平台供应链的深度依赖风险。

代码签名机制与 Windows 平台的硬性要求

理解这一事件的技术影响,首先需要明白 Windows 系统对驱动程序签名的强制要求。自 Windows 10 以来,微软逐步强化了驱动签名强制策略(Driver Signature Enforcement,DSE),尤其在 64 位系统上,未签名或签名无效的驱动程序根本无法加载。VeraCrypt 的核心功能 —— 全磁盘加密和隐藏卷 —— 需要安装内核模式驱动程序来处理启动前的身份验证,这意味着它必须获得有效的代码签名证书才能在用户的机器上正常运行。

当微软终止 Idrassi 的账户时,受影响的不只是新版本的发布流程,更关键的是现有用户面临潜在的启动问题。如果用户安装了最新的 Windows 更新,系统可能会拒绝加载原有的 VeraCrypt 驱动程序,导致加密分区无法访问。Idrassi 在 SourceForge 论坛的声明中明确指出,他目前无法发布任何 Windows 版本更新,尽管 Linux 和 macOS 平台的更新仍然可以正常发布,但 Windows 用户群体占 VeraCrypt 总用户的大多数,这一封锁对项目造成了致命打击。

更令人不安的是,微软的审核决定缺乏透明度。Idrassi 表示,他从未收到过任何警告邮件,也不清楚 IDRIX 究竟违反了哪一项要求。唯一的回复是一段通用模板:“基于您迄今为止提供的信息,我们认定您的组织目前不符合通过验证的要求。没有申诉渠道,我们已关闭您的申请。” 这种不透明的审核机制意味着开发者很难进行针对性整改,只能被动接受结果。

平台封禁的连锁反应与行业共性问题

VeraCrypt 并非孤例。WireGuard 创始人 Jason Donenfeld 在同一时期也遭遇了类似的账户封锁。他公开表示:“没有任何警告,没有任何通知。有一天我登录想要发布更新,却发现账户已被暂停。” 这两起事件的叠加效应揭示了一个更为普遍的问题:当开源项目的维护者依赖商业平台的账户体系时,他们实际上将项目的命脉交由第三方掌控。

从供应链安全的角度看,这种依赖关系构成了一个危险的单点故障。开源项目通常遵循 “用爱发电” 的模式,维护者可能没有资源去维护多套签名体系或与多个平台建立关系。当唯一可用的签名渠道被封锁时,整个项目的 Windows 支持可能在一夜之间归零。这种风险对于依赖内核驱动或系统级集成的工具尤为突出,加密软件、VPN 客户端、系统工具等领域都面临类似威胁。

值得注意的是,微软的账户审核机制虽然名义上是为了确保软件供应链的安全,但其执行过程缺乏对开源项目的特殊考量。商业软件公司通常有完整的法务团队和企业资质来应对审核,而个人开发者或小型开源组织可能因为流程不熟悉或材料不全而被判定为 “不符合要求”。Idrassi 的遭遇表明,开源社区与大型科技公司之间存在严重的信息不对称,后者掌握着前者生存所需的关键资源,却无需承担相应的解释义务。

开发者应对策略与长期风险缓解

面对这一困局,开发者需要从多个维度建立应对机制。首先是账户多元化策略:不要将所有签名渠道集中在一个平台上。如果项目需要面向多个操作系统,应当尽早建立备用的签名证书体系,即使主账户出现问题,也能通过备用渠道发布紧急更新。对于 VeraCrypt 而言,当前最紧迫的任务是寻找替代的代码签名方案,可能的方向包括使用其他受信任的证书颁发机构,或者通过微软的合作伙伴计划获取签名资质。

其次是降低对单一平台的依赖。开发者可以评估项目的核心功能是否必须依赖内核驱动,是否可以通过用户态实现替代方案。例如,某些加密功能可以设计为在操作系统启动后再加载,从而避开驱动程序签名的问题,尽管这可能会牺牲部分安全特性。另一个思路是提供脱离 Windows 生态的替代方案,确保用户在最坏情况下还有其他可用选择。

对于终端用户而言,这一事件也敲响了警钟。在选择依赖特定平台的核心安全工具时,应当考虑供应商锁定的风险。建议 VeraCrypt 用户保持当前版本的可用性,并密切关注官方渠道的更新公告。在官方解决方案出台之前,避免盲目安装可能与现有驱动冲突的系统更新。有条件的用户可以建立测试环境,在隔离环境中验证新版本或系统更新对加密卷访问的影响。

行业层面的反思与改进方向

VeraCrypt 事件应当促使整个行业重新审视开源软件与商业平台之间的关系。大型科技公司掌握着开源项目生存所需的基础设施 —— 代码签名、发行渠道、应用商店 —— 但其审核政策往往缺乏对开源项目特殊性的适配。建立一个更加包容、透明的开发者验证机制,明确告知开发者需要满足的具体要求,并提供申诉渠道,应当成为平台提供者的基本责任。

从技术社区的角度,开源项目可以考虑组建共享的签名资源池,由可信的中立组织(如开源安全基金会)统一管理,为无法独立获得商业签名的项目提供支持。这种机制不仅可以降低单一项目被封锁的风险,也有助于维护开源生态的多样性与韧性。

微软在事件曝光后尚未给出正式回应,但其审核系统的缺陷已经暴露无遗。当自动化审核与人工智能生成的回复成为开发者唯一能获得的反馈时,决策的武断性与不可追溯性将进一步侵蚀开发者对平台的信任。开源软件的供应链安全不应以牺牲开发者的生存空间为代价,建立更加公平、透明的协作机制,才是解决此类冲突的长期方向。

资料来源:404 Media 报道《Microsoft Abruptly Terminates VeraCrypt Account, Halting Windows Updates》及 VeraCrypt 项目论坛公告。