CN109683819A - 一种磁盘文件的内容不可逆地软删除方法 - Google Patents

一种磁盘文件的内容不可逆地软删除方法 Download PDF

Info

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
Application number
CN201811548211.3A
Other languages
English (en)
Inventor
丁文佳
张沪寅
王玉林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201811548211.3A priority Critical patent/CN109683819A/zh
Publication of CN109683819A publication Critical patent/CN109683819A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic 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次。
CN201811548211.3A 2018-12-18 2018-12-18 一种磁盘文件的内容不可逆地软删除方法 Withdrawn CN109683819A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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文件系统的数据擦除方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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