[发明专利]一种硬件支持嵌入式系统程序指令标记的保护方法有效
申请号: | 201610597187.7 | 申请日: | 2016-07-26 |
公开(公告)号: | CN106203099B | 公开(公告)日: | 2019-02-05 |
发明(设计)人: | 王翔;何展宏;杜培;徐洋;庞树松;王晓翠;周成 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F21/55 | 分类号: | G06F21/55 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 指令标记 拼接 指令 散列 起止地址 嵌入式系统程序 安全指令 硬件支持 安全问题 电路计算 干扰信息 杂凑算法 基本块 硬件化 运行时 处理器 读入 搜索 篡改 暴露 记录 | ||
一种硬件支持嵌入式系统程序指令标记的保护方法,具体步骤如下:1,读入指令基本块文件;2,确定安全指令长度;3,如果指令的长度小于安全指令长度,则步骤4,否则步骤5并记录拼接次数为0;4,用指令起止地址组合成干扰信息;5,计算拼接后的指令的散列值;6,对应的指令起止地址,拼接次数和静态散列值作为指令标记;7,处理器运行时在指令标记中搜索出拼接次数和静态散列值;8,将指令起止地址根据拼接次数进行拼接;9,用杂凑算法的硬件化电路计算拼接后的指令的散列值,并与静态散列值比较;10,相同则指令完整未被篡改,不同则有改变;通过以上步骤,完成了对指令标记的保护,解决了由于指令标记暴露所引发的安全问题。
技术领域
本发明涉及一种硬件支持嵌入式系统程序指令标记的保护方法。它利用指令起止地址的拼接作为干扰信息,干扰信息与指令一起作为杂凑算法的输入,然后把杂凑算法的输出,即散列值作为指令标记的一部分,可防止针对指令标记的杂凑算法破解攻击。属于嵌入式系统安全技术领域。
背景技术
随着电子科学与计算机技术的发展,越来越多的嵌入式设备进入了人们的生活中,逐渐在诸多领域发挥重要的系统自动控制及数据存储的作用。同时越来越多的应用及更为方便的网络接入,使嵌入式平台面临着越来越多的安全挑战。嵌入式系统在运算能力、内存、功耗等方面有着严格的资源约束限制。采用通用计算机上的病毒扫描和防入侵软件来防御安全攻击,将会带来性能的降低和功耗的增加。因此,嵌入式系统的安全问题比通用系统的安全问题更具有挑战性。
完整性检测可以保证信息在存储和传输的过程中没有遭受非授权方式的篡改或破坏。目前的完整性检测一般都使用杂凑算法。杂凑算法是指把任意长度的输入,通过散列算法变换成固定长度的输出的过程,该输出就是散列值,散列值表示的是数据的特征信息。将杂凑算法计算出的指令的散列值与基本块监控信息中的提前计算的指令的散列值对比,如果对比信息不一致,可以中止程序的运行,或进行系统恢复。
目前,嵌入式监控模型普遍直接对指令基本块用杂凑算法进行校验,事实上,这种做法并不安全,有许多针对杂凑算法的攻击方法,暴力破解和查表法都能破解杂凑算法,其中最有效果的是彩虹表攻击,彩虹表综合了暴力破解和查表法的特点,是一种使用空间换取时间的技术。彩虹表的方式之所以有效是因为对每一个指令都使用完全相同的杂凑算法。如果两个指令相同,那么它们的散列值也一定相同。我们可以通过让每一个杂凑函数不同,即使同一个指令进行两次杂凑,得到的散列值也会不同,从而避免这种攻击。通过给指令加一个随机的干扰信息后缀,然后再进行杂凑。通过增加干扰信息,相同的指令每次杂凑的输入都是完全不一样的字符串了。在检查指令是否正确的时候,我们也还需要这个干扰信息,所以干扰信息一般都是和指令一起保存在数据库里,或者作为指令字符串的一部分。即使干扰信息被攻击者得到,只要干扰信息是随机的,查表法、彩虹表攻击都会失效。因为攻击者无法事先知道干扰信息是什么,也就没有办法预先计算出彩虹表。
发明内容
1、目的:
本发明的目的是提供一种硬件支持嵌入式系统程序指令标记的保护方法,它使用散列值作为指令是否完整且没有被篡改的依据,同时对通过散列值逆向得到指令的杂凑算法的攻击进行了预防。
2、技术方案:
本发明设计一种硬件支持嵌入式系统程序指令标记的保护方法,它利用指令起止地址的拼接作为干扰信息,干扰信息与指令一起作为杂凑算法的输入,然后把杂凑算法的输出,即散列值作为指令标记的一部分。在指令运行时候,将指令起止地址重新按原来的方式组合成干扰信息,干扰信息和指令一起使用杂凑算法的硬件化电路再次计算一个散列值,然后这个散列值会和指令标记中的散列值进行比较,相同则表明指令完整且没有被篡改,不同则表明指令发生了改变。
本发明一种硬件支持嵌入式系统程序指令标记的保护方法,该方法具体步骤包括:
步骤1,读入指令基本块文件;其中,指令基本块文件指的是由多个指令基本块组成的文件,每个指令基本块中包括指令起止地址和指令两部分;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610597187.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种拼板布胶装置
- 下一篇:一种马赛克瓷砖均匀打蜡装置