NTFS文件系统中文件的安全擦除.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NTFS文件系统中文件的安全擦除   摘要:对于国家安全部门的涉密文件的管理,往往与国防安全息息相关。其中,涉密文件的销毁是涉密文件管理的重要环节,也是防止涉密文件泄露的工作重点。文章从安全回收文件的角度,分析NTFS文件系统的存储组织结构,给出NTFS下文件的安全擦除方法。   关键词:文件系统;NTFS;文件擦除   中图分类号:TP309.2文献标识码:A文章编号:1009-3044(2010)20-5463-02   NTFS(New Technology File System)是微软开发的具有较好容错性和安全性的文件系统。NTFS将磁盘卷中的所有数据都以文件的方式,而数据类型,大小等信息都作为文件的属性,记录在主文件表(Main File Table, MFT)记录中,每条MFT记录都分配同样大小的空间描述文件(夹)。当文件放入回收站并被清空删除时,操作系统将文件MFT记录相应字段置为删除标志(在MFT中0x16偏移处),同时文件MF记录号在$MFT的Bitmap属性中对应位置0标志该MFT记录号可供重新分配,将文件占用的数据簇在$Bitmap中的对应位置0标志空闲可供再分配。虽然删除文件,在操作系统用户视图中无法获取,但通过数据恢复手段,该文件仍然可以再现。   本文对NTFS的主文件表记录及位图文件进行分析,研究了NTFS文件系统下文件的安全擦除。   1 NTFS 卷文件管理   1.1 簇管理   NTFS以簇为基本单位分配回收存储空间[1],与FAT结构不同,NTFS卷(volume)从0扇区开始划分簇,每簇为1,2,4或8个扇区,根据分区的大小不同,最大值不超过8扇区,格式化时可以以格式化参数的形式设定。而在FAT中,由于卷管理空间的限制,只能通过增加簇大小来管理大容量硬盘,较NTFS文件系统,容易造成存储空间的浪费。NTFS簇大小,即每簇扇区数保存在BOOT扇区(0扇区)。同时,NTFS通过Bitmap文件记录所有簇的使用情况,1个bit对应一个簇,值为1表示已经分配,为0表示未分配。FAT文件系统中的FAT表不仅记录了数据簇的使用情况,还标明了数据簇的链接关系。   NTFS使用逻辑簇号(logical cluster number, LCN)和虚拟簇号(virtual cluster number, VCN)来对簇进行定位。LCN是对卷中所有簇头到尾进行简单编号,VCN则是对属于特定文件的簇从头到尾进行编号,以便访问文件中的数据,LCN是无符号整数,而VCN则是带符号整数,VCN可以映射成LCN,由Data Runs数组完成这个映射。NTFS数据区管理不是采用链接存储,而是采用索引存储[2],文件通过自己的Data Runs数据建立索引表,一个Run就是一个连续存储块,Data Runs数组由若干Run组成,以0x00结束。每个Run包括3部分,即头部,占用簇数,起始簇号。簇号用VCN,第一个VCN是相对于0簇。头部占用1个字节,存放占用簇数和起始簇号的字节数根据头部确定。如对于以下十六进制数据表示的如下Data Runs数组。   0x12 D4 38 04 00   其中,根据头部0x12取其高4位可知1字节(值为随后D4)表示占用簇数,取低4位可知2字节(值为3804),即表示0x0438簇开始的0xD4个簇。而随后的0x00表示Data Runs数组已到数组尾部。   假设一个文件的存储分布的Data Runs数组如下:   0x12 D4 38 04 31 28 D0 49 01 21 CB FF 00   则分解成4个Run:   12 D4 38 04,31 28 D0 49 01,21 23 CB FF,00   即文件存储在3个连续块:   1)Run 1: 0x0438簇开始的0xD4个簇。   2)Run 2: 0x0149D0+0x0438=0x014E08簇开始的0x28个簇。   3)Run 3: 这里VCN为0xFFCB=-0x35,则与前面Run的起始簇号累计为0x014E08-0x35=0x014DD3开始的0x23个簇,这里将VCN 0xFFCB换算成LCN,它相对于前一起始地址0x014E08。   4)Run 4: 0x00,Data Runs数组到达尾部。   由上可知,文件的存储地址并不是完全依次连续增加的,而是依据数据簇的分配算法得出的。   1.2 主文件表和位图属性   NTFS卷上的任何事物都是文件[2],文件在卷上的位置都是通过主文件表(master file table, MFT)记录来确定的,其组织结构图如图1所示。MFT是一个对应的数据库,由一系列的文件记录组成,以下称其为MFT记录。卷中每一

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档