本类共有 867 篇文章,今日更新 0

FAT16下文件的另类加密法

[ 来源:http://www.91now.com/down/ | 作者: | 时间:2007-5-18 17:38:02 | 浏览: 人次 ]


      这本篇文章中用到的一个重要的软件就是WinHex; 
  该软件在各个网站可以搜索到的; 
  好我们先介绍一下什么是FAT16分区; 这是MS-DOS和最早期的Win 95操作系统中最常见的磁盘分区格式。它采用16位的文件分配表,能支持最大为2GB的硬盘,是目前应用最为广泛和获得操作系统支持最多的一种磁盘分区格式,几乎所有的操作系统都支持这一种格式,从DOS、Win95、Win 97到现在的Win 98、Windows NT、Win 2000,甚至火爆一时的Linux都支持这种分区格式。但是在FAT16分区格式中,它有一个最大的缺点:磁盘利用效率低。因为在DOS和Windows系统中,磁盘文件的分配是以簇为单位的,一个簇只分配给一个文件使用,不管这个文件占用整个簇容量的多少。这样,即使一个文件很小的话,它也要占用了一个簇,剩余的空间便全部闲置在那里,形成了磁盘空间的浪费。由于分区表容量的限,FAT16支持的分区越大,磁盘上每个簇的容量也越大,造成的浪费也越大。所以为了解决这个问题,微软公司在Win97中推出了一种全新的磁盘分区格式FAT32。  
  现在的人很少是用FAT16文件系统的硬盘了,找一块却是是很不容易,但是还有办法的,大家可以把一块U盘格式化成FAT16分区,然后我再在U盘里建立一个ABC.TXT的文件。 
  好了,一切就绪: 
  用WinHex观察根目区(其中WinHex的具体用过我就不在这里具体介绍了!^_^)我们可以看到目录项的前8个字节十六进制的内容是 41 42 43 20 20 20 20 20 显而易见,文件名不够8个字节就补充空格(补充20 在十六进制码中唯空格)现在我可以做的事情就非常多了,譬如,我们可以在这个更改文件的名称,但是在手工修改的时候我们应该遵循FAT16文件系统的文件名命名规则!!否则..... 
  还有一点就是在FAT16文件系统文件名不区分大小写,不管大写还是小写在系统内部的文件目录项中只能用大写字母,如果你不信你可以手动的更改一下文件名的大小写。(61 62 63 20 20 20 20 20)你现在可以试着修改保存,推出WinHex. 
  然后我们再进入我们的U盘,可以清清楚楚的看到有个一个abc,txt文件,那你试着打开过他吗?双击,哈哈··问题出现了,找不到文件,问你是不是要创建一个新的文件,是吗?? 
  原因是这样的:在Windows系统总是不容许同一个目录下有两个文件名一样的文件存在的,要是你刚才在弹出的那个里点了“是”那么你就会在U盘的根目录下会有两个同文件名的的文件,但其中一个为0KB。 
  刚才系统提示时候点击“是”是系统自动建立的文件,我们可以发现文件名虽然在系统文件下显示的是小写的abc ,但是实际删的目录项上文件名相应区域还是用的大写字母!当你在系统中对它们任何一个文件进行修改或是删除,都是对第二个文件进行操作,如果你想把第一个文件试图删掉,哪你只会删掉第二个文件,换句话说,也就是刚才那个被改了名字的文件是不可以被删除的,是因为文件在U盘中占用的簇依然还存在,要想恢复文件,我们需要做的只是再用WinHex这个的目录项中把文件的名改回大写即可! 
  好了,我们知道原理了 ,就可以用该软件为自己的文件加密了!!^_^ 
    对了,这种方法在FAT32中也是可以的!!

上一篇:BMP文件格式分析

下一篇:后门的解说

广告位