双执行环境之间双向访问应用的方法

文档序号:9828199阅读:401来源:国知局
双执行环境之间双向访问应用的方法
【技术领域】
[0001] 本发明涉及智能移动设备技术领域,更具体地说,涉及一种双执行环境之间双向 访问应用的方法。
【背景技术】
[0002] 随着智能移动设备(如智能手机)逐步"支付工具"化,其现有的智能操作系统已无 法满足支付应用对其所处的运行环境的安全性要求。由于系统资源所限,若提高智能操作 系统的安全性,几乎肯定会使功能及用户体验有所降低。针对于此,当前业界基于最新移动 芯片的技术发展,提出了双执行环境方案:即一个设备上同时运行有两个执行环境,其中一 个是注重功能、用户体验的多媒体执行环境,另一个是注重安全的可信执行环境。
[0003] 当前,GlobalPlatform 所提出的可信执行环境(Trusted execution environment,简称TEE)作为该方案的一个技术实现平台,得到了广泛应用。在该平台上, 满足某项业务需求的功能实现由原先的单一应用分为两种应用:一种作为客户应用部署在 多媒体执行环境中,也称为REE (Rich execution environment)应用,另一种作为安全应 用部署在可信执行环境中,也称为TEE应用。为实现系统的安全功能,多媒体执行环境中的 REE应用需要访问可信执行环境中的TEE应用,即,访问TEE应用所提供的服务,相应的服务 结果再由TEE应用返回给多媒体执行环境中的REE应用。
[0004] 如图1所示,REE应用和TEE应用之间采用以下机制进行通信:REE通信模块和TEE 通信模块分别运行在多媒体执行环境和可信执行环境下,采用一种请求-应答方式来实现 REE应用和TEE应用之间的数据交互。具体地,REE应用请求访问TEE应用时,首先将访问请 求转送至REE通信模块,REE通信模块通过双系统之间的切换机制切换到安全操作系统下, 再以Request命令的形式将请求发送至TEE通信模块,TEE通信模块获取到请求后,确定该 请求要具体发往的TEE应用并将请求数据转送到该TEE应用,该TEE应用收到请求之后,进 行处理以产生结果数据,再调用TEE通信模块的Response命令,将结果数据返回给REE应 用。上述方案中,在Response命令没有返回REE应用前,不能发起新的Request命令。
[0005] 这种方案存在如下问题:当TEE应用需要对REE应用的访问请求进行较为复杂的 处理时,由于前一对Request-Response命令之间无法插入新的Request命令,TEE应用无法 再从多媒体执行环境中的REE应用获取进行复杂处理所需的有关基础数据,从而要求可信 执行环境自身具备更多、更强的能力来支撑这种复杂处理。比如:在TEE应用需要后台的参 与、或需要访问智能存储卡等来进行复杂处理时,TEE应用就相应地需要可信执行环境能够 联网、或设有智能存储卡访问接口等,这无疑会使可信执行环境结构变大、变复杂,从而使 安全操作系统可验证性的难度增加,也会产生更多的系统缺陷,进而会降低系统的安全性。
[0006] 因此,本领域技术人员期望获得一种使TEE应用在处理来自REE应用的请求过程 中可以回访REE应用的方法。

【发明内容】

[0007] 本发明的目的在于提供一种双执行环境之间双向访问应用的方法,以便于安全应 用对客户应用的访问请求进行分阶段的复杂处理。
[0008] 为实现上述目的,本发明提供一种技术方案如下: 一种双执行环境之间双向访问应用的方法,其中,双执行环境包括可信执行环境与多 媒体执行环境,多媒体执行环境部署有至少一个客户应用和第一通信模块,可信执行环境 部署有至少一个安全应用和第二通信模块,客户应用和安全应用之间通过第一通信模块和 第二通信模块进行数据交互,该方法包括如下步骤:a)、第一客户应用通过第一通信模块发 出对第一安全应用的访问请求;其中,第一客户应用为任一客户应用,第一安全应用为第一 客户应用需要访问的安全应用;b)、第一安全应用对访问请求进行第一阶段处理,以得到第 一结果数据并转送到第二通信模块;其中,第一结果数据指定至少一第二客户应用,第二客 户应用为第一安全应用需要回访的客户应用;c)、第二通信模块根据第一结果数据,在第一 通信模块和第二通信模块之间建立至少一双向通信信道,以使第一安全应用分别通过各双 向通信信道回访各第二客户应用;其中,双向通信信道与第二客户应用一一对应;d)、第 一安全应用基于回访各第二客户应用所得的各回访结果,对访问请求进行第二阶段处理, 以生成对应于访问请求的最终结果数据;e)、第一安全应用向第一客户应用返回最终结果 数据。
[0009] 优选地,步骤C)中,第二通信模块以与第一通信模块之间的请求-响应方式建立 至少一双向通信信道。
[0010] 优选地,步骤c)具体包括:cl)、第二通信模炔基于第一结果数据生成对客户应用 的至少一回访请求,并将至少一回访请求发送至第一通信模块;其中,回访请求与第二客户 应用一一对应;c2)、第一通信模块接收各回访请求,并基于各回访请求分别选择各第二客 户应用;c3)、各第二客户应用分别对相应的回访请求进行处理,以生成至少一回访结果并 转送给第一通信模块;其中,回访结果与回访请求一一对应;c4)、第一通信模炔基于各回 访结果分别生成至少一回访响应,并将各回访响应发送回第二通信模块;其中,回访响应与 回访结果一一对应;c5)、第二通信模块将各回访响应分别解析为各回访结果并将各回访结 果转送至第一安全应用。
[0011] 优选地,第二客户应用为多个,第一安全应用并行地回访各第二客户应用。
[0012] 本发明各实施例所提供的双执行环境之间双向访问应用的方法,使得TEE应用在 处理来自REE应用的请求过程中可以回访REE应用,从而TEE应用能够对来自REE应用的 访问请求进行复杂处理以实现更完备的功能。本发明各实施例还可在保证系统安全性的同 时有效降低可信执行环境的结构复杂度,从而降低了产生系统缺陷的可能性。此外,本发明 各实施例支持某一安全应用并行地回访多个客户应用,且每一回访是通过独立的双向通信 信道来进行的,这显著提高了系统工作效率。
【附图说明】
[0013] 图1示出现有技术中多媒体执行环境中REE应用与可信执行环境中TEE应用之间 数据交互过程的示意图。
[0014] 图2示出本发明第一实施例提供的双执行环境之间双向访问应用的方法的流程 示意图。
[0015] 图3示出本发明第一实施例提供的双执行环境之间双向访问应用的方法中的数 据交互过程示意图。
【具体实施方式】
[0016] 在本文所提供实施例中,双执行环境包括可信执行环境与多媒体执行环境,两者 共同运行于同一智能移动装置中,例如,智能手机。多媒体执行环境部署有至少一个客户应 用和第一通信模块,可信执行环境部署有至少一个安全应用和第二通信模块,各客户应用 和安全应用分别提供至少一种服务,客户应用和安全应用之间通过第一通信模块和第二通 信模块进行通信。需要说明的是,本文所指"回访"表示在多媒体执行环境中的第一客户应 用向可信执行环境中的第一安全应用发出访问请求时,为使第一安全应用获取多媒体执行 环境中的某些服务资源以实现对该访问请求的响应,而逆向访问多媒体执行环境中的任一 个或任多个客户应用,而非仅访问第一客户应用。
[0017] 在本文所提供的实施例中,任一客户应用或安全应用均可提供至少一项服务,本 文所指"服务"为客户应用或安全应用所实现的功能,换言之,任一客户应用或安全应用均 可实现至少一项功能。第一客户应用访问第一安全应用本质上即为访问第一安全应用所提 供的至少一项服务。
[0018] 本文所指"第一客户应用"为多媒体执行环境中任一客户应用,而"第一安全应用" 为第一客户应用需要访问的、可信执行环境中的安全应用。
[0019] 如图2和图3所示,本发明第一实施例提供一种双执行环境之间双向访问应用的 方法,其包括如下步骤: 步骤S10、第一客户应用通过第一通信模块发出对第一安全应用的访问请求; 具体地,第一客户应用产生对第一安全应用的访问请求100,第一通信模块会按照一定 的数据格式对访问请求100进行封装,例如封装为Request命令101,随后发送给第二通信 模块;第二通信模块收到封装数据(Request命令101)后进行解析,获得访问请求100并转 送到第一安全应用。
[0020] 步骤S20、第一安全应用对访问请求进行第一阶段处理,以得到第一结果数据102 并转送到第二通信模块。
[0021] 其中,第一结果数据102指定至少一个第二客户应用,该至少一个第二客户应用 可能包括第一客户应用,也可能不包括。本文所指第二客户应用为第一安全应用需要回访 的、多媒体执行环境中的客户应用。
[0022] 第一安全应用对来自第一客户应用的访问请求100进行分阶段处理,第一阶段处 理所需的基础数据从该访问请求100中即可获得,而第二阶段处理所需的基础数据则需要 回访第二客户应用来获得。第一阶段处理生成第一结果数据102,第一安全应用将该第一结 果数据102转送到第二通信模块。
[0023] 本领域技术人员可以理解,可能存在如下情况:第一安全应用在对访问请求进行 第一阶段处理后,得知需要访问同处于可信执行环境中的第二安全应用来完成后续处理, 而第二安全应用需要回访多媒体执行环境中的至少一个客户应用,从而此时第一结果数据 可由第二安全应用来生成。这种情况涵盖于本发明的范围内。
[0024] 步骤S30、第二通信模块根据第一结果数据102,在第一通信模块和第二通信模块 之间建立至少一双向通信信道,以使第一安全应用分别通过各双向通信信道回访各第二客 户应用。
[0025] 该步骤中,第二通信模块以与第一通信模块之间的请求-响应方式在第二通信模 块与第一通信模块之间建立至少一双向通信信道,双向通信信道与第二客户应用一一对 应,以便第一安全应用分别通过独立的双向通信信道来并行地回访各第二客户应用。
[0026] 优选情况下,步骤S30具体包括: 步骤S301、第二通信模炔基于第一结果数据102生成对客户应用的至少一回访请求 200,并将该至少一回访请求200发送至第一通信模块。
[0027] 其中,回访请求200与第二客户应用--对应。
[0028] 步骤S302、第一通信模块接收各回访请求200,并基于各回访请求200分别选择各 第二客户应用。
[0029] 步骤S303、各第二客户应用分别对相应的回访请求200进行处理,以生成至少一 回访结果201并转送给第一通信模块。
[0030]
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1