Secure Boot:它管什么,关掉要付出什么代价
Secure Boot 校验的是什么、在 Windows 里怎么查看它的状态、哪些反作弊要求开启它,以及为了让别的东西能用而关掉它时,你会失去什么。
简短回答
Secure Boot 用固件信任的密钥校验每个启动组件的签名,但从不检查 PCIe 设备,也不会拦截 DMA 硬件。目前有好几款反作弊要求开启它,所以为了解决一个不相干的问题而关掉它,可能让你彻底进不了游戏。
本页内容10
Secure Boot 检查什么?
Secure Boot(安全启动)是一项 UEFI 功能,只干一件事。开机时,在操作系统还没加载之前,它按顺序检查即将运行的每个组件:引导程序、内核加载器和早期驱动。只要其中任何一个没有签名,或者签名所用的密钥不受固件信任,固件就拒绝运行它。它是对启动路径的完整性检查,而不是运行时扫描器,所以 Windows 跑起来之后,它看不到 PCIe 设备在做什么。
Secure Boot 会拦截 DMA 卡吗?
Secure Boot 不会拦截 DMA 卡。它从不检查 PCIe 设备,不读取它们的配置空间,也不决定一块卡能否访问内存——这些由另一套机制负责。如果游戏主机上看不到板卡,原因在于枚举、是否插到位或插槽本身,而不是 Secure Boot。Secure Boot 和这套方案只有间接关系:它与启动模式绑定,而且有些反作弊会检查它。
如何在 Windows 中查看 Secure Boot 状态
动任何设置之前,先在游戏主机上查看 Secure Boot 的当前状态,以及它所依赖的启动模式。两者都搞清楚,改动才能撤回;否则可能换来一台开不了机的电脑。
- 按 Windows + R,输入 msinfo32,回车
- 在“系统摘要”中查看“安全启动状态”(Secure Boot State),结果为开启、关闭或不支持
- 在同一面板查看“BIOS 模式”,它必须是 UEFI,Secure Boot 才可能可用
- 如果安全启动状态显示不支持,先查 BIOS 模式,因为传统模式安装的系统无法使用 Secure Boot
- 打开固件菜单之前,把这两个值都记下来
- 每次改动之后,重启进入 Windows,重新查看这两个值,不要只信固件界面上的显示
用命令行检查 Secure Boot
Confirm-SecureBootUEFI 这个 PowerShell cmdlet 给出的结果最明确,需要在以管理员身份运行的 PowerShell 中执行。Secure Boot 受支持且已开启时返回 True,受支持但已关闭时返回 False。在非 UEFI 的机器上,它会提示该平台不支持此 cmdlet。
Confirm-SecureBootUEFI
msinfo32
bcdedit /enum {current}哪些东西依赖 Secure Boot?
依赖 Secure Boot 的有三样。第一,目前有好几款内核级反作弊要求开启它,没开就不让游戏启动,实际使用中这是最要紧的依赖。要求它的游戏名单一直在变,所以请查你玩的游戏当前的要求,别信一年前的帖子。第二,部分 Windows 安全功能和一些企业策略要求它保持开启。第三,它与启动模式绑定:只有 UEFI 安装的系统才有它,所以关于 CSM 的任何决定,同时也是关于 Secure Boot 的决定。
Secure Boot 该开还是该关?
找到和你情况对应的那一行。答案最后总会回到同一条规则:不要为了修一个多半不是它造成的问题,去关掉游戏要求的设置。
| 你的情况 | 实际是怎么回事 | 该怎么做 |
|---|---|---|
| Secure Boot 已开启,一切正常 | 没有要解决的问题 | 别动它。记下当前状态,以便固件更新后恢复 |
| 游戏无法启动,并点名 Secure Boot | 反作弊要求开启它,而它现在是关闭的 | 开启它。如果显示不支持,说明系统是传统模式安装的,那才是真正要解决的问题 |
| 某篇教程说要关掉它,板卡才能工作 | 几乎可以肯定是错的。Secure Boot 并不控制 PCIe 枚举 | 先排查板卡是否插到位、插槽,以及 Above 4G Decoding 这条依赖链。不要凭猜测关掉游戏要求的设置 |
| 安全启动状态显示不支持 | 机器正以传统模式或 CSM 模式启动,所以这个功能不可用 | 先想清楚你到底要不要换成 UEFI 安装。转换磁盘是一项需要计划和备份的工程,不是随手切个开关 |
| 你关掉了它,现在游戏无法启动 | 你拿游戏的硬性要求,换来了一个多半毫无作用的改动 | 重新开启,确认游戏能启动,然后去别处继续排查最初的问题 |
| 你想为了一个未签名驱动关掉它 | 这恰恰是 Secure Boot 设计出来要阻止的情况,关掉它确实会降低安全性 | 搞清楚自己放弃的是什么,先查你的游戏是否要求 Secure Boot,并且不要在任何用于个人事务的机器上这样做 |
警告
关闭 Secure Boot 会失去什么
关闭 Secure Boot,会削弱唯一一道能在 Windows 启动之前阻止未签名组件运行的检查;在某些游戏上,你还会因此直接玩不了。如果你的启动路径本来就是已签名的 UEFI,开启它没有任何代价,还可能修好一个启动不了的游戏。关闭它从来不会让你在反作弊面前处境更好,谁说关掉它能让配置更安全,那就是把原理搞反了。
改动 Secure Boot 之前
- 已在 msinfo32 中查看安全启动状态和 BIOS 模式,并把两者都记了下来
- 已确认你玩的游戏目前是否要求 Secure Boot
- 已确认真正的原因不是板卡没插到位、插槽问题或 Above 4G Decoding 依赖链
- 知道机器开不了机时怎么重新进入固件菜单
- 手上有恢复盘,或者你接受没有恢复盘的风险
Secure Boot 常见问题
Secure Boot 会检测到 DMA 卡吗?
不会。它是在操作系统加载之前校验启动组件的签名,不检查 PCIe 设备,系统运行期间也看不到它们。
我的游戏要求开启 Secure Boot,还能用 DMA 方案吗?
开启 Secure Boot 本身不会让硬件无法工作,所以这两项要求并不天然冲突。但它也丝毫不会降低检测风险——检测风险取决于固件质量、配置和你的玩法,任何固件设置都消除不了这种风险。
为什么安全启动状态显示不支持?
几乎都是因为机器以传统模式或 CSM 模式启动,而不是 UEFI。在 msinfo32 里查看 BIOS 模式,如果显示为传统(Legacy),在它改过来之前无法开启 Secure Boot。
开启 Secure Boot 会搞坏我的 Windows 吗?
如果系统是 UEFI 安装且启动路径已签名,就不会。如果启动路径未签名,或者系统是传统模式安装的,机器可能无法启动。改这个设置之前,先查清 BIOS 模式,并准备好退路。
Secure Boot 和 TPM 是一回事吗?
不是。Secure Boot 校验的是启动链,而 TPM 是一颗存储密钥和度量值的芯片。有些反作弊和部分 Windows 功能两者都要求,但它们是两项独立的要求。
资料来源
查看 Secure Boot 状态的步骤和决策表,来自团队自己的售后支持工作。
- 01Kernel DMA Protection (Microsoft Learn)
另一套管控设备访问内存的 IOMMU 策略——这正是 Secure Boot 不负责的工作
learn.microsoft.com
- 02TPM 2.0 and Secure Boot requirement (Activision Support)
Call of Duty 官方公布的 TPM 2.0 与 Secure Boot 要求
support.activision.com
- 03
继续阅读
仍然没有解决?在 Discord 提交工单
全部指南