我多年来主要使用 Ubuntu,现在必须使用 Windows 11 Pro。
我有一台带有 TPM 2.0 的机器,因此微软网站/Windows 11 告诉我现在该设备(我希望是磁盘?!)已加密。
但是,我不明白如果整个 SSD 都加密了(至少我想实现这一点),我如何才能进入 Windows 登录屏幕?它如何能够在没有密钥的情况下读取操作系统以解密磁盘上的内容?
或者我只是误解了“设备加密”的实际作用?
答案1
但是,我不明白如果整个 SSD 都加密了(至少我想实现这一点),我如何才能进入 Windows 登录屏幕?它如何能够在没有密钥的情况下读取操作系统以解密磁盘上的内容?
它做有密钥。BitLocker 加密密钥不基于您的登录密码 - 它是完全独立的,非常类似于 Ubuntu 上的 LUKS 密码。
从本质上讲,Windows 上的 BitLocker 的工作原理与 Ubuntu 上的 LUKS 几乎完全相同。它按分区工作(而不是在整个磁盘级别),因此整个操作系统分区都是加密的,但操作系统的一小部分不是加密1并存储在不同的分区上,这会提示您输入“磁盘”密码 - 或使用 TPM 自动检索它。
当“设备加密”处于活动状态时,磁盘密码将使用 TPM 加密(“密封”)并存储在磁盘的 BitLocker 元数据中。系统启动时,Windows 引导加载程序会解封密码(即要求 TPM 解密)并能够解锁加密的 C:\ 卷前正在加载操作系统。
当您到达操作系统登录提示时,一切都已解锁。
(在 Linux 上可以使用 实现相同的操作systemd-cryptenroll
,它使用 TPM 来密封 LUKS 密钥并将其作为“令牌”存储在 LUKS2 标头内。在这种情况下,未加密的 Linux 内核 + initrd 会提示输入密码或与 TPM 对话。)
BitLocker 的完整版本(在 Windows 的“Pro”版及更高版本中)还支持在没有 TPM 的情况下使用常规密码。(这不算作“设备加密”,但本质上仍然是相同的 BitLocker。)如果您以这种方式设置 BitLocker 而没有 TPM,您也会在操作系统开始启动之前从 Windows 引导加载程序收到密码提示,就像在 Ubuntu 上一样。
1 “全盘加密”实际上大多数时候都是按分区进行的,而不是真正全盘加密。通常,主 C:\ 或 Linux “/” 分区是加密的,但“EFI 系统分区”不是。
Windows 引导加载程序(处理 BitLocker)和 Linux 内核 + initrd(处理 LUKS)都需要存储在未加密的 EFI 系统分区中。(同样,在 BIOS 系统上,您将拥有未加密的 /boot,或“Microsoft 系统分区”,它是 /boot 的 Windows 等效项。)
整个设置的一个重要部分是“TPM 密封”密钥具有解密条件附加到它上面 – 如果启动了不同的操作系统(或者启用/禁用了安全启动),TPM 实际上会拒绝解封它,这样即使引导加载程序未加密,也可以防止其被篡改。普通的基于密码的加密通常没有这样的保护。
Windows 磁盘通常有一个“救援”分区,其中包含只读迷你操作系统;这也没有加密(但受安全启动保护)。如果您在同一磁盘上有任何自定义数据分区,则它们可能已加密,也可能未加密;如果它们已加密,则其密码仅存储在 C: 中的某个位置。
答案2
设备加密有助于保护您的数据,并且可在各种 Windows 设备上使用。
通常情况下,您访问数据是通过 Windows 进行的,并且具有与登录 Windows 相关的常规保护。但是,如果有人想绕过这些 Windows 保护,他们可以打开计算机机箱并移除物理硬盘。然后,通过将您的硬盘作为第二个驱动器添加到他们控制的机器上,他们可能无需您的凭据即可访问您的数据。
但是,如果您的驱动器已加密,当他们尝试使用该方法访问驱动器时,他们必须提供解密密钥(他们不应该拥有)才能访问驱动器上的任何内容。如果没有解密密钥,驱动器上的数据对他们来说只是乱码。
设备加密可以保护您的磁盘免遭盗窃,但不能保护您的计算机。
为了保护计算机,您需要启用 Bitlocker,如果您的计算机符合使用条件,则需要密钥才能解锁计算机。您应该妥善保管 Bitlocker 密钥和恢复密钥,否则可能会丢失数据。
有关详细信息,请参阅 BitLocker 概述。