Open AlexiaChen opened 4 years ago
title: 防止数据被恢复的可能 date: 2016-09-02 18:17:39 tags:
平时大家有没有好奇过,为什么硬盘上被删除的数据有时候还能被还原恢复呢?其中的原理是什么呢?
其实,如果操作系统学得不错的人应该知道,数据文件被删除只是操作系统把文件从文件系统中删除,也就是文件在文件系统中的索引(地址)被删除,意思就是,操作系统告诉文件系统:Hey,哥们儿,我不需要这个文件了,你把这文件从检索索引中删除吧,我不再需要了。其实真实的文件数据还会真实存在物理硬盘上,没有真正被消除,除非有新的文件数据被保存并恰好覆盖了之前的文件数据。数据恢复就是依赖这个原理工作的。
那么如何防止数据被恢复的可能呢?其实如果脑袋聪明的人一下子就能想到,我往原文件里面大量反复写入Dirty Data来覆盖之前的数据不就可以了么?答对,就是这个思路。其实现今无论多么先进的数据销毁软件都是基于这么个思路(甚至美国中央情报局销毁绝密数据也是这么干的)。只不过越要降低被恢复的可能性写入的次数随之增加,所以耗费的时间也越多。
垃圾数据只写入一次还不够,需要多次覆盖,这是因为,直观上理解,一次写入后,磁盘上的数据就变化了。其实在硬件层面,不是这样的,还是能够恢复的。恢复的技术有下面两种:
所以根据以上的特性,才有了许多数据擦除算法的诞生,覆盖次数越多,随机垃圾数据越“随机”,被恢复的可能性也就越低,安全性也就越高。到了Gutman method这样的级别,理论上已经证明了,经过此算法处理过的数据,没可能恢复。 但是,弱点就是速度很慢,如果需要有大量机密数据要被销毁,这将是耗时的任务。
我写过一个数据擦除的库,等级最高也就是支持到Gutman这个级别。其中DOD5220_22M算法是之前美国中央情报局采用的,不过现在被抛弃了,我猜测原因就是速度和安全性的权衡。至于他们为什么没有采用Gutman算法,其实也是速度和安全性的权衡,因为太慢了:) 这告诉我们,评价衡量一个工具需要综合考量。
你好想学习一下,呜呜工作量大很难搞
title: 防止数据被恢复的可能 date: 2016-09-02 18:17:39 tags:
数据恢复
平时大家有没有好奇过,为什么硬盘上被删除的数据有时候还能被还原恢复呢?其中的原理是什么呢?
其实,如果操作系统学得不错的人应该知道,数据文件被删除只是操作系统把文件从文件系统中删除,也就是文件在文件系统中的索引(地址)被删除,意思就是,操作系统告诉文件系统:Hey,哥们儿,我不需要这个文件了,你把这文件从检索索引中删除吧,我不再需要了。其实真实的文件数据还会真实存在物理硬盘上,没有真正被消除,除非有新的文件数据被保存并恰好覆盖了之前的文件数据。数据恢复就是依赖这个原理工作的。
那么如何防止数据被恢复的可能呢?其实如果脑袋聪明的人一下子就能想到,我往原文件里面大量反复写入Dirty Data来覆盖之前的数据不就可以了么?答对,就是这个思路。其实现今无论多么先进的数据销毁软件都是基于这么个思路(甚至美国中央情报局销毁绝密数据也是这么干的)。只不过越要降低被恢复的可能性写入的次数随之增加,所以耗费的时间也越多。
垃圾数据只写入一次还不够,需要多次覆盖,这是因为,直观上理解,一次写入后,磁盘上的数据就变化了。其实在硬件层面,不是这样的,还是能够恢复的。恢复的技术有下面两种:
所以根据以上的特性,才有了许多数据擦除算法的诞生,覆盖次数越多,随机垃圾数据越“随机”,被恢复的可能性也就越低,安全性也就越高。到了Gutman method这样的级别,理论上已经证明了,经过此算法处理过的数据,没可能恢复。 但是,弱点就是速度很慢,如果需要有大量机密数据要被销毁,这将是耗时的任务。
我写过一个数据擦除的库,等级最高也就是支持到Gutman这个级别。其中DOD5220_22M算法是之前美国中央情报局采用的,不过现在被抛弃了,我猜测原因就是速度和安全性的权衡。至于他们为什么没有采用Gutman算法,其实也是速度和安全性的权衡,因为太慢了:) 这告诉我们,评价衡量一个工具需要综合考量。