EFI下可信链建立关键技术研究与实现

来源 :北京交通大学 | 被引量 : 0次 | 上传用户:a272437762
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
可扩展固件接口(EFI)是英特尔公司为其新一代64位安腾处理器设计的计算机平台固件和操作系统或其他应用软件之间的一种新型程序接口规范,它同时兼容英特尔32位平台,是现有传统BIOS的升级方案。同传统BIOS相比,EFI提供了极大的可扩展性和可定制性。EFI定义了许多重要的数据结构以及系统服务,实现这些数据结构与系统服务,就相当于实现了一个可用的BIOS核心。EFI开发软件包(EDK)是英特尔公司对EFI规范的实现,英特尔已公布其源码和设计结构,其大部分代码为C语言开发,有很大的开发灵活性。英特尔同时发布EFI开发软件包相关的各种技术文档,以方便相关开发工作。随着对BIOS攻击的日益增多,实现安全可信BIOS的要求日益紧迫。EFI并没有解决BIOS面临的安全威胁。而且EFI大部分程序由C语言实现,因此EFI面临更大的被恶意修改和攻击的威胁,这对EFI的安全性提出了更高的要求。对EFI安全性的研究是目前的研究热点。目前针对EFI安全的研究大多基于TPM安全芯片来建立可信链,而TPM芯片现在应用并不广泛。因此本文采用应用更为普遍的USB Key构建可信根,以EFI DXE阶段前的代码为根原点建立可信链。建立基于EFI的可信链是实现可信EFI的基础,本文主要研究EFI可信链中EFI驱动和应用程序的加载校验过程。EFI下驱动和应用程序均以EFI Image形式加载,本文针对EFI Image加载过程提出两种校验方案——白名单文件方案和EFIImage文件头嵌入签名的方案。白名单方案需要在系统中设置白名单文件记录所需校验的EFI Image的文件路径和散列值,在加载EFI Image时,需要首先查找白名单文件中相关记录并计算比对散列值;而EFI Image文件头嵌入签名的方案则需要对EFI Image文件的散列值进行签名,并将签名值存储于EFI Image文件自身中,在加载EFI Image文件时直接从其自身文件中读出签名值,解密得到散列值,然后计算比对散列值。通过对两种方案的优缺点的对比分析,本文最后选用白名单文件方案进行实现。在白名单文件方案的实现过程中,通过分析与调试英特尔EFI架构开源代码,准确定位EFI中加载驱动与应用程序Image文件的函数入口点,掌握EFI下应用程序、驱动程序和服务的开发过程。基于以上工作,在EFI下成功驱动USB Key设备,以系统服务形式实现了MD5算法,并初步实现了EFI可信链建立的关键技术——EFI驱动和应用程序加载时的完整性校验。
其他文献
随着我国司法改革的深化,鉴定制度逐渐显现出滞后的趋势。尤其是鉴定启动权的配置方面存在很大的问题,受到诸多学者的诟病。本文通过比较研究的方法,深入考察两大法系国家鉴
目的探讨不同致病菌感染对糖尿病足溃疡患者病情与短期生存状况的影响。方法选取医院2013年2月-2017年2月收治的糖尿病足溃疡合并感染患者为研究对象。采集患者创面标本进行
<正>"文玩"主要指历代文人使用或把玩的物件,也不免让人想到文人的收藏爱好。《美术观察》策划"‘文玩’进行时"选题,除了呈现当下"文玩"现状,也关注美术界文人的收藏旨趣。
选取200例乙肝患者为观察对象,采用荧光定量PCR(FQ-PCR)检测病患血清中的HBV-DNA,乙肝血清标志物两对半的检测采用ELISA方法,观察分析检测结果的相关性。结果检测结果显示,大三阳组
<正> 民主德国对产蛋鸡和后备母鸡做了饲养实验,鸡的基础日粮为玉米、鱼粉和添加有维生素A和E:1~8周龄后备母鸡分别为5000IU和1mg/kg混合饲料;9~20周龄分别为4000IU和0;产蛋鸡
目的探讨优质护理在妊高症产妇产后出血护理中的应用效果。方法选取2016年1月~2017年7月我院收治的妊高症产后出血产妇38例为研究对象,将其依照入院治疗时间随机分为对照组和