论文部分内容阅读
近年来,网络的普及使得嵌入式系统被广泛的使用,越来越多地应用于各种领域(如手机,PDA,RFID等)。每天的生活中,一些嵌入式系统被人们用来处理一些敏感信息(如手机或PDA上的信用卡信息),执行重要的功能(如医疗仪器或汽车电子)。一旦存储在嵌入式系统中的敏感数据被泄露,将造成巨大的危害。因此,对嵌入式系统的安全问题的研究显得更加的迫在眉睫。由于严格的限制和苛刻要求(如性能、成本和功耗),只有专有的软件可以用于安全关键的嵌入式系统。在通用计算机中成熟应用的安全机制不再适用于嵌入式系统。一般地,嵌入式系统有限的计算能力和依靠电池的供能,限制了在嵌入式处理器中增加需要大量计算的加密算法实现。此外,嵌入式系统存在攻击漏洞,如物理篡改,恶意软件和旁道攻击。所以,安全嵌入式系统的设计需要考虑如下因素:小型化,性能好,低功耗(即电池寿命更长),防攻击的健壮性。嵌入式处理器是整个嵌入式系统的核心,与外设连接,负责系统的数据交换与处理。在嵌入式处理器中构造安全运行时环境能有效的改进嵌入式系统的安全性。安全处理器架构能保护应用程序不被篡改,应付许多棘手的安全性问题,如逆向工程,可信计算,数字版权保护等。通过提供安全的计算环境,能防御物理篡改和软件漏洞。安全处理器旨在保护应用程序的机密性,完整性和真实性,构建私有的防篡改的执行环境。论文所做的研究工作主要包括以下几个方面:第一,分析了嵌入式系统所面临的安全性威胁。分别详细地讨论了来自软件级,系统级和芯片级的恶意攻击,分析了各层攻击的特点,并得出系统级攻击是威胁嵌入式处理器安全的最普遍的且最可行的攻击方式,进一步归纳了应对系统级攻击的安全处理器应具有的设计准则。第二,讨论了安全处理器技术。研究了当前主要的机密性和完整性保护技术,分析了各自的优缺点,提出了本文解决的嵌入式系统的威胁模型的假设。第三,提出了轻量级的基于流密码的安全处理器架构。在处理器中增加了流密码机制和Hash验证机制,分别对应用程序的代码和数据进行加密和验证。基本块是代码加密和验证的最小单位;数据块是数据加密与验证的最小单位。并通过对指令流的链式Hash来验证基本块的完整性。最后,通过在一个运行时HEC虚拟机中模拟安全处理器的行为,验证了安全处理器架构的可行性。