一种基于FAT32文件系统格式下的数据保护方法.pdf

上传人:a3 文档编号:4060211 上传时间:2018-08-13 格式:PDF 页数:8 大小:377.76KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110051152.0

申请日:

2011.03.03

公开号:

CN102654870A

公开日:

2012.09.05

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 17/30申请公布日:20120905|||实质审查的生效IPC(主分类):G06F 17/30申请日:20110303|||公开

IPC分类号:

G06F17/30; G06F12/14

主分类号:

G06F17/30

申请人:

赛酷特(北京)信息技术有限公司

发明人:

程思进

地址:

100080 北京市海淀区北四环西路67号1230室

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明提供了一种基于fat32文件系统格式下的数据保护方法,属于信息安全技术领域。为解决现有技术中重要信息存储后被修改及误删除操作等不安全的因素。本发明提供一种基于fat32文件系统格式下的数据保护方法。所述方法包括基于fat32文件格式下,按照fat32格式划分平面寻址的存储空间,在文件系统的框架之上根据fat32文件系统中的标志位来判别储修改删除等指令对信息存储修改删除等指令进行控制。并在所需是变更设置。改善了重要信息的安全性。

权利要求书

1: 一种基于 fat32 文件系统格式下的数据保护方法, 其技术特征在于, 包括如下步骤 : A 初始化 fat32 文件系统, 对 fat32 文件系统结构进行分析, 计算出 fat 表的起始位置、 扇区大小、 根目录的起始位置, 并且记录在硬件设备中 ; B 通过 USB 通信模块接收外部系统的读写命令 ; C 分析外部的写命令操作请求, 并进行判断 ; D 根据判断外部读写命令, 对数据写入进行授权 ; E 重新对设备扇区进行读写 ; F 构造文件系统 ; G 将文件系统镜像下载到存储设备 ; H 重新枚举设备 ; I 对磁盘进行格式化。
2: 根据权利要求 1 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 重新定义磁盘及格式化, 包括以下步骤 : 重新对设备扇区进行读写 ; A 构造文件系统 ; B 将文件系统镜像下载到存储设备 ; C 重新枚举设备 ; D 对磁盘进行格式化
3: 根据权利要求 1 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 所述步骤 A 还包括 : 对 FAT32 文件系统结构进行分析, 读取文件系统的第一个扇区, 并且记录在硬件设备 中。
4: 根据权利要求 1 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 所述步骤还包括 : 分析外部的写命令操作请求, 同目标扇区数据做比较, 若此次操作要修改 FAT 项的值 为零, 属于删除 FAT32 文件系统下的文件或数据, 不执行操作。
5: 根据权利要求 1 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 根目录范围内写入扇区号时, 判断当前扇区下的文件目录结构的第一个字节不为 0xE5 并且要修改数据缓冲区下的相应文件目录结构体的第一个字节为 0xE5, 属于删除 FAT32 文 件系统的的目录结构, 不执行操作。
6: 根基权利要求 2 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 构造文件系统时, 按照 FAT 32 文件系统的标准协议将格式化系统的数据填写到每个数 据区。
7: 根基权利要求 2 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 将构造出的空文件系统镜像数据以扇区为单位全部下载到存储设备中。从存储分区的 第一个扇区开始全部写入到存储设备上。
8: 根基权利要求 2 所述的一种基于 fat32 文件系统格式下的数据保护方法, 其特征在 于, 对磁盘进行格式化时, 利用 USB Massstorage 协议的私有命令实现对文件系统格式化。

说明书


一种基于 fat32 文件系统格式下的数据保护方法

    技术领域 本发明涉及一种基于 fat32 文件系统格式下的数据保护方法, 一种基于 fat32 文 件系统格式下的数据保护方法, 属于信息安全技术领域。
     背景技术
     目前, 信息科技日益发达今天, 电子存储设备得到了广泛的应用, 常见的存储设备 有硬盘, U 盘等基于 fat32 文件系统下的存储设备。fat32 是系统存储设备分区格式的一 种。 这种格式采用 32 位的文件分配表, 使其对存储设备的管理能力大大增强, 突破了 fat16 对每一个分区的容量只有 2GB 的限制。由于现在的存储设备生产成本下降, 其容量越来越 大, 运用 fat32 的分区格式后, 我们可以将一个存储设备定义成一个分区而不必分为几个 分区使用, 大大方便了对存储设备的管理。普通存储设备通过 USB 接口的设备可以在电脑 上执行读写工作。此类产品给用户带来了非常便捷的服务。但是基于应用中的特殊需求无 法实现, 如限制写入次数 . 本发明提及的这种单次写入的存储方法对于一般用户似乎相当 不便, 毕竟存储后不能删掉, 单次使用完毕之后就作废了。 不过还是有特定领域的使用者有 此方面的需求, 例如公安系统证据采集中的数据存储, 在大量采用于搜证、 记录重要刑事档 案的用途中, 不仅能避免有心人士试图窜改数据, 还能确保存储设备中的数据能够长久的 储存其中而不遗失或损毁。 另在交通系统及其飞机黑匣子, 仪器数据记录领域, 也有广阔的 利用空间。因此现有技术需要改进和提高。本发明提供了一种基于 fat32 文件系统格式下 的数据保护方法, 提供了本领域技术的空白。发明内容
     为解决现有技术中的问题, 本发明提供一种基于 fat32 文件系统格式下的数据保 护方法。所述方法包括基于 fat32 文件格式下, 按照 fa t 32 格式划分平面寻址的存储空 间, 在文件系统的框架之上根据 fat32 文件系统中的标志位来甄别存储修改删除等指令, 从而对信息存储修改删除等指令进行控制。从而提高了重要信息的安全性。对文件的保护 更加可靠。一种基于 fat32 文件系统格式下的数据保护方法 : 所述方法包括 :
     初始化 fat32 文件系统。对 fat32 文件系统结构进行分析, 计算出 fat 表的起始 位置、 扇区大小、 根目录的起始位置, 并且记录在硬件设备中。将写命令的扇区的数据读 出来和写数据的进行比较, 并读取。若修改根目录的目录项的第一个字节为 0xE5, 则表明 本次通信要删除文件系统的文件, 则禁止本次通信。判断修改位置, 修改 FAT 表项的值为 0x00000000, 则表明本次通信要删除文件系统的文件, 则禁止本次通信。判断修改位置, 若 修改的是数据区, 且标志扇区的当先扇区的字节为 0x02, 则表明本次通信是重新修改文件, 禁止本次通信。若标志扇区的当先扇区的字节为 0x00, 则允许本次通信。对设备进行扇区 读写。首先在硬件设备中的控制器里面嵌入 USB MassStorage 协议的解析代码, 约定出私 有命令的通信编码和对应编码的功能函数, 功能函数包括读扇区操作和写扇区操作。使得 上位机可以通过 USB MassStorage 协议的私有命令与设备进行通信, 当设备接收到上位机发下来私有命令时, 通过设备控制器的算法分析, 然后对设备进行读写存储区的的操作, 从 而达到了上位机对存储设备进行读写扇区的操作。 构造文件系统上位机软件通过操作系统 向存储设备发送获取存储设备总容量大小的命令, 存储设备的的处理器接收到上位机软件 发下来的请求命令, 然后计算设备存储器的容量的小, 并将容量大小返回给上位机软件。 上 位机软件得知存储设备的总容量大小后, 根据 FAT32 文件系统的标准协议计算出 FAT32 文 件系统所需要的 MBR 区、 DBR 区、 根目录区和 FAT 表区的大小, 并在上位机软件中动态申请 这些区域所在空间的总和大小的内存。将这些申请的内存中, 每 512 个字节作为一个扇区, 每 8 个扇区作为一个簇, 根据之前获得的存储设备的容量计算出 FAT32 文件系统的数据区 域的大小, 然后数据区每 4096 字节 ( = 8 个扇区= 1 个簇 ) 占用一个 FAT 表中的一项来标 识下一个簇号, FAT 表的每一项占用 4 个字节空间, 从而可以计算出 FAT 表区的大小, 文件 系统的根目录区的大小默认为一个簇, MBR 区和 DBR 区默认都为一个扇区大小。因此这样 FAT32 文件系统的每一个部分的大小都分配好了, 然后我们按照 FAT32 文件系统的标准协 议将格式化系统的数据填写到每个数据区, 这样这部分内存便是一个格式化了 FAT32 文件 系统的镜像数据, 就完成了空文件系统的构造。
     将文件系统镜像下载到存储设备。 利用第一步实现了的与存储设备进行通信的方 法, 将第二步在上位机软件中构造的空文件系统镜像数据以扇区为单位全部下载到存储设 备中。存储在上位机内存上的镜像数据按扇区为单位, 从存储分区的第一个扇区开始全部 写入到存储设备上。
     重新枚举设备达到初始化目的由于我们是利用 USB Massstorage 协议的私有命令 实现对文件系统格式化的, 并非是利用操作系统标准格式化的方法, 因此格式化过文件系 统的存储设备没有被操作系统重新识别, 所以我们需要将存储设备重启, 使操作系统重新 枚举存储设备, 此时存储设备上便是格式化了的文件系统。 附图说明
     图 1 是本发明实施例中的信息保护流程图。
     图 2 是本发明实施例中程序流程图。 具体实施方式
     为使本发明的目的, 技术方案和优点更加清晰下面将结合附图对本发明实施方式 进行进一步描述。
     本发明的技术方案将解决现有技术中重要信息存储后被修改及误删除操作等不 安全的因素。在文件系统的框架之上根据 fat32 文件系统中的标志位来判别储修改删除等 指令, 从而对信息存储修改删除等指令进行控制。
     实施例 :
     本发明提供了一种基于 fat32 文件系统格式下的数据保护方法
     步骤一 : 初始化 FAT32 文件系统。对 FAT32 文件系统结构进行分析, 读取文件系统 的第一个扇区, 如果第一个扇区的第一个字节为 0xEB, 表明第一个扇区为 DBR 扇区, DBR 扇 区中标示了文件系统相关信息, 记录了扇区大小、 每个簇有几个扇区、 文件系统 FAT 表的个 数、 FAT 表大小、 第一个根目录的簇号、 保留扇区的个数、 计算出 FAT 表的起始位置。从而得出 FAT 表的起始扇区号, 第一个目录簇所在扇区号, 并且记录在硬件设备中。
     步骤二 : 通过 USB 通信模块接收外部系统的读写命令。通过 USB 通信模块接收外 部的 Usb Mass Storage 协议的命令, 从命令中提取出读写命令、 读写扇区的起始地址和扇 区个数。
     步骤三 : 分析外部的写命令操作请求。将写入命令的扇区的数据读出来与写数据 的进行对比, 并读取。如果操作命令为写扇区数据, 从命令中提取出写扇区的扇区地址, 根 据步骤一得出的 FAT 表和根目录扇区号, 来确定写扇区号属于哪个范围。如果写扇区号属 于 FAT 表范围, 表明此次操作要修改 FAT 扇区下的数据, 则先读出当前扇区号下的所有数 据, 和要写扇区数据做比较, 若某一 FAT 项的值不为零并且要修改的数据缓冲区下的相应 FAT 项的值为零, 表明此次操作要修改 FAT 项的值为零, 属于删除 FAT32 文件系统下的文件 或数据, 所以不执行操作。 如果写扇区号属于根目录范围, 表明此次操作要修改目录扇区下 的数据, 则先读出当前扇区号下的所有数据, 和要写扇区数据做比较, 如果当前扇区下的文 件目录结构的第一个字节不为 0xE5 并且要修改数据缓冲区下的相应文件目录结构体的第 一个字节为 0xE5, 表明此次操作的目的是修改文件目录结构的第一个字节为 0xE5, 属于删 除 FAT32 文件系统的的目录结构, 所以不执行操作。如果写扇区号属于数据扇区范围, 表明 此次操作时要修改已存在文件的数据内容或第一次添加文件内容。 先读取标志扇区下当前 扇区号下的字节, 如果此字节内容为零, 表明此数据扇区没有被写过, 则允许此次操作正确 执行, 并且将此字节内容改写为 0x01。如果此字节内容不为零, 表明此数据扇区已经被修 改, 则不允许再次修改, 不执行操作。 步 骤 四、 对 设 备 进 行 扇 区 读 写。 首 先 在 硬 件 设 备 中 的 控 制 器 里 面 嵌 入 USB MassStorage 协议的解析代码, 约定出私有命令的通信编码和对应编码的功能函数, 功能函 数包括读扇区操作和写扇区操作。使得上位机可以通过 USB MassStorage 协议的私有命令 与设备进行通信, 当设备接收到上位机发下来私有命令时, 通过设备控制器的算法分析, 然 后对设备进行读写存储区的的操作, 从而达到了上位机对存储设备进行读写扇区的操作。 构造文件系统上位机软件通过操作系统向存储设备发送获取存储设备总容量大小的命令, 存储设备的的处理器接收到上位机软件发下来的请求命令, 然后计算设备存储器的容量的 小, 并将容量大小返回给上位机软件。
     步骤五、 上位机软件得知存储设备的总容量大小后, 根据 FAT32 文件系统的标准 协议计算出 FAT32 文件系统所需要的 MBR 区、 DBR 区、 根目录区和 FAT 表区的大小, 并在上位 机软件中动态申请这些区域所在空间的总和大小的内存。将这些申请的内存中, 每 512 个 字节作为一个扇区, 每 8 个扇区作为一个簇, 根据之前获得的存储设备的容量计算出 FAT32 文件系统的数据区域的大小, 然后数据区每 4096 字节 ( = 8 个扇区= 1 个簇 ) 占用一个 FAT 表中的一项来标识下一个簇号, FAT 表的每一项占用 4 个字节空间, 从而可以计算出 FAT 表 区的大小, 文件系统的根目录区的大小默认为一个簇, MBR 区和 DBR 区默认都为一个扇区大 小。因此这样 FAT32 文件系统的每一个部分的大小都分配好了, 然后我们按照 FAT32 文件 系统的标准协议将格式化系统的数据填写到每个数据区, 这样这部分内存便是一个格式化 了 FAT32 文件系统的镜像数据, 就完成了空文件系统的构造。
     步骤六、 将文件系统镜像下载到存储设备。利用第一步实现了的与存储设备进行 通信的方法, 将第二步在上位机软件中构造的空文件系统镜像数据以扇区为单位全部下载
     到存储设备中。存储在上位机内存上的镜像数据按扇区为单位, 从存储分区的第一个扇区 开始全部写入到存储设备上。
     步骤七、 重新枚举设备达到初始化目的由于我们是利用 USB Massstorage 协议的 私有命令实现对文件系统格式化的, 并非是利用操作系统标准格式化的方法, 因此格式化 过文件系统的存储设备没有被操作系统重新识别, 所以我们需要将存储设备重启, 使操作 系统重新枚举存储设备, 此时存储设备上便是格式化了的文件系统。

一种基于FAT32文件系统格式下的数据保护方法.pdf_第1页
第1页 / 共8页
一种基于FAT32文件系统格式下的数据保护方法.pdf_第2页
第2页 / 共8页
一种基于FAT32文件系统格式下的数据保护方法.pdf_第3页
第3页 / 共8页
点击查看更多>>
资源描述

《一种基于FAT32文件系统格式下的数据保护方法.pdf》由会员分享,可在线阅读,更多相关《一种基于FAT32文件系统格式下的数据保护方法.pdf(8页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102654870 A(43)申请公布日 2012.09.05CN102654870A*CN102654870A*(21)申请号 201110051152.0(22)申请日 2011.03.03G06F 17/30(2006.01)G06F 12/14(2006.01)(71)申请人赛酷特(北京)信息技术有限公司地址 100080 北京市海淀区北四环西路67号1230室(72)发明人程思进(54) 发明名称一种基于fat32文件系统格式下的数据保护方法(57) 摘要本发明提供了一种基于fat32文件系统格式下的数据保护方法,属于信息安全技术领域。为解决现有技术中重要信。

2、息存储后被修改及误删除操作等不安全的因素。本发明提供一种基于fat32文件系统格式下的数据保护方法。所述方法包括基于fat32文件格式下,按照fat32格式划分平面寻址的存储空间,在文件系统的框架之上根据fat32文件系统中的标志位来判别储修改删除等指令对信息存储修改删除等指令进行控制。并在所需是变更设置。改善了重要信息的安全性。(51)Int.Cl.权利要求书1页 说明书4页 附图2页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书 1 页 说明书 4 页 附图 2 页1/1页21.一种基于fat32文件系统格式下的数据保护方法,其技术特征在于,包括如下步骤:A初始化fat。

3、32文件系统,对fat32文件系统结构进行分析,计算出fat表的起始位置、扇区大小、根目录的起始位置,并且记录在硬件设备中;B通过USB通信模块接收外部系统的读写命令;C分析外部的写命令操作请求,并进行判断;D根据判断外部读写命令,对数据写入进行授权;E重新对设备扇区进行读写;F构造文件系统;G将文件系统镜像下载到存储设备;H重新枚举设备;I对磁盘进行格式化。2.根据权利要求1所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,重新定义磁盘及格式化,包括以下步骤:重新对设备扇区进行读写;A构造文件系统;B将文件系统镜像下载到存储设备;C重新枚举设备;D对磁盘进行格式化3.根据权利。

4、要求1所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,所述步骤A还包括:对FAT32文件系统结构进行分析,读取文件系统的第一个扇区,并且记录在硬件设备中。4.根据权利要求1所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,所述步骤还包括:分析外部的写命令操作请求,同目标扇区数据做比较,若此次操作要修改FAT项的值为零,属于删除FAT32文件系统下的文件或数据,不执行操作。5.根据权利要求1所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,根目录范围内写入扇区号时,判断当前扇区下的文件目录结构的第一个字节不为0xE5并且要修改数据缓冲区下的相应文。

5、件目录结构体的第一个字节为0xE5,属于删除FAT32文件系统的的目录结构,不执行操作。6.根基权利要求2所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,构造文件系统时,按照FAT 32文件系统的标准协议将格式化系统的数据填写到每个数据区。7.根基权利要求2所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,将构造出的空文件系统镜像数据以扇区为单位全部下载到存储设备中。从存储分区的第一个扇区开始全部写入到存储设备上。8.根基权利要求2所述的一种基于fat32文件系统格式下的数据保护方法,其特征在于,对磁盘进行格式化时,利用USB Massstorage协议的私有。

6、命令实现对文件系统格式化。权 利 要 求 书CN 102654870 A1/4页3一种基于 fat32 文件系统格式下的数据保护方法技术领域0001 本发明涉及一种基于fat32文件系统格式下的数据保护方法,一种基于fat32文件系统格式下的数据保护方法,属于信息安全技术领域。背景技术0002 目前,信息科技日益发达今天,电子存储设备得到了广泛的应用,常见的存储设备有硬盘,U盘等基于fat32文件系统下的存储设备。fat32是系统存储设备分区格式的一种。这种格式采用32位的文件分配表,使其对存储设备的管理能力大大增强,突破了fat16对每一个分区的容量只有2GB的限制。由于现在的存储设备生产成。

7、本下降,其容量越来越大,运用fat32的分区格式后,我们可以将一个存储设备定义成一个分区而不必分为几个分区使用,大大方便了对存储设备的管理。普通存储设备通过USB接口的设备可以在电脑上执行读写工作。此类产品给用户带来了非常便捷的服务。但是基于应用中的特殊需求无法实现,如限制写入次数.本发明提及的这种单次写入的存储方法对于一般用户似乎相当不便,毕竟存储后不能删掉,单次使用完毕之后就作废了。不过还是有特定领域的使用者有此方面的需求,例如公安系统证据采集中的数据存储,在大量采用于搜证、记录重要刑事档案的用途中,不仅能避免有心人士试图窜改数据,还能确保存储设备中的数据能够长久的储存其中而不遗失或损毁。。

8、另在交通系统及其飞机黑匣子,仪器数据记录领域,也有广阔的利用空间。因此现有技术需要改进和提高。本发明提供了一种基于fat32文件系统格式下的数据保护方法,提供了本领域技术的空白。发明内容0003 为解决现有技术中的问题,本发明提供一种基于fat32文件系统格式下的数据保护方法。所述方法包括基于fat32文件格式下,按照fa t 32格式划分平面寻址的存储空间,在文件系统的框架之上根据fat32文件系统中的标志位来甄别存储修改删除等指令,从而对信息存储修改删除等指令进行控制。从而提高了重要信息的安全性。对文件的保护更加可靠。一种基于fat32文件系统格式下的数据保护方法:所述方法包括:0004 。

9、初始化fat32文件系统。对fat32文件系统结构进行分析,计算出fat表的起始位置、扇区大小、根目录的起始位置,并且记录在硬件设备中。将写命令的扇区的数据读出来和写数据的进行比较,并读取。若修改根目录的目录项的第一个字节为0xE5,则表明本次通信要删除文件系统的文件,则禁止本次通信。判断修改位置,修改FAT表项的值为0x00000000,则表明本次通信要删除文件系统的文件,则禁止本次通信。判断修改位置,若修改的是数据区,且标志扇区的当先扇区的字节为0x02,则表明本次通信是重新修改文件,禁止本次通信。若标志扇区的当先扇区的字节为0x00,则允许本次通信。对设备进行扇区读写。首先在硬件设备中的。

10、控制器里面嵌入USB MassStorage协议的解析代码,约定出私有命令的通信编码和对应编码的功能函数,功能函数包括读扇区操作和写扇区操作。使得上位机可以通过USB MassStorage协议的私有命令与设备进行通信,当设备接收到上位机说 明 书CN 102654870 A2/4页4发下来私有命令时,通过设备控制器的算法分析,然后对设备进行读写存储区的的操作,从而达到了上位机对存储设备进行读写扇区的操作。构造文件系统上位机软件通过操作系统向存储设备发送获取存储设备总容量大小的命令,存储设备的的处理器接收到上位机软件发下来的请求命令,然后计算设备存储器的容量的小,并将容量大小返回给上位机软件。。

11、上位机软件得知存储设备的总容量大小后,根据FAT32文件系统的标准协议计算出FAT32文件系统所需要的MBR区、DBR区、根目录区和FAT表区的大小,并在上位机软件中动态申请这些区域所在空间的总和大小的内存。将这些申请的内存中,每512个字节作为一个扇区,每8个扇区作为一个簇,根据之前获得的存储设备的容量计算出FAT32文件系统的数据区域的大小,然后数据区每4096字节(8个扇区1个簇)占用一个FAT表中的一项来标识下一个簇号,FAT表的每一项占用4个字节空间,从而可以计算出FAT表区的大小,文件系统的根目录区的大小默认为一个簇,MBR区和DBR区默认都为一个扇区大小。因此这样FAT32文件系。

12、统的每一个部分的大小都分配好了,然后我们按照FAT32文件系统的标准协议将格式化系统的数据填写到每个数据区,这样这部分内存便是一个格式化了FAT32文件系统的镜像数据,就完成了空文件系统的构造。0005 将文件系统镜像下载到存储设备。利用第一步实现了的与存储设备进行通信的方法,将第二步在上位机软件中构造的空文件系统镜像数据以扇区为单位全部下载到存储设备中。存储在上位机内存上的镜像数据按扇区为单位,从存储分区的第一个扇区开始全部写入到存储设备上。0006 重新枚举设备达到初始化目的由于我们是利用USB Massstorage协议的私有命令实现对文件系统格式化的,并非是利用操作系统标准格式化的方法。

13、,因此格式化过文件系统的存储设备没有被操作系统重新识别,所以我们需要将存储设备重启,使操作系统重新枚举存储设备,此时存储设备上便是格式化了的文件系统。附图说明0007 图1是本发明实施例中的信息保护流程图。0008 图2是本发明实施例中程序流程图。具体实施方式0009 为使本发明的目的,技术方案和优点更加清晰下面将结合附图对本发明实施方式进行进一步描述。0010 本发明的技术方案将解决现有技术中重要信息存储后被修改及误删除操作等不安全的因素。在文件系统的框架之上根据fat32文件系统中的标志位来判别储修改删除等指令,从而对信息存储修改删除等指令进行控制。0011 实施例:0012 本发明提供了。

14、一种基于fat32文件系统格式下的数据保护方法0013 步骤一:初始化FAT32文件系统。对FAT32文件系统结构进行分析,读取文件系统的第一个扇区,如果第一个扇区的第一个字节为0xEB,表明第一个扇区为DBR扇区,DBR扇区中标示了文件系统相关信息,记录了扇区大小、每个簇有几个扇区、文件系统FAT表的个数、FAT表大小、第一个根目录的簇号、保留扇区的个数、计算出FAT表的起始位置。从而得说 明 书CN 102654870 A3/4页5出FAT表的起始扇区号,第一个目录簇所在扇区号,并且记录在硬件设备中。0014 步骤二:通过USB通信模块接收外部系统的读写命令。通过USB通信模块接收外部的U。

15、sb Mass Storage协议的命令,从命令中提取出读写命令、读写扇区的起始地址和扇区个数。0015 步骤三:分析外部的写命令操作请求。将写入命令的扇区的数据读出来与写数据的进行对比,并读取。如果操作命令为写扇区数据,从命令中提取出写扇区的扇区地址,根据步骤一得出的FAT表和根目录扇区号,来确定写扇区号属于哪个范围。如果写扇区号属于FAT表范围,表明此次操作要修改FAT扇区下的数据,则先读出当前扇区号下的所有数据,和要写扇区数据做比较,若某一FAT项的值不为零并且要修改的数据缓冲区下的相应FAT项的值为零,表明此次操作要修改FAT项的值为零,属于删除FAT32文件系统下的文件或数据,所以不。

16、执行操作。如果写扇区号属于根目录范围,表明此次操作要修改目录扇区下的数据,则先读出当前扇区号下的所有数据,和要写扇区数据做比较,如果当前扇区下的文件目录结构的第一个字节不为0xE5并且要修改数据缓冲区下的相应文件目录结构体的第一个字节为0xE5,表明此次操作的目的是修改文件目录结构的第一个字节为0xE5,属于删除FAT32文件系统的的目录结构,所以不执行操作。如果写扇区号属于数据扇区范围,表明此次操作时要修改已存在文件的数据内容或第一次添加文件内容。先读取标志扇区下当前扇区号下的字节,如果此字节内容为零,表明此数据扇区没有被写过,则允许此次操作正确执行,并且将此字节内容改写为0x01。如果此字。

17、节内容不为零,表明此数据扇区已经被修改,则不允许再次修改,不执行操作。0016 步骤四、对设备进行扇区读写。首先在硬件设备中的控制器里面嵌入USB MassStorage协议的解析代码,约定出私有命令的通信编码和对应编码的功能函数,功能函数包括读扇区操作和写扇区操作。使得上位机可以通过USB MassStorage协议的私有命令与设备进行通信,当设备接收到上位机发下来私有命令时,通过设备控制器的算法分析,然后对设备进行读写存储区的的操作,从而达到了上位机对存储设备进行读写扇区的操作。构造文件系统上位机软件通过操作系统向存储设备发送获取存储设备总容量大小的命令,存储设备的的处理器接收到上位机软件。

18、发下来的请求命令,然后计算设备存储器的容量的小,并将容量大小返回给上位机软件。0017 步骤五、上位机软件得知存储设备的总容量大小后,根据FAT32文件系统的标准协议计算出FAT32文件系统所需要的MBR区、DBR区、根目录区和FAT表区的大小,并在上位机软件中动态申请这些区域所在空间的总和大小的内存。将这些申请的内存中,每512个字节作为一个扇区,每8个扇区作为一个簇,根据之前获得的存储设备的容量计算出FAT32文件系统的数据区域的大小,然后数据区每4096字节(8个扇区1个簇)占用一个FAT表中的一项来标识下一个簇号,FAT表的每一项占用4个字节空间,从而可以计算出FAT表区的大小,文件系。

19、统的根目录区的大小默认为一个簇,MBR区和DBR区默认都为一个扇区大小。因此这样FAT32文件系统的每一个部分的大小都分配好了,然后我们按照FAT32文件系统的标准协议将格式化系统的数据填写到每个数据区,这样这部分内存便是一个格式化了FAT32文件系统的镜像数据,就完成了空文件系统的构造。0018 步骤六、将文件系统镜像下载到存储设备。利用第一步实现了的与存储设备进行通信的方法,将第二步在上位机软件中构造的空文件系统镜像数据以扇区为单位全部下载说 明 书CN 102654870 A4/4页6到存储设备中。存储在上位机内存上的镜像数据按扇区为单位,从存储分区的第一个扇区开始全部写入到存储设备上。0019 步骤七、重新枚举设备达到初始化目的由于我们是利用USB Massstorage协议的私有命令实现对文件系统格式化的,并非是利用操作系统标准格式化的方法,因此格式化过文件系统的存储设备没有被操作系统重新识别,所以我们需要将存储设备重启,使操作系统重新枚举存储设备,此时存储设备上便是格式化了的文件系统。说 明 书CN 102654870 A1/2页7图1说 明 书 附 图CN 102654870 A2/2页8图2说 明 书 附 图CN 102654870 A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1