欢迎来到天天文库
浏览记录
ID:11799883
大小:248.50 KB
页数:9页
时间:2018-07-14
《基于可变存储块大小的hash完整性校验研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、变长存储块Hash完整性校验方法1.引言数据的完整性是计算机系统中数据安全的基本属性之一,它是指防止数据被非授权的改动。一般的,完整性保护既可以是一种“阻断”措施,也可以是一种“探测”措施。“阻断”措施是在修改行为发生之前对使用者的合法性进行验证,可拒绝非法的修改行为。但从抗拒硬件攻击的角度而言,由于无法物理地阻止攻击者的主动篡改行为,“阻断”对于硬件攻击行为是难于施行的,而“探测”措施是可行且相对易于施行的。完整性校验是指记录系统中的当前信息,用于随后的比较以发现内容的变动。完整性校验被处理器、文件系统和数据库等用来校验非可信存储的数据,以此发现数据
2、的篡改。为实现完整性校验,一般的结构是采用安全处理器构成校验的可信计算基,原理是利用存储在可信计算基中不可被非法篡改的信息,通过某种算法,对外部非可信存储器实施完整性校验。存储器完整性校验方式可分为脱机(Offline)和联机(Online)校验[1]。脱机校验是指在一个存储器操作序列完成后实施检测,比如校验程序执行结果的完整性,它适用于不需精确探测异常的情形,它不需明确指明是哪个结果被篡改;联机校验是指在每一次存储器操作后马上实施校验,这种方式可以杜绝错误结果提交所造成的影响,但联机校验需要更频繁的检测,因而比脱机校验代价更高。本文的研究是为系统提供
3、一个高性能、低代价的完整性校验方案,即提供一个抗硬件攻击的篡改证明环境。为集中讨论,本文针对的非可信存储器特指计算机系统存储器(memory),即内存。本文基于联机方式的存储器完整性校验,提出了变长存储块的基于Hash树的存储器完整性校验方法。该方法基于Hash树校验,利用访问的局部性原理,分别对热访问区和非热访问区设置了不同的存储块大小值,从而更快速完成完整性校验。通过分析与模拟实验表明,该方法可有效提高存储器完整性联机校验的效率。本文组织如下:第二部分讨论了相关的研究工作;第三部分是重点,首先提出了一个变长存储块的基于Hash树的完整性校验方法,然
4、后讨论了变长存储块的规则和算法;第四部分基于前面建立的框架,完成模拟工作,并进行了分析;最后部分得出了结论。2.相关研究关于数据完整性校验,国内外学者做了一定的研究,这里简要讨论现有的针对单处理器的典型存储器完整性校验技术,特别是以Hash树为基础的校验方法,然后分析了各种方法存在的问题。2.1MAC消息认证码(MessageAuthenticationCode,MAC)[2]是较常见的一种完整性校验方式,MAC是指对每个存储器块进行Hash计算所得到的结果。它验证的基本原理是:首先对要保护的存储器分成多个相等的块,针对每个存储器块进行Hash计算,保
5、存所得结果,并将结果同存储器块附着在一起,当再次访问时,重新计算存储器块的MAC值,并同原始附着的MAC值进行比较,从而判断该存储器块的内容是否完整。同时为了对抗入侵者将一个合法块的内容拷贝到另一块中,MAC在计算时包含块所在的地址信息。MAC的优点是可以被快速计算及比较,但MAC不能用于动态修改的存储器的完整性校验,它无法应对重放攻击(ReplayAttack),因为MAC可以保证是处理器保存的,但不能确保内容是最新的。因此目前MAC方法多与其他方法一起使用。2.2Hash树Hash树(HashTree)也叫Merkle树(MerkleTree)[3
6、],它是完整性校验的一种常用方法,它可以检测出包括重放攻击在内的篡改存储器的行为,它的基本原理是:类似于MAC,首先将存储器分成多个等长块,并进行编号,每个存储块对应Hash树的叶节点,每个内部节点为下属两个节点Hash计算的结果,一直到根节点。树的根节点处于安全的存储区(一般置于处理器内的L2-Cache内,这一区域内数据不能被篡改)。非可信存储器中进行对于一个m叉(m>=2)Hash树而言,每次更新数据将导致logmN次Hash计算,这里N是要校验的存储器块数。Hash树校验存在的问题是每次校验的开销很大;当内存块尺寸增大时,Hash计算量会迅速加
7、大,导致系统性能显著下降。2.2CHtree校验缓冲型Hash树(CacheHashTree)是MIT提出的完整性校验方法[4],它是基本Hash树的一种优化方法,基本思想是利用处理器的片内Cache来提高基于Hash树的完整性校验效率。该方法假定在CPU内Cache(含L1-Cache和L2-Cache)是可信的,完整性校验装置同L2-Cache并在一起,用作完整性检查的Hash树内部节点被缓冲在L2-Cache中而维持可信,从而校验路径只需到达缓冲在L2-Cache中的节点即可停止,而不必一直进行到根节点。这种方法通过降低校验路径的长度,使得所需H
8、ash计算的次数大大减小,因此可明显提高校验速度,测试结果表明该方法可使校验的性能代价减小到约
此文档下载收益归作者所有