如何通过删除完整磁盘加密密钥导致 Ubuntu 无法使用?

如何通过删除完整磁盘加密密钥导致 Ubuntu 无法使用?

我有一台旧电脑,准备处理掉,它使用 LUKS 全盘加密进行加密。是否可以从 LUKS 元数据中删除加密密钥,以便任何人都无法再次解锁分区?如果可以,我该怎么做?

答案1

只需覆盖 LUKS 标头即可,覆盖整个驱动器对于 LUKS 来说太过分了,并且可能会花费几个小时。

根据密钥的类型和数量,LUKS 标头可能为 1MB、2MB 或更大,ArchWiki 建议擦除/覆盖前 10MB:

dd if=/dev/urandom of=/dev/sdx2 bs=512 count=20480

注意正确的分区 sdx2 或任何分区,您可以使用实时 dvd/usb 进行检查或lsblk使用以下命令blkid进行确认cryptsetup,这将告诉您分区 sdx5 是否是 LUKS 设备:

cryptsetup -v isLuks /dev/sdx5

以下来自 ArchWiki:

笔记:写入 LUKS 加密分区(本例中为 /dev/sdx5)而不是直接写入磁盘设备节点至关重要。如果您确实将加密设置为其他层之上的设备映射器层,例如 RAID 上的 LUKS 上的 LVM,则分别写入 RAID。

如果您知道有效的密码,则只能(或另外)删除所有 luks 密钥槽,不留下任何密钥。请参阅man cryptsetup网络版本在这里, 和:

cryptsetup -v luksRemoveKey <device>

或者

cryptsetup -v luksKillSlot <device> <key slot number>

另请注意有关 SSD 的信息(也来自 ArchWiki):

当用随机数据擦除标头时,设备上剩下的所有内容都是加密数据。SSD 可能会出现例外情况,因为 SSD 使用了缓存块。理论上,可能会发生这样的情况:标头在某个时间之前被缓存在这些缓存中,因此在擦除原始标头后,该副本可能仍然可用。出于高度安全考虑,应该对 SSD 进行安全 ATA 擦除(过程请参阅 cryptsetup 常见问题 5.19)。

相关内容