我想编写一个从硬盘驱动器中删除数据的应用程序。是否有任何我需要遵守的标准,以确保我的软件至少删除了最低限度,或者我应该使用现成的软件?如果有任何建议?
答案 0 :(得分:0)
请定义“数据删除”。这种擦洗是为了使取消删除成为不可能;或者只是删除数据?
如果要确保无法恢复,通常会使用随机位模式多次写入文件。由于磁位模式的模拟特性,在某些情况下可能会恢复被覆盖的数据。
在大多数情况下,在任何情况下都可以恢复正常的文件系统删除操作。删除文件时(使用普通文件系统删除操作),删除文件分配表条目,而不是数据。
答案 1 :(得分:0)
有标准......请参阅http://en.wikipedia.org/wiki/Data_erasure
您没有提供任何详细信息,因此很难判断它们是否适用于您的情况...删除具有OS内置文件删除的文件几乎总是可以恢复... OTOH格式化驱动器(不快速格式)通常是好的,除非你处理敏感数据(如客户,患者,财务等数据或某些安全相关的东西),然后上面提到的标准通常使用不同的数量/轮次/模式覆盖数据,所以使它几乎不可能恢复删除...在真正非常敏感的情况下,你首先使用这些方法中最好的,然后格式化驱动器,然后再次使用该方法然后物理破坏驱动器(这实际上意味着真正的破坏,不仅仅是删除电子产品或类似产品!)。
避免所有这些麻烦的最好方法是计划这种事情并使用经过验证的强磁盘加密(没有存储在驱动电子设备或媒体上的密钥!)...这样你就可以很容易只是格式化驱动器(不快),然后出售它...例如,因为任何强加密看起来像“随机数据”(如果正确实施)没有密钥是绝对无用的。
答案 2 :(得分:0)
我认为你所遇到的任何“标准”都不会比你自己提出的任何科幻小说或科学神秘主义更少。基本上,只要你物理覆盖数据(即使只是一次),也没有商业取证服务 - 即使面对你投入的任何金额 - 将声称能够恢复你的数据。
(在20世纪70年代,对于粗间距磁带,任何“用旋转位模式覆盖35次”的建议可能都是如此,但它与现代硬盘完全无关。)
您必须解决的更重要的问题是如何以物理方式覆盖数据。这通过任何类型的应用程序甚至OS编程基本上是不可能的,并且您必须找到一种方法来正确地与硬件通信并获得可靠的确认,即您要写入的位置确实已写入,并且没有任何有问题的集群重新定位到可能泄漏数据的磁盘的其他部分。
所以从本质上讲,这是一个非常低级的问题,如果您想要一个真正的解决方案,可能会让您大大超过硬盘制造商的手册。