兴源范文网 > 作文大全 >

基于统一可扩展固件接口的可信密码模块驱动研究与设计

| 浏览次数:

摘要:为扩展可信密码模块(TCM)的应用范围,提高终端与云平台的安全与可信性,在分析TCM的应用现状及发展趋势的基础上,提出了基于统一可扩展固件接口(UEFI)的TCM驱动架构,设计了基于该架构的底层驱动接口及核心协议。该驱动采用模块化设计,分层实现,将各层接口封装成协议并注册到UEFI系统,完成了底层数据流收发和协议封装。经过一致性测试、功能测试和压力测试,验证了该设计的准确性和有效性,并以产业界应用该模型的使用情况,验证了设计的实用性。

关键词:云计算;可信计算;可扩展固件接口;可信密码模块驱动;先入先出寄存器

中图分类号:TP302.1;TP301.4

0引言

随着计算机应用的普及,虚拟化与云计算应用的深入,个人终端、虚拟终端平台及云平台的安全性与可信性愈发受到研究人员的重视,频发的用户账户信息和隐私泄露事件更加剧了用户对自身信息安全的担忧。为提升系统安全性与可信性,学术界提出了可信计算技术,该技术能够提供数据保护、身份证明、完整性度量存储与报告,使得计算机使用者能够明确计算机的行为是否与期望结果一致,并根据计算机行为采取相应策略,从而提升系统安全与可信性,为虚拟化和云计算提供了安全基础。可信密码模块(TrustedCryptographyModule,TCM)是第一款国产的具有可信计算功能的芯片,为我国可信计算技术发展提供算法支持与硬件保障,是可信计算技术的核心硬件支持模块。TCM固件层驱动的性能、稳定性和可扩展性都将影响整个硬件设备及上层可信计算应用的功能。目前有关TCM的研究多集中在算法方面,而固件方面的研究,由于入门难,成本高等诸多因素,进展比较缓慢,因而有关TCM在固件方面的资料比较缺乏,有关TCM驱动程序没有统一的架构设计与代码实现,缺乏系统的介绍。本文基于下一代固件标准——统一可扩展固件接口(UnifiedExtensibleFirmwareInterface,UEFI)[1]对TCM进行驱动架构设计并搭建与实现对应的对外接口,从而屏蔽底层硬件差异,以确保TCM能够更好地为计算机系统提供安全可行保障,使得可信计算技术能够迅速推广应用。

1技术背景

云计算是将优质硬件资源和优势软件资源集中配置后通过网络共享对外提供服务的一种技术模式[2]。它使用户摆脱了特定硬件、特定办公环境的限制,同时将其所具有的优势软硬件资源,根据需要随时随地地进行重新分配[3],具有非常明显的用户使用优势。对外提供服务的模式决定了需要收集用户信息进行身份认证,大量的用户个人信息汇集不可避免地出现了隐私泄露风险。云存储服务将集中存储用户数据,引发了用户对数据保密和防篡改方面的担心。目前可信计算已成为国内外解决计算机安全方面问题的有效解决方案之一。

2003年,由康柏、惠普、IBM、英特尔和微软牵头组织成立可信计算组织(TrustedComputingGroup,TCG),其目的是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台,以提高整体的安全性。TCG先后发布了可信计算芯片[4]、可信服务器、可信网络连接[5]、可信存储等一系列规范,以应对日益严峻的信息安全问题。可信计算技术具有三个基本特性,分别是:数据保护、身份证明、完整性存储与报告[6],使用这些基本特性使计算机行为可被追踪,用户可以确认数据是否被篡改,计算机行为是否与预期结果一致,从而提升系统的安全性与可信性,提升用户对计算机系统和服务(如云服务)的信任。2008年5月国家密码管理局颁布《可信计算密码支撑平台功能与接口规范》[7]。根据该规范而研制的可信计算密码模块(TCM)芯片是可信计算密码支撑平台提供基础支持的关键部件,提供独立的密码算法支撑。TCM技术的自主性、标准化以及先进性关系到上至国家信息体系的安全,下至普通计算机用户的应用安全。目前有关TCM方面的研究主要集中于其上层应用开发,例如包括使用TCM加密功能进行磁盘全盘加密[8],结合TCM证书功能进行电子文档保护[9],利用TCM的安全特性保护车载终端信息安全私密性与完整性[10]等,而使用这些功能的前提是需要固件层的驱动程序的支持以便计算机系统中的能识别和使用TCM功能。本文的研究目的正是结合UEFI提供TCM在固件层的驱动设计方案

固件是介于硬件和操作系统之间的程序或实体,基本输入输出系统(BasicInputOutputSystem,BIOS)属于计算机系统固件的一部分。它处在计算机系统的底端,负责对硬件资源进行初始化以及装载操作系统[11],提供操作系统所需的调用(如INT10中断调用),其安全性直接决定操作系统的安全以及操作系统之上相关应用和用户信息安全。根据可信计算相关理论TCM作为可信计算的重要基础,在固件层即需要运行,确保固件层的安全与状态可信。统一可扩展固件接口(UEFI)[1]是一个开放的接口规范,详细定义了预启动环境(Pre boot)[12]到操作系统启动之间的固件接口,UEFI规范本身与平台无关。它被看作是具有20多年历史的个人计算机BIOS的继任者[13]。早在2006年就有1250万台个人计算机使用了UEFI。2008年末所有的笔记本也都实现了从传统BIOS向UEFI的转变,Window8仅支持UEFI启动,它的推出更加速传统BIOS退出历史舞台,因此我们对于TCM驱动的开发将基于UEFI而进行。

相关热词搜索: 可信 固件 模块 扩展 接口

【基于统一可扩展固件接口的可信密码模块驱动研究与设计】相关推荐