[发明专利]具备TEE扩展的计算平台上的通信优化方法及系统在审
申请号: | 202010706425.X | 申请日: | 2020-07-21 |
公开(公告)号: | CN111859395A | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 董攀;杨保绚;谭郁松;李小玲;朱浩;马俊;秦莹;高珑;廖湘科;吴庆波;丁滟;黄辰林 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F9/54 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 谭武艺 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 具备 tee 扩展 计算 平台 通信 优化 方法 系统 | ||
本发明公开了一种具备TEE扩展的计算平台上的通信优化方法及系统,本发明包括为普通应用程序CA、安全应用程序TA分配共享内存;普通应用程序CA调用安全应用程序TA并通过共享内存传递数据;在TEE系统中采用执行方式一、执行方式二两者之一执行安全应用程序TA;销毁为普通应用程序CA、安全应用程序TA分配的共享内存。执行方式一、执行方式二,提供两种TEE调用接口,分别通过选择屏蔽和不屏蔽来自REE中断请求,实现两种切换方式,能够满足可信执行环境的各项功能,根据实际需要,在程序执行过程中,综合考虑提升通信效率,解决通信安全性和多样性通信需求,还解决了REE应用程序“饿死”和共享内存分配不合理等问题。
技术领域
本发明涉及计算机操作系统领域,具体涉及一种具备TEE扩展的计算平台上的通信优化方法及系统。
背景技术
TEE(Trusted Execution Environment)又称为可信执行环境,是同主机系统相隔离的安全区域。TEE技术通过对现有的CPU添加硬件扩展能力,基于软硬件结合的方式获得一个同主机环境相隔离的执行环境,并确保隔离环境中所加载的代码和数据的机密性和完整性,主机环境将作为REE(Rich Execution Environment)环境(通用计算环境)同TEE并发运行,并能利用安全通信机制获得TEE的服务。而硬件隔离机制保证TEE中的组件不受REE中所运行软件的影响。TEE的实现一般符合GlobalPlatform(GP)公司的TEE系统架构规范,这是为保护应用程序而提供的一系列功能,包括安全存储,安全内存和执行过程的私密性。
在有TEE扩展的程序中,应用程序划分为安全应用程序(TA)和普通应用程序(CA)两部分。TEE提供了授权安全软件(可信应用,TA)的安全执行环境,同时也保护TA的资源和数据的保密性,完整性和访问权限,在TEE中,每个TA是相互独立的,而且不能在未授权的情况下不能互相访问。CA运行在REE中,使用REE内核提供的服务来访问资源。
TEE和REE之间通过监控模式进行安全隔离,切换是通过调用特定接口实现的,一般称为SMC(Secure Monitor Call)调用服务。为了在隔离的基础上实现数据交换和通信,两者之间一般建立共享内存作为数据交换的媒介,通过将指令和数据放入共享内存中,再进行状态切换,完成数据交换和通信过程。
通过将操作系统的划分,重要敏感操作在TEE中实现,其他操作在REE中实现,提升了系统的安全性。但必须注意到的是,两者通信过程中,必然需要借用共享内存这个载体,也需要进行二者之间状态切换。因此共享内存和状态切换,影响了TEE和REE之间的通信过程。对于运行在REE和TEE中的CA和TA程序来说,在实际程序执行过程中,存在单次或多次调用TA、短时或长时调用TA、高优先或低优先级调用TA、需要大数据或小数据量调用TA等等多种多样调用情况。如何在多种多样的实际需求情况下,依然能够实现高效安全的通信过程,成为关注的重点。因此我们需要综合考虑各种问题,设计一种灵活多样的通信过程来满足需要。本发明重点关注了以下几个问题:1、TEE和REE之间切换方式对通信性能的影响。TEE和REE之间的通信是依靠两者之间切换来完成,二者之间切换需要进行状态保存和恢复等操作,带来较大时延,同时,过多的状态切换也引入了更多的通信过程需求和程序执行效率的降低。因此在TA执行过程中,尽可能的减少切换次数会提高程序执行效率,减少不必要的通信过程,对整个程序执行过程比较有利。具体来说执行TA时,可以通过屏蔽来自REE的中断请求来减少不必要的切换次数。但是屏蔽中断,也面临在REE中其他应用程序面临过长等待而“饿死”的情况,也不适应当前大数据量处理的需求,因此如何综合考虑屏蔽中断和优化通信过程成为需要关注的问题;2、TEE和REE之间的共享内存分配方案缺乏灵活性。共享内存是TEE和REE之间数据交换和通信过程的重要载体,共享内存大小和在程序运行过程中如何分配共享内存策略,影响了程序通信效率。一般情况下,共享内存在程序运行前分配完成并绑定到应用,当有其它应用执行时,需要释放前一个应用的共享内存并重新分配,因此多个应用的交叉运行时要会导致多次分配回收共享内存,从整个程序执行过程看,带来了多次的共享内存分配和回收的通信冗余;另一方面,共享内存分配的大小也影响执行效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010706425.X/2.html,转载请声明来源钻瓜专利网。