一种移动硬盘日志文件的完整保护方法

文档序号:6772093阅读:365来源:国知局
专利名称:一种移动硬盘日志文件的完整保护方法
技术领域
本发明属于信息安全技术领域,涉及到移动硬盘的数据安全保障方法方案。
背景技术
移动硬盘作为常用存储介质,具有便携性与通用性的特点,同时移动硬盘存储的数据也易于被非法用户窃取和篡改。因此移动硬盘的使用信息是用于审计移动硬盘中数据的安全状态的重要依据,用户可以通过这些信息来判断自己的移动硬盘是否被非法使用过,以及分析非法用户对移动硬盘的使用情况,有利于事后追究责任。日志便是记录这些重要信息的工具。移动硬盘的日志文件只能存放在移动硬盘上,才可以实时记录移动硬盘的使用情况,因此移动硬盘的日志文件就有可能被非法用户恶意修改,因此为了获得真实可信的日志信息,就必须要实现对日志文件完整性保障功能。

发明内容
本发明目的是提出一种面向移动硬盘用户提供真实完整的日志记录的方法,即移动硬盘日志文件的完整保护方法,本方法的发明目的主要基于以下二方面
1)、实现了对移动硬盘使用情况的日志记录,该日志记录通过对USB协议的解析来了解移动硬盘的使用情况,并作为日志事件与实时时钟的时间一起形成日志记录写入日志文件。2)、日志文件的完整性保障,本方法从二方面保障日志文件的完整性,一方面是对日志文件所在扇区的写保护,除移动硬盘控制器之外对这些扇区的写命令都会被控制器拒绝,另一方面是通过MD5算法来实现日志文件的完整性校验,审计日志文件的完整性。本发明的具体方法方案如下,一种具有完整性保护机制的移动硬盘日志方法其特征是基于对USB协议的解析,通过移动硬盘控制器来分析硬盘的当前工作状态,由此生成移动硬盘的使用日志,并将其存储于移动硬盘的特殊扇区内;
通过控制器来监控日志文件的访问操作,试图通过主机改写日志文件的命令都将会被拒绝,控制器还使用MD5算法对当前日志文件生成校验码,来校验日志文件的完整性。由此,向用户提供真实可信的移动硬盘使用事件记录。其主要的实现步骤为
步骤1、日志信息的收集当移动硬盘连接到主机后,由主机对移动硬盘进行枚举或进行传输等活动时,移动硬盘控制器按USB协议正确应答主机,分析主机发送来的Setup包、 In包,完成命令后,移动硬盘控制器将根据自身所带的实时时钟,记录下本次事件与发生的时间,作为日志信息;
步骤2、日志信息的生成与组织为了节省日志存储所需的空间,移动硬盘控制器将本次日志事件映射成事件代码,与事件发生的时间组织成日志记录,待存储于日志中。步骤3、日志信息的校验码生成为了实现对日志文件的完整性校验,移动硬盘控制器将读取日志文件,利用MD5算法生成日志信息的校验码;步骤4、日志信息的完整性校验移动硬盘控制器利用生成的当前日志文件校验码,与硬盘控制器非易失性存储器中保存的校验码进行对比,判断当前日志的完整性,若二者不一致,则移动硬盘控制器中止当前工作,报警;
步骤5、日志信息的存储若当前日志文件的校验码与硬盘控制器中存储的校验码一致,则将当前的日志信息写入到日志文件中。步骤6、日志信息的改写访问控制;若主机请求改写日志文件所在的特殊硬盘扇区,则硬盘控制器则会直接拒绝执行命令。本发明的核心组件,其包含USB协议栈,负责完成生成与组织日志事件信息,日志文件的读写控制、完整性校验功能;
USB协议解析过程USB协议中包含的内容用于移动硬盘的使用审计,因此USB协议的解析过程主要是针对移动硬盘控制器接收到的令牌包中的Setup包及其In包进行分析,判断本次命令的内容,作为日志事件信息。生成的日志事件信息,将其映射成事件代码,针对事件代码与移动硬盘控制器中自带的实时时钟信息,组成日志记录;
日志校验码生成与完整性校验过程
(1)生成日志校验码移动硬盘控制器读取日志文件,根据日志文件信息采用MD5算法,生成当前日志的校验码;
(2)校验移动硬盘控制器针对生成当前日志的校验码与存储在控制器非易失存储器内的校验码进行比对,完成完整性校验工作。 硬盘扇区是专用于存储移动硬盘日志文件的硬盘扇区,其扇区号由移动硬盘控制器维护日志扇区表进行标识。对于日志扇区表中的扇区读取必须要通过硬盘控制器的认证。日志信息存储过程日志信息的存储过程由移动硬盘控制器读取日志扇区表中的最后一个扇区,并将新生成的日志信息写入到该扇区中,若该扇区已满,则新申请一个扇区,将该扇区号添加到日志扇区表中,再将日志信息写入该扇区中。本方法的具体实现包括以下模块
1)移动硬盘主控程序模块该模块主要的功能是实现移动硬盘的日志记录,作为上层功能模块,调用日志信息生成、组织模块、写入算法等各底层模块完成日志事件记录与更新;
2)USB协议解析功能模块该模块的主要功能是实现对USB协议分析,了解移动硬盘的工作情况,生成包括上电初始化、写操作等日志事件信息;
3)日志信息生成与组织模块该模块的主要功能是实现对日志事件信息的映射,将其转换成事件代码,并与移动硬盘控制器的实时时钟组织成日志记录;
4)日志文件扇区表的记录与维护模块该模块的主要功能是记录与维护存储日志文件的扇区号,这些扇区号信息将作为移动硬盘控制器保护日志文件不被恶意修改的依据;
5)日志文件的写入算法该模块的主要功能是实现对新生成的日志记录写入日志文件中,包括可能涉及的日志文件扇区表的更新;
6)日志文件的完整性校验算法该功能模块是实现对当前日志文件的完整性校验;
7)MD5算法该功能模块用于生成当前日志文件的完整性校验码;8)日志文件扇区表的写保护监控通过USB协议分析模块与日志文件扇区表来记录与维护功能模块实现对日志文件扇区表的写操作监控,除移动硬盘控制器自身之外,任何针对扇区表内扇区的写操作都将被拒绝;
9)日志事件代码表该表用于日志事件的映射,将日志事件映射成代码;
在以上模块的基础上,由移动硬盘控制器主控制程序调用上述功能模块完成本发明目标。本发明主要从三个技术来实现上述的应用目标,一项就是通过对USB协议解析来生成日志信息记录移动硬盘的使用情况,USB协议是标准化的传输协议,本发明主要记录令牌包中的Setup包及其后In包进行分析,来生成日志事件信息。另外一项方法就是对保存日志文件扇区进行监控,同样是通过USB协议解析来实现的,移动硬盘控制器将拒绝任意试图写存储有日志文件信息的扇区的命令;还有一项方法即MD5算法,即消息摘要算法 (信息摘要算法)第五版,是被广泛采用一种散列函数,主要用以提供消息的完整性保护。本方法用以来判断日志文件信息是否完整可信,通过MD5算法来生成日志文件的完整性校验码,一旦出现完整性校验失败,即会向用户警报,提醒用户日志文件被恶意修改。本发明通过对USB协议的解析来生成日志信息,为用户提供审计移动硬盘的使用情况的依据。为了保障日志文件的安全与完整性,本发明采用了日志扇区表来记录存储日志文件的扇区,对于任意一个存储日志文件扇区的改写必须要通过移动硬盘控制器监控可以实现,除移动硬盘控制器自身之外,任一对存储日志文件扇区的写命令都会被拒绝,从而保障日志文件难以被恶意修改。此外,本方法实现的硬盘控制器通过对日志文件生成校验码,可以随时校验日志文件的完整性。由此本方法可以向用户提供真实可信的移动硬盘使用日志ο本发明的有益效果如下
1.移动硬盘控制器本发明实现了一种新型移动硬盘控制器,与常用的移动硬盘控制器不同的是,它不仅可以实现基于USB协议传输之外,还具有自身的非易失性存储器,用于存储日志扇区表、日志文件校验码,此外还具备生成、记录、校验、写保护移动硬盘日志的功能;
2.移动硬盘使用日志本发明实现了对于移动硬盘使用事件的记录,包括日志事件内容、时间,通过该日志用户可以审计移动硬盘的使用情况,分析移动硬盘是否被非法用户使用过;
3.移动硬盘日志完整性保护机制本发明实现了一种移动硬盘的日志完整性保护机制,主要包括对移动硬盘日志的写保护,以及日志的完整性校验,来保障日志的真实性、完整性;
4.移动硬盘的日志完整性校验本发明实现了对日志文件完整性校验,通过MD5算法生成日志文件的校验码,再通过预先保存的当前校验码的比对,来校验当前的日志文件是否被恶意修改过;
5.移动硬盘的写保护本发明实现对日志文件的写保护,通过对日志文件的存储扇区建立日志文件扇区表,同时监控写移动硬盘扇区的命令,分析该命令所写的目标扇区是否位于日志扇区表内记录的扇区号,若是拒绝执行命令,从而实现对日志文件的写保护;
6.日志事件代码表本发明建立了一个日志事件的代码表,因为日志事件种类较多,随着移动硬盘使用次数增多,如果直接记录日志事件会使日志文件数据量不断增大,因此采用日志事件代码来代表日志事件会有效减小日志文件的大小,也减少了日志文件校验的
运算量。由于移动硬盘存储的数据易于被非法窃取与使用,本发明针对移动硬盘实现了一种具有完整性保护机制的移动硬盘日志方法。该方法基于移动硬盘控制器对USB协议的解析,分析移动硬盘的当前工作状态,生成日志信息,并记录到移动硬盘的特殊扇区中,作为用户审计移动硬盘使用情况的依据。此外,为了保护日志信息不会被恶意修改,本方法实现了日志文件的完整性保护机制。该机制一方面通过移动硬盘控制器监控日志文件的读写, 只有通过本方法实现的硬盘控制器才能读写存储在特殊扇区的日志文件。另一方面,本方法采用MD5算法对日志文件形成的校验码,从而可以校验日志文件的完整性,抵御非法用户绕过硬盘控制器直接对日志文件的篡改。由此,本方法提供的具备完整性保护机制的移动硬盘日志可以向用户提供真实可信的移动硬盘使用情况。


图1为本发明的功能模块结构图。图2为本发明主控程序工作流程图。
具体实施例方式
本发明的实现主要包括以下步骤
步骤1 实现移动硬盘控制器这一步骤主要是实现移动硬盘控制器的硬件组成,作为本方法实现的平台,本方法的移动硬盘控制器主要包括MCU、非易失性存储器、实时时钟及其外围电路组成;
步骤2 实现USB协议解析模块这一步骤主要是对移动硬盘传输的数据包按USB协议进行解析,针对具有日志意义的数据包形成事件记录,同时若接收写扇区的命令包,也会向移动硬盘主控制程序报告。步骤3 实现日志事件生成与组织模块这一步步骤主要是基于USB协议解析生成的日志事件,映射成日志事件代码结合实时时钟形成日志记录。步骤4 实现MD5算法模块该步骤是实现MD5算法来生成日志文件校验码; 步骤5 日志完整性校验模块该步骤是利用MD5算法生成当前日志文件校验码,再与
预先存储的日志文件校验码对比,校验当前日志文件的完整性;
步骤6 实现日志写保护模块该步骤是在接收到USB协议解析,有写扇区命令时,分析写入的目标扇区是否位于日志扇区表内,若是拒绝执行命令;
步骤7 实现日志事件写入模块该步骤是首先对当前日志文件进行完整性校验,若校验不通过则警报,若通过,则将先读取日志扇区表中最后一个扇区,当前日志事件写入该扇区内,若该扇区已满,则申请一个新扇区,将该扇区号置入日志扇区表内,再在该扇区内写入曰志记录,;
步骤8 实现移动硬盘控制器主控程序模块该步骤主要是按本方法的实现步骤与流程协同控制各功能模块完成本发明目标的主控制程序。
权利要求
1.一种具有完整性保护机制的移动硬盘日志方法,其特征是基于对USB协议的解析, 通过移动硬盘控制器来分析移动硬盘的当前工作状态,由此生成移动硬盘的使用日志,并将其存储于移动硬盘的扇区内;通过控制器来监控日志文件的访问操作,任何试图通过主机改写日志文件的命令都将会被拒绝,控制器使用MD5算法对当前日志文件生成校验码,来校验日志文件的完整性;由此,向用户提供真实可信的移动硬盘使用事件记录;其主要的实现步骤为步骤1、日志信息的收集当移动硬盘连接到主机后,由主机对移动硬盘进行枚举或进行传输等活动时,移动硬盘控制器按USB协议正确应答主机,分析主机发送来的Setup包、 In包,完成命令后,移动硬盘控制器将根据自身所带的实时时钟,记录下本次事件与发生的时间,作为日志信息;步骤2、日志信息的生成与组织为移动硬盘控制器将本次日志事件映射成事件代码, 与事件发生的时间组织成日志记录,待存储于日志中;步骤3、日志信息的校验码生成为了实现对日志文件的完整性校验,移动硬盘控制器将读取日志文件,利用MD5算法生成日志信息的校验码;步骤4、日志信息的完整性校验移动硬盘控制器利用生成的当前日志文件校验码,与硬盘控制器非易失性存储器中保存的校验码进行对比,判断当前日志的完整性,若二者不一致,则移动硬盘控制器中止当前工作,报警;步骤5、日志信息的存储若当前日志文件的校验码与硬盘控制器中存储的校验码一致,则将当前的日志信息写入到日志文件中;步骤6、日志信息的改写访问控制;若主机请求改写日志文件所在的硬盘扇区,则硬盘控制器则会直接拒绝执行命令。
2.根据权利要求1所述的具有完整性保护机制的移动硬盘日志方法,其特征是移动硬盘控制器设有USB协议栈完成生成与组织日志事件信息,日志文件的读写控制、完整性校验。
3.根据权利要求2所述的具有完整性保护机制的移动硬盘日志方法,其特征是USB协议解析过程USB协议中包含的内容用于移动硬盘的使用审计,因此USB协议的解析过程主要是针对移动硬盘控制器接收到的令牌包中的Setup包及其In包进行分析,判断本次命令的内容,作为日志事件信息。
全文摘要
一种具有完整性保护机制的移动硬盘日志方法,基于对USB协议的解析,通过移动硬盘控制器来分析移动硬盘的当前工作状态,由此生成移动硬盘的使用日志,并将其存储于移动硬盘的扇区内;通过控制器来监控日志文件的访问操作,任何试图通过主机改写日志文件的命令都将会被拒绝,控制器使用MD5算法对当前日志文件生成校验码,来校验日志文件的完整性;由此,向用户提供真实可信的移动硬盘使用事件记录;包括日志信息的收集、日志信息的生成与组织等步骤。本发明实现了日志文件的完整性保护机制。只有通过本方法实现的硬盘控制器才能读写存储在特殊扇区的日志文件。采用MD5算法,可校验日志文件的完整性,抵御非法用户对日志文件的篡改。
文档编号G11C7/10GK102290091SQ20111025729
公开日2011年12月21日 申请日期2011年9月2日 优先权日2011年9月2日
发明者傅涛, 季燕, 徐丽娟 申请人:南京博同科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1