SSD - 清理和安全擦除有什么区别?

raj*_*eev 7 ssd secure-erase cryptographic-erase data-sanitization

当我使用 Parted Magic 来安全擦除 SSD 时,我有两个选择。

  1. 安全擦除 ATA 设备
  2. 消毒

虽然我在网上搜索过,但作为外行,我仍然不明白两者之间的确切技术差异。

这是来自Sandisk KB的摘录。

Secure Erase 与 Sanitize 不同,它仅删除映射表,但不会擦除所有已写入的块。Sanitize 将删除映射表并擦除所有已写入的块。因此,安全擦除比清理更快完成。使用“安全擦除”或“清理”擦除驱动器后,所选驱动器上的所有用户数据将被永久销毁。该数据无法恢复。

我不清楚映射表是什么,因此也不清楚。

我的问题是

  1. 简单来说两者之间的区别
  2. 其中一种比另一种更好吗?如果是的话,以什么方式更好,如果有的话,哪一种更好?
  3. 只删除映射表和表+块会以什么方式影响性能(如果有的话),是否会提高I/O?
  4. 如果我所需要的只是使数据可恢复,那么任何一种处理方法都足够了吗?

我希望这个问题是主题性的,并且我的所有子查询都彼此相关。

Tu *_*inh 8

一般来说,擦除存储设备的常用方法有以下几种:

  1. 通过用位模式覆盖包含数据的存储块。这是标准旋转硬盘最常用的方法。
  2. 在 NAND 闪存设备上,通过执行块擦除操作来物理破坏存储单元中的数据。
  3. 在通过删除逻辑块地址和相应物理块之间的映射来跟踪已用/空闲存储块(例如SSD)的存储设备上,使所述块上的数据保持完整(因此可恢复)。
  4. 在自加密驱动器上,通过破坏驱动器上存储的加密密钥,使数据不可读。这通常与销毁驱动器上的所有块映射结合在一起。

每个存储协议(ATA、SCSI、NVMe)都有自己的一组用于清理存储磁盘的命令。

  • ATA协议规定了SECURITY ERASE UNIT命令有两种模式,正常模式和增强擦除模式:正常模式指定用零覆盖;增强擦除指定了“预定数据模式”,并且还针对“由于重新分配而不再使用的扇区”。新的 ATA 驱动器可能还支持具有三种模式的新SANITIZE 命令:加密加扰、块擦除和覆盖。
  • SCSI协议定义了具有三种模式的 SANITIZE 命令:覆盖、块擦除和加密擦除(其中加密密钥从驱动器中删除)。
  • NVMe规范定义了两个命令:Format(针对 NVMe 命名空间)和 Sanitize(针对整个设备)。Format命令本身具有三种模式:无安全擦除、用户数据擦除和加密擦除。Sanitize 命令还具有三种模式:块擦除、加密擦除和覆盖。

由于 ATA SECURITY ERASE UNIT 的实现取决于制造商,我只能猜测在 Sandisk 驱动器上调用此命令不会完全擦除您的数据;另一个驱动器制造商可能会使用完全不同且更安全的方法。无论如何,最好在可用时使用 SANITIZE 命令,甚至组合多个 SANITIZE 命令;美光实际上建议对其 SATA SSD 进行 SANITIZE CRYPTO SCRAMBLE,然后进行 SANITIZE BLOCK ERASE。


gre*_*egg 1

如果您担心有人从该驱动器恢复数据,Santize 似乎更安全。但是 IMAGIME sanitize 可能会稍微缩短驱动器的寿命,因为它会覆盖已使用的块。这是因为闪存/SSD 内存在失效前的读/写次数有限,但我听说这不是一个问题。如果您刚刚开始使用该驱动器,请让操作系统格式化或进行安全擦除,假设您自己再次使用该驱动器并且不担心不良行为者的数据恢复