尝试在我的 SA400 480GB 硬盘上使用金士顿 SSD Manager (KSM) 失败后,我求助于金士顿 Linux 进程,该进程使用hdparm
. 与 KSM 不同,KSM 无法执行任何操作,因为驱动器不会离开安全冻结模式(从睡眠状态恢复后hdparm
显示)not frozen
,并且其安全擦除命令成功完成,但只花了几秒钟。我最初按照KSM用户手册的要求从驱动器中删除所有分区,因此hdparm
运行时它是空的。甚至显示的输出hdparm
:
安全擦除单元 6 分钟。增强型安全擦除单元需要 6 分钟。
所以 2 秒听起来太快了。有什么问题吗?
这些数字实际上只是驱动器控制器固件中编码的一些值。您的供应商实际上可以拥有他们喜欢的任何数字,是的,实际上,您甚至可能会遇到以小时为单位报告所需长度的驱动器,而命令
SECURITY ERASE UNIT
眨眼间就完成了。虽然您可以看到 ATA/ACS 规范提示,这
SECURITY ERASE UNIT
应该是触发特定模式数据覆盖的命令,但这很大程度上是因为该功能集可以追溯到 SSD 成为现实之前。此外,实际上没有人可以保证任何供应商都会按照规范实现一切。就 SSD 而言,由于 P/E 周期数量有限等合法原因,几乎没有供应商实施
SECURITY ERASE UNIT
实际写入。相反,即,逻辑块和后面的实际存储器之间的映射被破坏(当在块上发出“TRIM”时,这也会在至少某些驱动器上发生)。有人说,如果在驱动器上部署透明加密,该命令也会触发加密密钥的更改,但如果您确实担心安全性和/或合理的可否认性,请不要假设情况是这样,因为除了命令/功能集具有单词 之外
SECURE
,规范中甚至没有远程暗示该命令会导致这种结果。(当然,您可以选择相信每个供应商都会“遵守惯例”和/或“合理”。)PS更重要的是,操作速度快并不一定意味着已经部署了透明加密。没有什么强制要求这样的“因果关系”。对于“读零”的所有逻辑块(即地址),所需要的只是控制器在其存储器中标记所有块均未映射,并且它将“响应”已用零标记为未映射的块。(因此,垃圾收集/内存块擦除如果被触发,也不必在
SECURITY ERASE UNIT
命令“返回”之前同步完成。)如果驱动器已加密 (SED),它只会擦除硬件密钥,从而无法解密。
最有可能的是,非加密驱动器实际上需要 6 分钟的时间
覆盖删除纯文本信息。从技术上讲,没有办法确定 - 即使磁盘看起来未加密,实际上也可以在一秒钟内加密并安全擦除。为了确保您必须获得供应商的明确信息。