可信PDA计算平台系统结构及安全机制.docx
- 文档编号:7488665
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:16
- 大小:268.37KB
可信PDA计算平台系统结构及安全机制.docx
《可信PDA计算平台系统结构及安全机制.docx》由会员分享,可在线阅读,更多相关《可信PDA计算平台系统结构及安全机制.docx(16页珍藏版)》请在冰豆网上搜索。
可信PDA计算平台系统结构及安全机制
可信PDA计算平台系统结构与安全机制
赵波1,2X焕国1,2李晶1,2陈璐1,2文松1,2
1(XX大学计算机学院XXXX430079)
2(空天信息安全与可信计算教育部重点实验室XXXX430079)
TheSystemarchitectureandSecuritystructureofTrustedPDA
BoZhao1,2HuanguoZhang1,2LiJing1,2ChenLu1,2Wensong1,2
1(puterSchool,WuhanUniversity,Hubei,China)
2(StateKeyLabofSoftwareEngineering,WuhanUniversity,Hubei,China)
:
zhaobowhu.edu.
摘要:
PDA作为一种手持设备,面临着众多的安全问题。
本文介绍利用可信计算思想构造了可信PDA的体系结构与安全机制。
文中提出了一种带数据恢复功能的星型信任结构,其在安全性、效率及可靠性等方面较TCG的链式信任结构都有很大提升。
在此基础上,进一步使用总线仲裁等技术构造了可信PDA的体系结构模型。
文中还提出并实现了针对可信PDA嵌入式操作系统的安全增强、基于可信PDA平台的可信网络连接(TNC)以及SD卡全盘加密等新的安全技术与方法。
在此基础上,研制出我国第一款可信PDA的原型系统。
经过实验验证,这款可信PDA在各方面都达到了可信计算平台的技术要求。
关键词:
可信计算;可信计算平台;可信PDA;星型信任结构
AbstractPDAasahandhelddevice,facedwithanumberofsecurityissues.ThisarticledescribestheTrustedPDAarchitectureandsecuritymechanismbyusingthemethodofTrustedputing.Thispaperproposesa“star-style”chainoftrustedstructurewithdatarecoveryfunctions,anditownsmoresafety,efficiencyandreliabilitythantheTCGtruststructure.Onthisbasis,thefurtheruseoftechnologiessuchasbusarbitrationsystemconstructedatrustedstructuralmodelofPDA.ThepaperalsoproposedandimplementedasecurityenhancedembeddedoperatingsystemforthetrustedPDA.Basedontrustedplatform,TrustedNetworkConnect(TNC),aswellasSDcardsfull-diskencryptionandothernewsecuritytechnologiesandmethodscanbesolved.Onthisbasis,wedevelopedthefirsttrustedPDA-prototypesysteminChina.Afterexperimentalverification,thisPDAhasreachedallaspectsofthetechnicalrequirementsoftheTrustedputingPlatform.
Keywords:
trustedputing,trustedputingplatform,trustedPDA,star-stylechainoftrustedstructure
中图分类号:
TP309文献标识码:
A
0、引言
长期以来,很多人认为PDA系统的软件是固化在硬件芯片里面的,不存在被攻击的可能性,因此对于PDA系统的安全问题,业界并没有给予重视和研究。
然而,随着PDA的技术发展与广泛应用,PDA也面临着巨大的安全威胁:
首先,PDA是一种手持移动设备,容易丢失,由此可能被冒用,造成信息泄露;其次,由于存储器技术的发展,PDA的存储器越来越多的采用可编程FLASH器件。
因此病毒等恶意代码完全可以攻击PDA系统;再其次,PDA的主要通信方式为无线通信,因此会产生电磁辐射,极易造成通信信息的泄露。
目前,对PDA设备及嵌入式系统安全增强的方法,大部分还是采用诸如SD卡加密等对敏感数据进行保护的传统安全技术。
这种安全保护并没有从体系结构和操作系统等软硬件底层提供根本性的安全保障。
可信计算技术是近年来出现的一种新的信息系统安全技术,目前已在世界X围形成了热潮。
它是提高计算机系统安全性的行之有效的新技术,因此也是解决PDA安全问题的有效途径。
国内外众多研究机构、学者已经对该领域开展了许多研究工作,并取得了一定的成果:
可信计算组织TCG已经提出了用于解决移动平台的安全规X[1],[2]和设想,但是尚未有任何具体的实现理论和技术的说明;Intel,IBM,NTT等公司提出了可信移动平台(trustedmobileplatform,TMP)项目,以TCG的可信平台模块(trustedplatformmodule,TPM)为基础,提出了可信移动平台的软件、硬件体系结构和协议规X[3],[4],[5],[6],但同样缺乏具体的实现方案;国内的其他学者[7],[8],[9],[10]也提出了利用该TPM模块与嵌入式CPU进行通信,以改善嵌入式系统安全水平的方法,这些平台构建方案都是基于TPM模块,现有TPM模块是针对PC终端设计的,并不能满足移动平台特有的属性和应用需求,也没有解决TPM和嵌入式CPU的双CPU结构对系统的控制等问题。
目前,基于TCG的规X标准,已经有了比较成熟的可信PC产品,TCG对可信PC[12]的链式信任关系的定义和实现值得研究可信嵌入式平台借鉴。
本文描述的可信PDA在理论上提出了适合嵌入式系统的带数据恢复功能的星型信任结构,并使用总线仲裁等新技术来管理TPM和嵌入式CPU,解决了安全控制和系统应用之间的矛盾,提高了嵌入式系统的可信性和工作效率。
可信PDA还支持基于硬件的存储设备加密、基于硬件的外部设备安全管理等功能、操作系统安全增强和可信网络连接(TNC),基本实现了可信计算对嵌入式系统安全的期望。
1、可信PDA的体系结构
可信PDA除提供一般PDA的功能之外,更重要的是能为用户提供可信安全保障。
可信PDA采用可信计算机制,利用可信平台模块(TPM)和信任链技术对系统安全性进行了增强,提高了PDA的安全性。
可信PDA由S3c2410xARMCPU,Jetway2810安全芯片[13],FPGA、指纹识别模块、GPS、WLAN等控制芯片构成,并有TFT触摸屏、USB等外部输入输出设备,采用包含图形界面的嵌入式Linux作为操作系统,其基本结构如图1所示。
除了保持传统PDA的特点之外,还根据可信≈可靠+安全的学术思想[26,27],从理论上完成了星型信任结构的设计,并从技术上实现了如下的安全特点:
1、具有数据恢复功能的星型信任结构:
信任链是保证计算机设备可信性的一个基本手段,可信PDA针对嵌入式系统的自身特点和可信PC链式信任结构的不足之处,设计了全新的星型信任结构,这种信任结构可以降低信任传递时的损耗,提高信任传递的效率、保护可信测量根CTRM的物理安全等。
同时,信任结构还带有数据恢复功能,启动时如果发现软件部分不完整(包括人为的破坏和病毒的传染),则自动启动恢复功能,以备份软件覆盖受损内容,确保平台软件的完整性和可靠性。
2、包含总线仲裁模块的ETPM(EmbeddedSystem-TPM)新结构:
以JetWay2810安全芯片为TPM核心芯片,FPGA以总线形式与JetWay2810相连,构成了包括总线仲裁和对称密码算法模块的完整ETPM(图1虚线部分),这是对TCG规X的一个改进。
可信PDA上电伊始就以TPM为主控设备,用TPM[14]控制指纹模块对用户身份加以识别,之后对所有启动部分实施完整性度量,只有经完整性度量确认环境安全之后,才允许ARM平台启动。
相对于目前可信PC的实现方案,更能确保TPM的主控地位,提高安全性。
J2810芯片还通过FPGA对部分外设通信信道的硬件通断进行物理层控制,如USB设备(包括无线网卡和GPS)。
这样就做到了既安全又可控,符合我国政府的信息安全政策。
3、操作系统安全增强:
在嵌入式操作系统上实现了包括加密文件系统、重要存储区域的隔离保护、日志系统、强制访问控制等安全功能,提供全面的操作系统安全保障,为上层应用软件安全提供了基础[15]。
用户身份使用指纹进行识别,并结合本机硬件特征形成各类密钥,密钥存储于ETPM中,并受其物理级别的保护。
NandFlash存储器中的信息,以密文形式存储,并结合密码算法硬件模块对SD卡实现全卡加密,被加密过的SD卡只能在本机使用,在其它设备上无法读取其内容,从而实现了软件和数据的防复制功能,可以防止可信PDA丢失后的冒用。
4、可信网络连接:
可信网络连接(TNC)是可信计算向网络领域扩展的一种重要技术。
它将可信计算机制引入网络,把信任链从终端平台扩展到网络,使得网络成为一种可信的计算环境。
在可信PDA中我们设计并实现了基于远程证明的可信网络接入(TNC)[16],即在使用网络功能之前,对要接入网络的设备进行完整性验证[17],以保证网络环境下应用的安全[18],[19],[20]。
除此之外,可信PDA还配备了100M速率网卡,提供图形化的操作接口,实现了资源管理器、音频等实用功能,方便一般用户的日常工作与使用。
2、星型的信任结构
对于不同的实体,可以使用不同的组织方式来表示它们之间的相互信任关系,这种组织方式即为信任结构。
对于各个实体,最直接的组织方式既为两两之间都有直接的信任关系。
如图2所示[21]。
这种相互信任结构可以非常方便地表示出各个实体之间的相互信任关系,但是,这种结构需要维护的关系表很多,如果实体数量较多,实现将非常困难。
TCG提出了一种链式的信任结构来实现实体的信任关系,与相互信任结构相比,该结构更易于实现。
根据TCG规X中的定义,信任传递呈一种链式结构,在可信平台的信任链传递过程中,各层可信代理之间层层传递信任关系[22]。
TCG的链式信任结构存在着很多的不足之处:
1)可信测量根CRTM置于TPM之外,不受TPM的物理保护,容易受到恶意攻击破坏;2)由于可信的测量值采用迭代的计算方法,因此如果在信任链形成后增加或者删除某个部件,或者软件的版本升级,都必须重新计算所有的信任值,增加了维护和管理的难度;3)根据信任理论,信任值在传递过程中会有损耗,传递的路径越长,则损耗越大[27]。
由于链式信任结构的信任传递路径长,所以容易产生信任的损耗。
2.1星型信任结构
基于Dempster-Shafer原理的计算信任值的两条原则如下[23]:
图3信任基本规则
1,信任衰减原则
如果节点A对节点B的信任值为T(A,B),节点B对节点C的信任值为T(B,C),TB(A,C)表示经由B点传递的A,C之间的信任关系。
由传递性可以推断出A和C之间的信任关系
定理1TB(A,C)=T(A,B)⊕T(B,C)。
这里符号⊕表示提取两者之间信任最小值的概念,因此有TB(A,C)<=min(T(A,B),T(B,C))。
2,信任聚合原则
节点A到节点D存在两条独立的路径,这两条路径分别给出它们的信任值TB(A,D)和TC(A,D)。
TB(A,D)表示经由B点传递的A,D之间的信任关系,TC(A,D)表示经由C点传递的A,D之间的信任关系。
由此可以判断出A和D之间的信任关系
定理2T(A,D)=TB(A,D)өTC(A,D)。
这里符号ө表示提取两者之间信任最大值的概念,因此有T(A,D)<=max(TB(A,D),TC(A,D))。
图4分别图示了链式信任结构和星型信任结构。
A,链式信任结构B,星型信任结构
图4链式和星型信任结构
在图4中,依照以上两条原则递推:
由链式结构,信任链经过节点:
A->B->C->D…->L->M->N,则链式信任结构的各级信任值有T(A,C)=min(T(A,B),T(B,C)),T(A,C)表示经过B点的A、C之间的信任关系,以此类推,有T(B,D)=min(T(B,C),T(C,D)),…,其最终信任值Tline不会大于min(T(A,B),T(B,C),…,T(L,M),T(M,N)),并且,从节点A到节点N的路径上任何一个信任关系的破坏,都会完全破坏整个信任链。
结论1如果依照星型信任结构,节点A与节点N之间有多条直接路径:
T1(A,N),T2(A,N),T3(A,N),…,Tn(A,N);则最终信任值Tstar不会小于max(T1(A,N),T2(A,N),T3(A,N),…,Tn(A,N)),即总有Tstar>=Tline(Tstar在最坏情况下等于Tline在最好情况下的值);而且星型信任关系结构较之前者健壮[24]。
结论2在星型信任结构中,节点A一般作为信任根出现,由它进行对其他节点的度量工作,其作用相当于TCG定义的TPM,然而,其具体的结构与TPM略有不同,星型信任结构的TPM将包含可信度量根CRTM,这样可以最大限度的保证CRTM在物理上是安全的。
结论3星型信任结构的信任值计算是根节点与每一个测量节点之间的独立计算结果,互相之间不会产生影响,因此添加和删除组件以及软件版本升级,只需要根节点对该节点单独重新进行计算即可,不会影响到整个信任链。
将链式信任结构和星型信任结构进行比较可以看出,星型信任结构优于链式信任结构。
星型信任结构也有不足之处:
在星型结构中,由于根节点处于中心位置,在平台的工作过程
中需要不断的对各节点进行完整性度量和可信度的判断,因此,根节点的计算压力较大,可能造成平台工作效率的损失。
但是,PDA系统有自己的特点,其TPM与ARMCPU的计算能力相当,因此TPM的工作不会带来系统整体性能明显的改变。
可信PDA原型系统的实际运行情况也证明了这一点。
所以,可信PDA使用星型信任结构是可行的,它保证了系统的信任度优于可信PC的链式信任结构。
可信PDA的星型信任结构以TPM为可信根,作为整个嵌入式平台的可信测量和控制器,嵌入式平台作为从设备受TPM的管理和控制;TPM内部采用物理方式集成了可信度量根、可信存储根和可信报告根,对自身以及连接电路有良好的物理保护;TPM启动后,只有身份信息和存储器内容的完整性验证完成之后,可信的代码才能在嵌入式平台上执行。
星型信任结构如图5所示。
星型信任结构和可信启动的概念,已经申请国家专利并获得授权。
(专利号ZL1.1;ZL0.7)
2.2总线仲裁
为了实现系统启动前的星型信任结构的完整性校验,TPM要将NandFlash中的BootLoader,Linuxkernel等内容读入进行校验[25],这就涉及到两个问题:
一是启动顺序,在上电后,TPM要先进行完整性检验,此时ARM还不能启动,在TPM校验通过后,ARM开始启动;二是S3C2410ARMCPU和TPM都需要读取NandFlash的值,因此需要对Flash读取的总线进行仲裁。
总线仲裁的体系结构设计框图如图6所示:
在图6中,使用FPGA实现S3C2410和TPM对NandFlash的分时操作,TPM为控制核心,由它来控制可信PDA的启动流程,可以根据度量情况随时将S3C2410关断和启动。
这种方法解决了可信PC中可信根度量和BIOS同时工作的尴尬局面,真正使TPM处于主控地位。
总线仲裁的实现还可以带来如下的好处:
1,TPM控制方便,灵活。
TPM通过对总线控制器中的控制寄存器的修改,可以完全使用程序来灵活控制S3C2410的启动,TPM也可以使用程序来控制读取NandFlash的信息量。
2,扩展方便。
本模块设计了TPM对S3C2410的开启与关断,若想实现其他安全控制,如关闭某个外设,只需要对体系结构做些许修改[26],[28];此外,还可以非常容易地扩展实现TPM对NandFlash的读写保护。
从物理上保护存储设备中内容的完整性和安全性。
可信PC没有考虑总线仲裁问题,采用了TPM和CPU同时启动的可信根扩展的方法[29]。
这种方法是对现有PC产品的一种妥协,使得对CRTM的保护和对BIOS的度量都难于实现。
这是目前可信PC的一个缺陷。
2.3具有数据恢复功能的信任结构
可信PDA仅仅具有安全功能是不够的,根据可信≈可靠+安全的学术思想[16,27],可信的产品也应该有较好的可靠性。
因此,TPM在启动时若检测到可信PDA的OS、Bootloader等已经受到了攻击并被篡改时,除了阻止PDA的进一步运行之外,需要提供一种机制以使得PDA能够恢复到其正常的状态,保证PDA的正常工作不受干扰。
可信PDA的备份恢复机制需要对TCG规X中的TPM结构进行扩展,在TPM内部添加一个受物理保护的系统备份存储器,保存计算机系统引导程序和操作系统等希望被保护的内容代码。
TPM在系统启动之前对PDA引导程序代码及操作系统代码进行完整性校验,若校验未通过则认为以上内容被篡改,TPM将使用总线仲裁机制获取总线控制权,从受保护的备份存储器中读取相应的备份代码,并将其写入PDA外部工作用存储器,再次进行完整性校验,若通过校验,表明系统恢复成功,TPM将交出总线控制权,允许PDA设备系统启动。
与现有的技术相比,该方式有如下优点:
由TPM作为系统的可信根,对可执行代码进行完整性校验,同时为备份存储器提供受保护的安全存储环境。
TPM拥有可信PDA总线控制权,在进行完整性校验和系统恢复的过程中不会受到外部干扰。
图7为基于TPM控制的备份恢复体系结构。
经过原型系统的实际测试,完成一次备份恢复的时间少于1秒(恢复内容小于32M),可以满足实际使用的要求。
从而大大提高了可信PDA的可靠性和可用性。
2.4新型的TPM结构
可信PDA是自主研发的可信产品,目前国内尚无适合星型信任结构的TPM成品。
由前文所述,可信PDA的TPM包含的功能比常规的TPM芯片多,因此,在图1中,以J2810安全芯片和FPGA设备构成了一种新的TPM模块结构。
2.4.1J2810芯片
J2810的安全芯片是一款通过国家认证的可信计算平台模块芯片。
它是与AMD186兼容的16位微控制器芯片[13],采用经SOSCA(SecureOpenSmartCardArchitecture)指令集增强的X86处理器内核,集成大容量存储器,多体制密码引擎,USB,ISO7816/4等多种外围控制器。
该芯片具有基本的密码计算和PCR数据存储功能,经过添加COS,J2810可以完成TCG规定的TPM的基本功能,并提供TSS的底层接口。
2.4.2TPM与TCM
TPM是可信计算平台的一个重要的组成部件,根据TCG的定义,TPM必须由硬件来实现,但是TCG仅仅在理论上定义出了TPM应该完成的功能,对其如何实现,性能指标要求,并没有统一的实现规定,作为一个标准的TPM,应包含执行引擎、存储器、I/O、RSA密码引擎、随机数产生器等部件,以完成加密,签名,认证,密钥产生等安全功能。
但是,TCG的TPM定义中并不包含对称密码算法引擎。
一般TCG建议利用其他的方式实现,这就带来一定的安全和性能隐患。
我国的TCM(TrustedCryptographyModule,可信密码模块)标准[29],是由国家密码管理局主持国内一些IT企业推出的。
TCM与TPM最大的不同在于,其内部的核心密码算法为我国自主知识产权的算法标准,特别是集成了我国的对称密码算法(SMS4)。
这样,TCM就避免了TPM中没有对称密码算法的缺陷。
2.4.3ETPM(EmbeddedSystemTPM)
可信PDA由于使用了前文描述的星型信任结构,因此ETPM的体系结构与TPM和TCM不同,其基本结构如图8所示:
公钥算法采用了RSA的2048位(也可使用ECC),对称密码算法采用了SMS4,另外还有完成正常启动顺序的总线仲裁、备份恢复模块。
上述几种模块,J2810没有提供,故而采用FPGA硬件实现。
ETPM构成了可信PDA的核心根模块,可以很好的实现星型信任结构所描述的功能,如图1和图5所示,形成了一种支持嵌入式系统的可信计算体系结构模块。
3、存储介质和操作系统安全
对于用户而言,可信PDA最重要的功能之一就是要保证数据信息的安全,需要达到如下的安全效果:
(1)实现可信PDA的存储介质NandFlash上重要数据区域的写操作保护,提供开机启动时的完整性校验支持。
(2)保证移动设备数据存储的XX性,解决XX的访问和因便携式设备的失窃引发的泄密等问题。
(3)细化文件的访问粒度,限制超级用户的权限。
即使是授权用户在访问资源时,行为必须符合安全策略,操作才能执行,否则将拒绝。
防止超级用户滥用权限。
(4)系统的安全增强模块有可以信赖的可信计算基。
可信PDA应实现对用户透明的安全存储保护模式,授权用户可以像使用普通文件系统一样完成安全功能操作。
由于嵌入式操作系统资源有限,安全增强模块在内核层实现,加密模块利用Linux缓冲机制并调用硬件密码模块进行加密,并在访问控制机制中添加策略缓存,提高了系统性能[18]。
3.1存储介质的安全
可信PDA使用SD卡作为外部的数据存储器,用户的私密信息经常存储于此。
因此,SD卡内的数据保护就显得尤为重要。
SD卡使用TPM中的硬件加密芯片实现加解密操作,在系统的性能和物理安全上都有极大的提高,其密钥存入TPM中,由TPM提供保护。
SD卡加密文件系统主要分为加密引擎和密钥管理两个主要部分[31]。
加密引擎是在内核合适的加解密位置调用硬件加密芯片利用SMS4完成加解密操作;密钥管理是使用TSS密钥安全存储接口访问TPM芯片中存储的密钥,从而利用其加密以及平台绑定功能来保证密钥的可信和安全性。
其体系结构如图9所示。
由于是在页高速缓存层和通用块层之间添加了数据加解密功能[31],因此对于上层用户是透明的,使用户感觉不到文件的加密过程,不修改文件系统的数据结构且用户访问加密文件的过程也不变。
SD卡一旦丢失,非合法用户也无法获得其内容,因加密层在文件系统层之下,非法用户甚至连文件结构都不能读取。
3.2数据隔离保护
嵌入式系统中,BootLoader,kernel和根文件系统是保障系统安全的重要区域,要求用户进程不能随便改动,否则将导致系统出错甚至无法使用。
但用户存储区内的数据应可由用户任意添加,删除和修改。
因此有必要对嵌入式的存储空间进行划分,以用户是否可以自由修改为依据,可以将存储空间划分为用户数据区和系统数据区。
在操作系统启动之前,TPM会自动校验系统数据区,校验通过后TPM才把控制权交给CPU,系统运行。
至此这些区域一直由TPM来保护。
按照目前可信PC的运行模式,在操作系统开始运行之后,TPM不会再对这些区域进行保护,恶意进程和用户的误操作可能会改写这些区域的数据,因此需要保护这些重要区域,防止被改写。
可信PDA中存储隔离保护设计的核心思想是在存储介质NandFlash上划分出一个重要分区来进行写操作保护[32]。
因为文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可信 PDA 计算 平台 系统 结构 安全 机制