当我使用 Parted Magic 安全擦除 SSD 时,我得到两个选项。
- 安全擦除 ATA 设备
- 消毒
虽然我已经搜索过网络,但作为外行,我仍然不明白两者之间究竟有何技术差异。
这是摘自闪迪知识库。
安全擦除与清理不同,因为它仅删除映射表,但不会擦除已写入的所有块。清理将删除映射表并擦除已写入的所有块。因此,安全擦除比清理完成得更快。使用安全擦除或清理擦除驱动器后,所选驱动器上的所有用户数据将被永久销毁。这些数据无法恢复。
我不清楚映射表是什么,因此不清楚。
我的问题是
- 简单来说两者的区别
- 其中一个是否比另一个更好,如果是的话,在哪些方面更好,哪一个是首选?
- 仅删除映射表和表+块会对性能产生什么影响(如果有的话),它会改善 I/O 吗?
- 如果我所需要的只是使数据可恢复,任何一种处理方法都足够吗?
我希望这个问题是关于主题的,并且我的所有子查询都是相互关联的。
答案1
一般来说,擦除存储设备有以下几种常见的方法:
- 通过用位模式覆盖包含数据的存储块。这是标准旋转硬盘最常用的方法。
- 在 NAND 闪存设备上,通过执行块擦除操作来物理破坏存储单元中的数据。
- 在存储设备上,通过删除逻辑块地址和相应物理块之间的映射来跟踪已使用/空闲的存储块(例如 SSD),从而使该块上的数据保持完整(因此可恢复)。
- 在自加密驱动器上,通过销毁驱动器上存储的加密密钥,使数据无法读取。这通常与销毁驱动器上的所有块映射相结合。
每种存储协议(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。
答案2
如果您担心有人会从该驱动器恢复数据,那么 Santize 似乎更安全。但是我认为 sanitize 可能会缩短驱动器的使用寿命,因为它会覆盖已使用的块。这是因为闪存/SSD 内存在损坏之前的读取/写入次数有限,但我听说这不是什么大问题。如果您刚刚开始使用该驱动器,请让操作系统格式化或执行安全擦除,假设您再次自己使用该驱动器并且不担心数据被坏人恢复
答案3
安全的:删除映射表(Windows 中的 MFT),这是操作系统在磁盘上查找文件位置的方式,但文件仍然存在,可以由熟练的人员恢复。
注意:该命令已经过时,制造商并不总是能正确实施它,有些甚至在成功“安全擦除”后不会擦除任何数据
Sanitized:将擦除磁盘上的所有数据,且文件无法以任何方式恢复。
出于显而易见的原因,最好使用 Sanitized。不会影响性能
(MFT=主文件表)
答案4
Santize - 数据将被真正删除,不可恢复。Secure Erase - 仅删除映射表(如链接),如果知道数据的内部格式,有人可能会恢复数据。