【技术实现步骤摘要】
可信应用的运行方法、信息处理和内存分配方法及装置
本申请涉及通信
,尤其涉及一种可信应用程序的运行方法、信息处理方法、内存分配方法及装置。
技术介绍
随着移动互联网的发展,智能终端设备的应用越来越广泛。为了提供智能终端设备的丰富功能和可扩展属性,并且保护用户隐私和信息安全,终端设备构建在提供开放式操作环境的富执行环境(richexecutionenvrironment,REE)和可信执行环境(trustedexecutionenvironment,TEE)之上。REE也被称作一般运行环境,主要包括运行于通用处理器上的富操作系统(richoperatingsystem,RichOS)和运行在RichOS上的客户端应用程序(clientapplication,CA)。TEE是运行于REE之外的独立运行环境,主要包括运行于可信操作系统(trustedoperatingsystem,TrustedOS)和运行在TrustedOS上的可信应用程序(trustedapplication,TA),TEE与REE隔离。REE无法直接访问TEE的硬件和软件资源,例如TEE内存,二者只能通过授权的应用程序编程接口(applicationprogramminginterface,API)进行交互。因此TEE能够抵御在REE侧发生的软件攻击。由于TA在实现某个功能时,需要运行TA的目标文件中代码段的部分代码,并且访问数据段的部分数据,因此,可以在逻辑上将该功能对应的程序段(包括代码和数据)称作该功能对应的程序模块。现有技术中, ...
【技术保护点】
1.一种可信应用程序TA的运行方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,所述TEE操作系统上部署有一个或多个可信应用程序TA,所述方法包括:/n所述TEE操作系统启动目标TA,所述目标TA为所述一个或多个TA中的任意一个TA;/n所述TEE操作系统接收所述目标TA响应于目标服务的运行请求发送的加载请求,所述加载请求用于指示加载目标动态库,其中,所述目标服务为所述目标TA提供的服务;/n响应于所述加载请求,所述TEE操作系统加载所述目标动态库到所述目标TA的内存空间中,所述目标动态库用于支持所述目标服务的运行。/n
【技术特征摘要】
1.一种可信应用程序TA的运行方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,所述TEE操作系统上部署有一个或多个可信应用程序TA,所述方法包括:
所述TEE操作系统启动目标TA,所述目标TA为所述一个或多个TA中的任意一个TA;
所述TEE操作系统接收所述目标TA响应于目标服务的运行请求发送的加载请求,所述加载请求用于指示加载目标动态库,其中,所述目标服务为所述目标TA提供的服务;
响应于所述加载请求,所述TEE操作系统加载所述目标动态库到所述目标TA的内存空间中,所述目标动态库用于支持所述目标服务的运行。
2.根据权利要求1所述的方法,其特征在于,所述TEE操作系统加载所述目标动态库到所述目标TA的内存空间中,包括:
所述TEE操作系统从所述TEE操作系统的内存空间加载所述目标动态库到所述目标TA的内存空间中。
3.根据权利要求1所述的方法,其特征在于,所述TEE操作系统加载所述目标动态库到所述目标TA的内存空间中,包括:
所述TEE操作系统从所述REE操作系统获取所述目标动态库,并将所述目标动态库加载到所述目标TA的内存空间中。
4.根据权利要求3所述的方法,其特征在于,所述TEE操作系统从所述REE操作系统获取所述目标动态库,包括:
所述TEE操作系统向所述REE操作系统发送所述目标动态库的传递请求,所述传递请求包括所述目标动态库的标识,所述传递请求用于指示所述REE操作系统将所述目标动态库发送到所述TEE操作系统;
所述TEE操作系统接收所述REE操作系统发送的所述目标动态库。
5.根据权利要求3所述的方法,其特征在于,所述TEE操作系统从所述REE操作系统获取所述目标动态库,包括:
所述TEE操作系统从所述REE操作系统获取加密文件;
所述TEE操作系统对所述加密文件进行解密,得到解密文件,所述解密文件包括所述目标动态库。
6.根据权利要求1或2所述的方法,其特征在于,所述目标服务的运行请求由部署在所述REE操作系统的目标客户端应用程序CA发送,所述目标CA有调用所述目标服务的权限,所述目标动态库由所述REE操作系统响应于第二传递请求发送给所述TEE操作系统,其中,所述第二传递请求由所述目标CA响应于第一传递请求发送给所述REE操作系统,所述第一传递请求由所述目标TA响应于所述目标服务的运行请求发送给所述目标CA。
7.根据权利要求1至6中任意一项所述的方法,其特征在于,所述TEE操作系统启动目标TA,包括:
所述TEE操作系统从所述REE操作系统获取一个或多个动态库,并将所述一个或多个动态库存储在所述TEE操作系统的内存空间中,其中,所述一个或多个动态库被记录在所述目标TA的目标文件中。
8.根据权利要求1至7中任意一项所述的方法,其特征在于,所述TEE操作系统加载所述目标动态库到所述目标TA的内存空间中,包括:
所述TEE操作系统根据目标权限信息判断所述目标TA是否具有调用所述目标动态库的权限;
基于所述目标TA具有调用所述目标动态库的权限,所述TEE操作系统将所述目标动态库加载到所述目标TA的内存空间中。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述方法还包括:
所述TEE操作系统获取所述目标TA响应于所述目标服务的运行请求发送的内存请求,所述内存请求用于向所述TEE操作系统申请运行所述目标服务所需的内存;
响应于所述内存请求,所述TEE操作系统向所述REE操作系统获取内存分配信息,所述内存分配信息用于指示所述REE操作系统将第一内存分配给所述TEE操作系统;
所述TEE操作系统将所述第一内存分配给所述目标TA。
10.根据权利要求9所述的方法,其特征在于,所述第一内存大于所述内存请求所申请的内存。
11.根据权利要求9所述的方法,其特征在于,所述TEE操作系统将所述第一内存分配给目标TA,包括:
所述TEE操作系统将所述第一内存配置为安全内存;
所述TEE操作系统将配置为安全内存的所述第一内存分配给所述目标TA。
12.根据权利要求9至11中任意一项所述的方法,其特征在于,在所述TEE操作系统将所述第一内存分配给所述目标TA之后,所述方法还包括:
所述TEE操作系统接收所述目标TA发送的TA内存释放请求,所述TA内存释放请求用于请求所述TEE操作系统释放所述第一内存;
响应于所述TA内存释放请求,所述TEE操作系统释放所述第一内存。
13.根据权利要求12所述的方法,其特征在于,所述TEE操作系统释放所述第一内存,包括:
所述TEE操作系统将所述第一内存配置为非安全内存;
所述TEE操作系统释放被配置为非安全内存的所述第一内存。
14.根据权利要求12所述的方法,其特征在于,在所述TEE操作系统释放所述第一内存之后,所述方法还包括:
所述TEE操作系统向所述REE操作系统发送TEE内存释放请求,所述TEE内存释放请求用于请求所述REE操作系统释放所述第一内存。
15.一种可信应用程序TA的运行方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,所述TEE操作系统上部署有一个或多个可信应用程序TA,所述方法包括:
所述TEE操作系统启动目标TA,所述目标TA为所述一个或多个TA中的任意一个TA;
所述TEE操作系统为所述目标TA提供目标动态库,所述目标动态库由所述目标TA加载至所述目标TA的内存空间中,以支持所述目标TA运行目标服务,所述目标服务为所述目标TA提供的服务。
16.根据权利要求15所述的方法,其特征在于,所述TEE操作系统为所述目标TA提供所述目标动态库,包括:
所述TEE操作系统接收所述目标TA响应于所述目标服务的运行请求发送的获取请求,所述获取请求用于指示所述TEE操作系统获取所述目标动态库;
响应于所述获取请求,所述TEE操作系统获取所述目标动态库。
17.根据权利要求16所述的方法,其特征在于,所述TEE操作系统获取所述目标动态库,包括:
所述TEE操作系统从所述REE操作系统获取所述目标动态库。
18.根据权利要求17所述的方法,其特征在于,所述TEE操作系统从所述REE操作系统获取所述目标动态库,包括:
所述TEE操作系统向所述REE操作系统发送所述目标动态库的传递请求,所述传递请求包括所述目标动态库的标识,所述传递请求用于指示所述REE操作系统将所述目标动态库发送到所述TEE操作系统;
所述TEE操作系统接收所述REE操作系统发送的所述目标动态库。
19.根据权利要求17所述的方法,其特征在于,所述TEE操作系统从所述REE操作系统获取所述目标动态库,包括:
所述TEE操作系统从所述REE操作系统获取加密文件;
所述TEE操作系统对所述加密文件进行解密,得到解密文件,所述解密文件包括所述目标动态库。
20.根据权利要求15所述的方法,其特征在于,所述TEE操作系统为所述目标TA提供所述目标动态库包括:
所述TEE操作系统接收所述REE操作系统响应于第二传递请求发送的所述目标动态库,所述目标服务的运行请求由部署在所述REE操作系统的目标客户端应用程序CA发送,所述目标CA有调用所述目标服务的权限,所述第二传递请求由所述目标CA响应于第一传递请求发送给所述REE操作系统,所述第一传递请求由所述目标TA响应于所述目标服务的运行请求发送给所述目标CA。
21.根据权利要求15至20中任一项所述的方法,其特征在于,所述TEE操作系统启动目标TA,包括:
所述TEE操作系统从所述REE操作系统获取一个或多个动态库,并将所述一个或多个动态库存储在所述TEE操作系统的内存空间中,其中,所述一个或多个动态库被记录在所述目标TA的目标文件中。
22.根据权利要求15至21中任一项所述的方法,其特征在于,所述TEE操作系统为所述目标TA提供所述目标动态库包括:
所述TEE操作系统接收所述目标TA发送的访问请求,所述访问请求用于请求访问所述TEE操作系统的内存空间,所述目标动态库存储在所述TEE操作系统的内存空间;
基于所述目标TA具有访问所述TEE操作系统的内存空间的权限,所述TEE操作系统向所述目标TA发送允许访问信息,所述允许访问信息用于通知所述目标TA访问所述TEE操作系统的内存空间。
23.根据权利要求22所述的方法,其特征在于,所述访问请求用于请求访问所述目标动态库;
所述TEE操作系统向所述目标TA发送允许访问信息包括:
基于所述目标TA具有访问所述TEE操作系统的内存空间的权限,并且,基于所述目标TA具有调用所述目标动态库的权限,所述TEE操作系统向所述目标TA发送所述应答信息。
24.一种可信应用程序TA的运行方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,所述TEE操作系统上部署有一个或多个TA,所述方法包括:
响应于目标服务的运行请求,目标TA加载目标动态库到所述目标TA的内存空间中,所述目标TA为所述一个或多个TA中的任意一个TA,所述目标服务为所述目标TA提供的服务;
所述目标TA利用所述目标动态库运行所述目标服务。
25.根据权利要求24所述的方法,其特征在于,所述目标TA加载目标动态库到所述目标TA的内存空间中,包括:
所述目标TA向所述TEE操作系统发送获取请求,所述获取请求用于请求所述TEE操作系统获取所述目标动态库;
所述目标TA将所述TEE操作系统获取到的所述目标动态库加载到所述目标TA的内存空间中。
26.根据权利要求25所述的方法,其特征在于,所述目标动态库为所述TEE操作系统从所述REE操作系统获取的。
27.根据权利要求24所述的方法,其特征在于,所述目标TA加载目标动态库到所述目标TA的内存空间中,包括:
所述目标TA向目标客户端应用程序CA发送第一传递请求,所述目标CA部署在所述REE操作系统中,并且有调用所述目标服务的权限,所述目标服务的运行请求由所述目标CA发送;
所述目标TA将所述TEE操作系统接收的所述目标动态库加载到所述目标TA的内存空间中,所述目标动态库由所述REE操作系统响应于第二传递请求发送给所述TEE操作系统,所述第二传递请求由所述目标CA响应于所述第一传递请求发送给所述REE操作系统。
28.根据权利要求24至27中任一项所述的方法,其特征在于,所述目标TA加载目标动态库到所述目标TA的内存空间中,包括:
所述目标TA从所述TEE操作系统的内存空间加载所述目标动态库到所述目标TA的内存空间中。
29.根据权利要求28所述的方法,其特征在于,所述目标TA从所述TEE操作系统的内存空间加载所述目标动态库到所述目标TA的内存空间中,包括:
所述目标TA向所述TEE操作系统发送访问请求,所述访问请求用于请求访问所述TEE操作系统的内存空间,所述目标动态库存储在所述TEE操作系统的内存空间中;
基于接收到所述TEE操作系统发送的允许访问信息,所述目标TA访问将所述TEE操作系统的内存空间中的所述目标动态库,并将所述目标动态库加载到所述目标TA的内存空间中。
30.一种信息处理方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,所述方法包括:
响应于传递请求,所述REE操作系统获取目标文件,所述传递请求用于指示所述REE操作系统将所述目标文件传递至所述TEE操作系统;
所述REE操作系统将所述目标文件发送给所述TEE操作系统。
31.根据权利要求30所述的方法,其特征在于,所述目标文件为目标动态库,所述目标动态库用于加载至目标TA的内存空间中,以支持所述目标TA运行目标服务,所述目标服务为目标TA提供的服务,所述目标TA为所述TEE操作系统上部署的一个或多个TA中的任意一个TA。
32.根据权利要求31所述的方法,其特征在于,所述传递请求为所述TEE操作系统发送的,或者,所述传递请求为目标客户端应用程序CA发送的,所述目标CA有调用所述目标服务的权限。
33.一种内存分配方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述TEE内部署有TEE操作系统,其特征在于,所述方法包括:
所述TEE操作系统向所述REE操作系统发送第一内存请求,所述第一内存请求用于请求所述REE操作系统为是TEE操作系统分配内存;
所述TEE操作系统接收所述REE操作系统发送的内存分配信息,所述内存分配信息用于指示为所述TEE操作系统分配的内存为目标内存;
所述TEE操作系统将所述目标内存配置为安全内存。
34.根据权利要求33所述的方法,其特征在于,所述TEE操作系统向所述REE操作系统发送第一内存请求之前,所述方法还包括:
所述TEE操作系统获取目标TA发送的第二内存请求,所述目标TA为所述TEE操作系统上部署的一个或多个TA中的任意一个TA,所述第二内存请求用于向所述TEE操作系统申请内存。
35.根据权利要求34所述的方法,其特征在于,所述TEE操作系统将所述目标内存配置为安全内存之后,所述方法还包括:
所述TEE操作系统将所述目标内存分配给所述目标TA。
36.根据权利要求34或35所述的方法,其特征在于,所述第二内存请求为所述目标TA响应于目标服务的运行请求发送的,所述第二内存请求用于申请所述目标TA运行所述目标服务所需的内存,所述目标服务为所述目标TA提供的服务。
37.根据权利要34至36中任一项所述的方法,其特征在于,所述第一内存请求申请的内存大于所述第二内存申请的内存。
38.根据权利要求35所述的方法,其特征在于,在所述TEE操作系统将所述第一内存分配给所述目标TA之后,所述方法还包括:
所述TE...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。