擦拭很慢。 太小的熵?

包括硬盘在内的笔记本电脑都要交给我。 由于没有encryption,我想至less快速擦除它。 我知道这在SSD上并不是最佳的,但我认为比简单的可读性更好。

现在我正在运行一个现场USB棒的擦拭,这是痛苦的缓慢。 我想知道这是为什么。 当然,除了擦拭这个设备之外,电脑上几乎没有任何事情发生,所以我想熵可能是低的(entropy_avail说它是在1220)。 只是打电话同样好吗?

dd if=/dev/random of=/dev/sda1 bs=1k 

四次? 或者有什么办法可以调用会增加随机性的东西? 还是瓶颈完全不同?

请勿尝试使用专为旋转磁性硬盘驱动器而devise的工具“擦拭”SSD。 你不会真的毁掉所有的数据 ,而只会缩短SSD的寿命。

相反,使用专为SSDdevise的擦除工具,可以使用驱动器的内部闪存擦除(丢弃)来丢弃所有的块,包括无法访问的块。 SSD厂商通常会提供这样的工具,保证与该厂商的驱动器兼容。

您也可以使用安全擦除工具自己尝试。 使用安全擦除的程序既可以旋转硬盘驱动器,也可以使用SSD。 此外,less数系统BIOS(主要是商用笔记本电脑)内置安全擦除function。请注意,安全擦除需要数小时才能在硬盘上完成,但在SSD上只需要几秒钟; 在硬盘驱动器上,每个扇区必须被过度写入,但是在SSD上它将立即丢弃所有的数据块和/或更改驱动器的内部encryption密钥。

(请注意,安全擦除在某些最早的SSD上无法正常工作,在这种情况下,您应该将驱动器放在破碎机中。)

使用/dev/urandom应该使一切更快。 我不会像这样擦拭SSD。 固态硬盘通常具有先进的耗损均衡。 基本上,写驱动器不是写现有的数据,而是写未使用的部分。 这需要一点时间来正确地encryption所有的数据。 到那个时候,你已经穿好了SSD,虽然只有一点点。

/dev/random通过系统收集的熵产生随机数据(键盘快捷键之间的时间延迟,以纳秒精度测量数据包到达的networking时序等)。 如果没有足够的熵,则该设备在收集更多熵时阻塞输出。

/dev/urandom使用收集的熵,但它也使用伪随机生成器。 所以它没有那么多的熵,不像/dev/random ,但是速度很快。 然而,它的输出具有足够高的熵,所以如果你没有一些非常高的安全限制(通常是密钥生成),你可以在任何地方使用它。

如果用高熵垃圾覆盖块级别的SSD,则实际上会覆盖非常低(在大多数情况下不可达)级别的闪存RAM。 这是因为SSD控制IC没有任何调查的可能性,你的数据真的是垃圾,所以它的重复数据删除机制很容易避免。

但闪存RAM有一个最大的块写,你发送一个这样的行动更接近其生命到期。 但SSD在开始死亡之前可能会被覆盖大约10000-100000次,而且数据擦除不需要经常发生,所以还没有问题。

为了回应我的回答,我必须承认擦拭通常不是SSD的好主意。

除了上面的答案,我想推荐frandom

它比urandom更快。 随机性比随机性要快得多,但速度相当缓慢。 Frandom是我select擦拭磁盘和擦除磁盘的唯一select。 它不会像随机和随机产生相同的熵,但擦拭磁盘应该是足够的。 正如MadHatter所指出的那样,所使用的algorithm有缺点。 但是对于擦除磁盘,您只需要确保不可能重新构build可能的剩余位。

如果遇到问题, ArchWiki会有一个很好的文档。 ArchWiki还涵盖了更多有关如何创build磁盘的详细信息。