CN109683819A - 一种磁盘文件的内容不可逆地软删除方法 - Google Patents
一种磁盘文件的内容不可逆地软删除方法 Download PDFInfo
- Publication number
- CN109683819A CN109683819A CN201811548211.3A CN201811548211A CN109683819A CN 109683819 A CN109683819 A CN 109683819A CN 201811548211 A CN201811548211 A CN 201811548211A CN 109683819 A CN109683819 A CN 109683819A
- Authority
- CN
- China
- Prior art keywords
- file
- data
- sector
- soft
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及磁盘数据删除领域,具体地,是一种磁盘文件的内容不可逆地软删除方法。本发明通过特殊的复写方法和重复多次的复写,来达到较为彻底的数据删除。这种方式的删除效果比较理想,这种销毁方式也被称为软销毁,或者是逻辑销毁。这种方法主要是通过将一些之前已经定义好的完全没有规律与意义的随机信息数据,通过不断重复地覆盖之前删除的文件在硬盘上驻留的数据,从而达到数据擦除的目的。这种擦除方式可以在较大程度上使文件数据不可完全复原,进而实现文件内容的防泄密。
Description
技术领域
本发明涉及磁盘数据删除领域,具体地,是一种通过简单的操作实现数据的不可恢复性彻底删除。
背景技术
存储于硬盘中的每个文件都可以被分为两个部分:存储数据的数据区和文件头。文件头用于存储并记录文件的名称、文件的自身属性、所占用的簇号等,并将该头文件存储在一个簇中并记录到文件分配表中,同时将真正存储的数据存储在数据区中。通常我们所做的删除,也就是将文件丢到回收站再清空回收站,这在实际上表现出来只是修改了文件头的前两个代码,将这个修改映射在文件分配表中,就是文件被做了删除标记,以及将文件所占用的簇号在文件分配表中的登记编号清零,表示这个文件存储所占用的空间被释放,这也就是为什么我们在通常的删除文件后,硬盘的剩余空间显示增加的原因,此时当然是没有真正删除的,真正的文件内容仍然被存储在原来所在的数据区中,而不是随着文件被做了删除标记而彻底删除。
在使用新硬盘之前必须要对其进行两个操作,一个是分区,另一个是格式化,分区操作是将硬盘划分为区域,并在不同区域存储不同的数据。在彻底删除方面,我们只需要注意“目录区”以及“数据区”。目录区的职责是存储数据区中数据的地址等信息;而数据区则有着保存所有文件真正的数据信息的职责。
所有的硬盘都是由若干个盘片组成的。在这些盘片的同心圆上就保存着数据,这些具有保存数据功能的同心圆被称为磁道,见图1和图2。在需要访问硬盘上不同部分的数据时,通过硬盘的读写头在各个盘片的表面上方不断挪动,就可以轻而易举地访问到硬盘的不同部分。也正因为硬盘上保存在任何地方的数据都能够通过这种方式被直接访问到,所以文件中的每一条数据都不必按顺序存储,它们可以被保存到任何地方。
每个文件分为两个部分:存储数据的数据区和文件头。文件头存储并记录着文件的名称、文件的自身属性、所占用的簇号等。文件头存储在一个簇中,并记录到文件分配表中,而真正存储的数据存储在数据区中。通常我们所做的删除只是修改了文件头的前两个代码,真正的文件内容仍然被存储在原来所在的数据区中,而不是随着文件被做了删除标记而彻底删除。
想要真正删除这个数据,就必须等到之后新保存进来的新数据写入,并正好将这块区域分配给新数据,把此数据区之前存储的数据覆盖掉,这样一来才算是将原来的数据删除。如果没有新的数据保存进来,也就是说这块区域没有被之后保存的数据覆盖,原数据就永远不会从磁盘上消失。
发明内容
通过物理方式来破坏或者重置硬盘被称为硬销毁,这种暴力的处理方式在通常情况下肯定是不会采用的,而且这也只是比较低端的做法。现已经研制出了硬盘数据销毁机,又被称为硬盘消磁机或多功能磁性存储介质信息销毁机,是一款能够快速彻底销毁“硬盘、U盘、CF卡、记忆棒”等存储介质上面所有数据信息的设备。这种设备能在不损坏硬盘再度使用的前提下在物理层面将硬盘上的数据完全清空,但是价格高昂,且一般情况下的硬盘并不值得此等程度的销毁技术的使用。
本发明提出了一种软件擦除手段,可以彻底删除硬盘中指定的文件内容,使文件数据和内容无法恢复,而不破坏硬盘的重复使用。
本发明最大限度地防止存储在硬盘上的个人(企业)客户信息、未公开的政策法规、商业信息等的泄露,尤其适合于云存储环境中的数据删除。
本发明采用如下技术方案实现:
一种磁盘文件的内容不可逆地软删除方法,其特征在于,包括:
步骤1、创建一个删除文件的类,类中通过获取文件路径的参数来删除该文件;
步骤2、选择待删除文件,定位存储该文件的数据的首扇区,具体是首先获取到文件的大小,从而获得文件数据所占的扇区的数目,
步骤3、获得随机字符串来填充到待删除文件所在的扇区,并将此过程重复设定次数;
步骤4、检测当前扇区完成的扇区是否为最后一个扇区,若是,修改文件的创建时间、上次修改时间、上次访问时间,否则,重复步骤3。
在上述的一种磁盘文件的内容不可逆地软删除方法,步骤3中,设定次数为3次。
本发明通过特殊的复写方法和重复多次的复写,来达到较为彻底的数据删除。这种方式的删除效果比较理想,这种销毁方式也被称为软销毁,或者是逻辑销毁。这种方法主要是通过将一些之前已经定义好的完全没有规律与意义的随机信息数据,通过不断重复地覆盖之前删除的文件在硬盘上驻留的数据,从而达到数据擦除的目的。这种擦除方式可以在较大程度上使文件数据不可完全复原,进而实现文件内容的防泄密。
附图说明
附图1是磁盘分区组成示意图。
附图2是磁盘磁道和扇区示意图。
附图3是文件数据的彻底软删除的流程示意图。
具体实施方式
每次硬盘的读写头在硬盘上写入数据的时候,并不是使用非常强的信号来写入每一位数据,而是使用一种弱到不会影响其他位的数据的信号强度来写入数据的。这是理所应当的,因为写入数据的强度过高就可能影响到写入位的相邻位,从而造成数据的错误与混乱。但是,使用这种较弱强度的信号来写入数据有着明显的缺点,那就是可以通过数据位的绝对信号强度来判断这个数据位之前所存储的是哪一种数据。举例来说,一个数据位现在的数据为1,之前的数据为0,这就可以通过专门的工具来查出,而且这个过程可以重复地进行七次。这也就说明了:如果想防止其他人恢复你已经删除的文件数据,就必须至少覆盖七次以上来保证无法通过这种方式来盗取你的文件信息。需要提出的一点是,如果使用更加混乱的随机数据来填充可以适当减少覆写的次数。
硬盘在每次进行写操作时,用来写数据的读写磁头在进行写操作时,对要写入的数据位的位置并不一定定位得十分精准。这样的一些失误,就会造成磁道的边缘上有一些之前想要写入却因为偏差而没有正确写入的数据,这部分数据就有可能被专业的工具检测到并还原出来。如果这部分数据恰好是较为重要或敏感的信息,则会造成较大的影响。
为此,本发明使用随机字符来覆写目标区域3次,以达到较好的效果。在具体的程序设计上,首先创建一个删除文件的类,类中的主要方法就是通过获取文件路径的参数来删除该文件。该方法中需要首先获取到文件的大小,从而获得文件数据所占的扇区的数目,并获得随机字符串来填充到这几个扇区,并将此过程重复3次,最后修改文件的创建时间、上次修改时间、上次访问时间来完成该方法。
完成该类后,创建一个可视化的窗口,在窗口上添加按钮和文本框,方便用户来选择文件和开始销毁文件。在后台通过按钮点击交互和线程来启动后台算法,并调用彻底删除文件的类的方法来达成删除的目的。
此外,对文件的路径是否正确和文件是否真实存在进行判断,并做出相应的反馈。同时为了更加符合人机交互的原则,在删除文件时变更“开始粉碎”按钮的文本字样为“正在删除”,由此告知用户程序正在运行而并非没有做出反应。在完成删除操作后,通过弹窗告知用户,并将“开始粉碎”变更为“粉碎完成”来方便用户进行下一次的删除操作。
核心代码:
·首先将获取到的参数,也就是文件的路径转换成String类型的变量
stringfilename=filePath.ToString(); (1)
·通过if语句和IsNullOrEmpty()方法,来确认转换得到的string类型的变量是否为空
if(string.IsNullOrEmpty(filename)) (2)
·在确认文件存在之后开始正式的算法,通过File类的SetAttributes()方法来将文件的属性设为Normal,即可读可写的状态。这样做是为了防止之前该文件处于不可读或者不可写的状态导致删除文件和覆盖文件失败
File.SetAttributes(filename,FileAttributes.Normal); (3)
·接下来创建一个变量来获取该文件所占扇区的数目,具体方法就是通过将文件大小除以512,也就是每个扇区的大小,并向上取整来获得。这里用到的是Math类的Celling()方法
doublesectors=Math.Ceiling(newFileInfo(filename).Length/512.0);(4)
·创建一个含有512个元素的byte类型的数组,用于容纳之后生成的随机数
byte[]dummyBuffer=newbyte[512]; (5)
·创建一个RNGCryptoServiceProvider类的对象,来方便后续使用其方法来获取强随机数
RNGCryptoServiceProviderrng=newRNGCryptoServiceProvider(); (6)
·通过创建FileStream类的对象来创建文件流,并将FileMode枚举值设为Open,即打开现有的文件,流指向文件的开头
FileStreaminputStream=newFileStream(filename,FileMode.Open); (7)
·通过FileStream对象的Position属性来设置操作文件指针的位置,0代表文件的开头
inputStream.Position=0; (8)
·通过for循环在文件数据所在的扇区中填写随机数,具体方法为通过之前创建的RNGCryptoServiceProvider对象的GetBytes()方法,将随机数填充到之前创建的含有512个元素的数组当中。然后,通过文件流将数组中的随机数写到相应的位置。并将该过程通过for循环来执行3次,以达到数据的彻底删除
rng.GetBytes(dummyBuffer); (9)
inputStream.Write(dummyBuffer,0,dummyBuffer.Length); (10)
·最后,进行彻底删除的收尾工作,通过文件流的SetLength()方法将文件清空,并将文件流关闭。将文件的创建时间、上次访问时间、上次修改时间均修改成一个任意时间并将文件删除
inputStream.SetLength(0); (11)
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (2)
1.一种磁盘文件的内容不可逆地软删除方法,其特征在于,包括:
步骤1、创建一个删除文件的类,类中通过获取文件路径的参数来删除该文件;
步骤2、选择待删除文件,定位存储该文件的数据的首扇区,具体是首先获取到文件的大小,从而获得文件数据所占的扇区的数目,
步骤3、获得随机字符串来填充到待删除文件所在的扇区,并将此过程重复设定次数;
步骤4、检测当前扇区完成的扇区是否为最后一个扇区,若是,修改文件的创建时间、上次修改时间、上次访问时间,否则,重复步骤3。
2.根据权利要求1所述的一种磁盘文件的内容不可逆地软删除方法,其特征在于,步骤3中,设定次数为3次。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811548211.3A CN109683819A (zh) | 2018-12-18 | 2018-12-18 | 一种磁盘文件的内容不可逆地软删除方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811548211.3A CN109683819A (zh) | 2018-12-18 | 2018-12-18 | 一种磁盘文件的内容不可逆地软删除方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109683819A true CN109683819A (zh) | 2019-04-26 |
Family
ID=66186782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811548211.3A Withdrawn CN109683819A (zh) | 2018-12-18 | 2018-12-18 | 一种磁盘文件的内容不可逆地软删除方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109683819A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831224A (zh) * | 2020-06-22 | 2020-10-27 | 中孚安全技术有限公司 | 一种擦除exFAT分区文件剩余空间的方法,系统及设备 |
CN112181310A (zh) * | 2020-10-14 | 2021-01-05 | 北京安石科技有限公司 | 硬盘数据的深度擦除/自毁方法及系统 |
CN117407927A (zh) * | 2023-12-15 | 2024-01-16 | 山东万里红信息技术有限公司 | 一种硬盘数据销毁方法、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6507911B1 (en) * | 1998-07-22 | 2003-01-14 | Entrust Technologies Limited | System and method for securely deleting plaintext data |
CN101763317A (zh) * | 2009-12-31 | 2010-06-30 | 中国软件与技术服务股份有限公司 | 磁介质数据清除方法 |
CN102693387A (zh) * | 2012-06-01 | 2012-09-26 | 北京理工大学 | 一种ntfs文件系统的数据擦除方法 |
-
2018
- 2018-12-18 CN CN201811548211.3A patent/CN109683819A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6507911B1 (en) * | 1998-07-22 | 2003-01-14 | Entrust Technologies Limited | System and method for securely deleting plaintext data |
CN101763317A (zh) * | 2009-12-31 | 2010-06-30 | 中国软件与技术服务股份有限公司 | 磁介质数据清除方法 |
CN102693387A (zh) * | 2012-06-01 | 2012-09-26 | 北京理工大学 | 一种ntfs文件系统的数据擦除方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831224A (zh) * | 2020-06-22 | 2020-10-27 | 中孚安全技术有限公司 | 一种擦除exFAT分区文件剩余空间的方法,系统及设备 |
CN111831224B (zh) * | 2020-06-22 | 2024-04-19 | 中孚安全技术有限公司 | 一种擦除exFAT分区文件剩余空间的方法,系统及设备 |
CN112181310A (zh) * | 2020-10-14 | 2021-01-05 | 北京安石科技有限公司 | 硬盘数据的深度擦除/自毁方法及系统 |
CN117407927A (zh) * | 2023-12-15 | 2024-01-16 | 山东万里红信息技术有限公司 | 一种硬盘数据销毁方法、计算机设备和存储介质 |
CN117407927B (zh) * | 2023-12-15 | 2024-03-22 | 山东万里红信息技术有限公司 | 一种硬盘数据销毁方法、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7856451B2 (en) | Selective file erasure using metadata modifications | |
JP4822230B2 (ja) | Wormメディア上での情報取り出し可能性を部分的に使用不可にするための装置、方法、およびプログラム | |
JPH05313980A (ja) | 情報記録方法 | |
KR950034096A (ko) | 기록 매체용 기록 방법 및 장치 | |
CN109683819A (zh) | 一种磁盘文件的内容不可逆地软删除方法 | |
JP2008523468A (ja) | 不揮発記録媒体消去システム及び方法 | |
KR100703680B1 (ko) | 플래시 파일 시스템 | |
US8565051B2 (en) | Storage system and method for generating file system in the storage system | |
US20100250632A1 (en) | Information processing apparatus, control method for information processing apparatus, and storage medium | |
TW200416540A (en) | Entry point for digital rights management data | |
WO2008136563A1 (en) | Method of storing meta-data and system for storing meta-data | |
KR101181980B1 (ko) | 보안성을 강화한 데이터 영구 삭제 방법 | |
JP3133755B2 (ja) | データ記憶装置 | |
CN102968597A (zh) | 一种基于磁盘数据连接链文件粉碎方法 | |
CN105139870A (zh) | 一种光盘的实时刻录方法及装置 | |
US20070168838A1 (en) | Reproduction apparatus and method for reproducing a unique medium identifier | |
RU96433U1 (ru) | Система безвозвратного удаления файла (шредер файла) | |
KR100970700B1 (ko) | 데이터를 영구적으로 삭제하는 방법 | |
JPH0876935A (ja) | バックアップデータ作成再生システム | |
JP2622418B2 (ja) | 情報記録再生方式 | |
US7715133B2 (en) | Method for duplicating data | |
TWI251743B (en) | Method for disabling writing function of storage apparatus | |
JP2006119944A (ja) | データ記憶装置のデータ消去方法、データ消去プログラムおよび該データ消去プログラムが記憶された記憶媒体 | |
JP3936839B2 (ja) | データ保管システム | |
Krenhuber et al. | Forensic and anti-forensic on modern computer systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190426 |
|
WW01 | Invention patent application withdrawn after publication |