如何在Android中删除特定文件以使其无法恢复?


9

根据我的经验,从计算机文件系统中删除的文件通常可以恢复,除非使用特殊程序(通常称为“切碎”)将其覆盖。

基于Android的HTC智能手机有何不同?如何从此类智能手机中删除特定文件,以使该文件无法恢复?


您只是在寻找电话托管的选项,还是将电话作为磁盘驱动器连接时接受有关删除文件的建议?
Bernhard Hofmann

@Bernhard Hofmann:好吧,如果将其作为驱动器进行连接会使这种操作更加容易-那总比没有好。
Sharptooth

Answers:


8

不幸的是,这并不是那么容易。

由于没有用于安全删除文件的API,因此需要“安全删除应用程序”的根目录才能实现对存储设备的块级访问最终,只有访问已删除文件的块,应用才能使用随机数据覆盖文件的剩余部分。最终,因为闪存设备可以执行损耗均衡。如果是这种情况,则块#42不一定总是相同的物理块,这会使系统调用无效。

我认为这就是为什么还没有针对Android的安全删除解决方案的原因。至少我在XDA上找不到一个。


程序可以打开一个现有文件,用垃圾桶将其全部覆盖,然后关闭该文件然后将其删除吗?
Sharptooth

可以编程。但这将是无用的,因为不能保证覆盖将在与现有数据相同的物理块上发生。
流量

1
您是说文件系统或其他实体将透明地将新写入的数据重新定位到新位置,并将以前占用的位置标记为空闲吗?
Sharptooth

1
是的,这是出于各种原因(碎片等)想要写入新数据的操作系统的选择,以及几乎每个现代OS都会执行的操作。即使没有,仍然存在可能发生磨损平衡的层。
流动

3

一种简单的解决方案是删除文件,然后用其他任何数据填充内存,以确保删除文件先前拥有的空间被覆盖。

内存填满后,可以删除用于填充的文件,并再次释放空间-只有现在,恢复尝试将仅找到填充文件,而不是原始删除的文件。

请注意,这仅适用于打击简单的家庭恢复工具,例如testdisk从理论上讲,仍然可能存在恢复至少部分甚至整个原始文件的方法-但是它们将需要一些复杂的高端分析方法。这种方法的一个示例是分析是否由于闪存损耗均衡而保留了某些数据。但是,这并不容易做到,并且AFAIK需要将存储卡连接到某种自定义读取器设备,甚至可能需要拆开存储设备。


大多数Flash介质上的耗损平衡并不能始终保证覆盖文件会覆盖内存的同一物理位置en.wikipedia.org/wiki/Wear_leveling
Chahk 2011年

@Chahk,是的,我同意,这就是为什么我包含“复杂方法”免责声明的原因。重点是,使用家用工具(如)恢复通常删除的文件很简单testdisk。如果有一些易于使用的家用工具来恢复由于平整磨损而遗失的内容,我从未听说过。请注意,我从未说过这种数据洪泛是绝对的方法,但很可能足以满足请求者的需求。
Ilari Kajaste 2011年

我在免责声明中添加了更多详细信息,以改善我的回答,现在,我将分析闪存损耗平衡作为可能残留的攻击媒介的一个示例。
Ilari Kajaste 2011年

1

如果将设备连接为磁盘驱动器,则可以使用Windows上的sdelete之类的实用程序来安全删除文件。http://technet.microsoft.com/zh-cn/sysinternals/bb897443

在网页上:“ SDelete实施了国防部的清除和消毒标准DOD 5220.22-M,使您确信,一旦使用SDelete删除,文件数据将永远消失。”


它将有助于解决此答案android.stackexchange.com/questions/14739/…中提到的磨损平衡吗?
Sharptooth

老实说,我不知道。我什至不知道是否有任何实现磨损均衡的Android设备。由于它会覆盖原始扇区,因此我希望它不会受到损耗平衡的影响。
伯纳德·霍夫曼

好吧,如果存在磨损平衡,则此程序会受到影响-它没有任何魔术效果,只需打开文件进行写入(就像其他任何程序一样),然后在其中写入垃圾,然后关闭文件即可。如果存在磨损平衡,程序将无法得知-它使用常规的操作系统原语。
Sharptooth 2011年

我不知道几次使用清洁选项是否可以防止磨损。由于这超出了我们的控制范围,因此应清理几次空闲空间以“找到”释放的扇区并擦除它们。
Bernhard Hofmann

也许可以,但是我想这会花费很多时间。
Sharptooth

1

如果文件在sdcard上,则可以将sdcard插入笔记本读卡器并使用srmsdelete或者使用通常在桌面上用于安全删除文件的任何方式。

如果文件位于内部存储器中,则可能完全删除该文件(以及电话上的所有其他内容)的唯一可靠方法是在“设置”>“安全性”中启用完整的电话加密,等待所有内容加密(大约一小时) ),然后恢复出厂设置。

据说Play商店中还有一些应用可以使用DoD级别算法擦除可用空间,但是我不知道它们有多好或如何工作。

顺便说一句,请记住,闪存具有有限数量的读写周期,因此,频繁运行这些应用程序可能会缩短内存芯片的使用寿命。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.