如何永久删除硬盘中的数据

根据纽约时报的一项基础隐私调查表明,人们在硬盘中数据的清除上存在着普遍的错误认识。绝大多数的人们并不知道仅仅删除文件是不够的,因为这样做并没有真正的将数据从计算机上清除干净。调查还发现,事实上仅有33%的二手硬盘将数据清除干净。在你想将硬盘丢弃或卖掉之前最好先确定硬盘是否还存有任何有关隐私的个人数据。如果你想通过格式化或数据粉碎软件彻底的清除数据,那么这篇文章可以给你提供帮助。

当你删除存储在计算机上的文件时,这些数据并没有真正移除,它们的信息被保存在操作系统可以查询到的目录中。当你删除文件时,实际上仅仅是将文件从文件夹中移走,并且将这部分区域标识为可写入新数据。因此,这个区域在被新的数据覆盖之前,原始数据都是可以被还原的。这就是所有数据还原软件的工作原理,根据目录还原那些已经删除的数据文件。完全清除数据的唯一方法就是覆盖它。你可以通过格式化硬盘或是可以在硬盘中填充随机数字的数据擦除软件来实现这个目标。

两种主要的数据覆盖方法。

一、The Gutmann Method

它的理论依据是1996年奥克兰大学计算机科学学院皮特.古特曼教授在第六届USENIX安全会议上所作的论文-《安全删除磁固存储器上的数据》。这是迄今为止最安全的数据删除方法------覆盖数据35次,使得任何还原数据的企图都是徒劳的。遗憾的是这种方法会耗费相当长的时间。

二、US DoD 5220-22.M

这种方法是美国国防部《清理和消毒标准》中的一部分,这种方法仅仅需要覆盖数据几次,安全性没有古特曼方法高,但耗费的时间却相对较少。当然这覆盖数据的几次都是有讲究的,比如使用补码及随机数字来覆盖数据等。

当然,如果有人告诉您覆盖数据所需的最多次数,那么他一定在误导您。没人知道要多少次才够。如果您根本不想冒险,那么需要确保从未将任何重要内容加密地写入磁盘,并将它们直接解密到锁定的内存。别无选择。

Windows下如何彻底的清除数据

Eraser是一款免费开源的数据清除软件。操作平台,从DOS到 Windows 2003,支持单个文件,文件夹及整个硬盘的数据清除。这个软件提供了三种方式来覆盖数据,包括上面介绍的两种,还有一种叫“伪随机数据方式”。这种方法仅仅用在未使用过的区域和压缩驱动器上。

时间: 2024-10-01 18:30:36

如何永久删除硬盘中的数据的相关文章

sqlite删除数据库中的数据时偶尔会出现错误

问题描述 sqlite删除数据库中的数据时偶尔会出现错误 java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed. 求助,connection pool 是啥啊,求大神指教. 解决方案 如果确定不是连接被关闭,那还有可能就是多线程访问sqlite,sqlite数据库是单线程操作的,那么当N多个Thread同时调用的时候,可能报这错误.这也就

c#如何修改和删除DGV中的数据,不需要同步数据库

问题描述 c#如何修改和删除DGV中的数据,不需要同步数据库 只需要简单的在DGV上显示出修改后的东西,删除可能比较简单,就是修改应该怎么做 当然了 我希望能有一段参考的代码 或者一个参考的链接 重新描述一下 我的想法是在界面上设置几个TEXTBOX然后写文本,然后再将这些文本信息放到窗口界面的DGV对应选中的行当中 当然其中还要对比列的名称才能修改对应的列 比如说我写完了要修改的textbox文本 然后点击一个按钮(如保存)在DGV上就能显示出修改后的信息了 这个东西不需要经过数据库 只要在D

listview-如何删除数据库中的数据?

问题描述 如何删除数据库中的数据? 当我点击列表视图中的一个选项时,如何删除数据库中的数据?我使用下面的方法来选择列表视图的选项. listview.setOnItemClickListener(new OnItemClickListener(){ public void onItemClick(AdapterView adapterView, View convertView, int position, long id) { AlertDialog.Builder alertDialog =

FAILED: SemanticException [Error 10006]: Partition not found 怎么解决删除分区表中分区数据?

问题描述 测试环境是:hadoop2.6.1+hive1.2.1+spark-1.6.00:jdbc:hive2://2.hadoop.com:10008>insertoverwritetablet_service_detail_log_txtPARTITION(fdate="2016-01-06")select*fromt_service_detail_logwherefdate="2016-01-06";0:jdbc:hive2://2.hadoop.co

怎样删除Excel中的数据

问题描述 我想通过Oledb方式删除excel中满足条件的数据.下面是代码,运行后报"无法删除指定文件中的数据",怎样才能删除数据.望高手指点.stringsql=@"DELETEFROM[sheet1$]WHERE[MasterID]='DG1P20151727'";stringfilePath=@"D:test.xls";stringconnect=@"Provider=Microsoft.Jet.OLEDB.4.0;DataSou

保存数据库中其他对象不变,删除数据库中所有数据的实现方法

对象|数据|数据库 原帖内容:怎样把数据库中所有数据删除,然后把所有的自动增量复位?表太多,无法手工完成.http://community.csdn.net/Expert/topic/3094/3094555.xml?temp=.2920954 /*--原本打算这样--先禁用所有外键约束exec sp_msforeachtable "alter table ? nocheck CONSTRAINT all"--然后删除数据exec sp_msforeachtable "tru

MySQL 删除数据库中重复数据方法小结_Mysql

刚开始,根据我的想法,这个很简单嘛,上sql语句 delete from zqzrdp where tel in (select min(dpxx_id) from zqzrdp group by tel having count(tel)>1); 执行,报错!!~!~ 异常意为:你不能指定目标表的更新在FROM子句.傻了,MySQL 这样写,不行,让人郁闷. 难倒只能分步操作,蛋疼 以下是网友写的,同样是坑爹的代码,我机器上运行不了. 1. 查询需要删除的记录,会保留一条记录. select

Java删除数据库中的数据

1:删除数据库中数据表中的数据同样也是一个非常用的技术,使用executeUpdate()方法执行用来做删除SQL的语句可以删除数据库表中的数据 2:本案例使用Statement接口中的executeUpdate()方法,删除数据库中users表中id为1的用户信息   1 package com.ningmeng; 2 3 import java.sql.*; 4 /** 5 * 6 * @author biexiansheng 7 * 8 */ 9 public class Test06 {

删除数据库中重复数据的几个方法

数据|数据库|重复 方法一 declare @max integer,@id integerdeclare cur_rows cursor local for select 主字段,count(*) from 表名 group by 主字段 having count(*) > 1open cur_rowsfetch cur_rows into @id,@maxwhile @@fetch_status=0beginselect @max = @max -1set rowcount @maxdele