TEE中可信程序的操作方法及装置与流程

文档序号:21546827发布日期:2020-07-17 17:57阅读:251来源:国知局
TEE中可信程序的操作方法及装置与流程

本申请涉及计算机安全技术领域,尤其涉及tee中可信程序的操作方法及装置。



背景技术:

tee(trustedexecutionenvironment,可信执行环境),是一种基于软硬件协同工作的安全执行环境。tee是与终端设备上的富应用执行环境(例如,android等)并存的运行环境。

ta(trustedapplication,可信程序),是一种运行在tee中运行的可信程序。ta为终端设备上的富应用提供安全服务。由于ta在tee下运行,因此其存储的数据可以避免遭受攻击者的攻击,可以有效保护隐私。



技术实现要素:

本申请提出tee中可信程序的操作方法,应用于业务服务端;其中,上述业务服务端与oem终端厂商服务端对接;上述方法包括:

接收安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求;其中,上述操作请求携带与所请求的操作对应的操作凭证;

响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据;

接收上述oem终端厂商服务端返回的操作数据,并将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述方法还包括:

响应于业务客户端发起的针对上述可信程序进行上述操作的注册请求,调用上述oem终端厂商服务端发起注册操作;

接收上述oem终端厂商服务端响应于上述注册请求返回的操作凭证,并将上述操作凭证返回至上述业务客户端。

在示出的一实施例中,上述操作请求为与可信程序对应的安装操作请求;

上述响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据,包括:

响应于上述安装操作请求,向上述oem终端厂商服务端发起调用请求;

接收上述oem终端厂商服务端响应于上述调用请求,返回的获取与上述可信程序对应的安装文件的获取请求;

响应于上述获取请求,将与上述可信程序对应的安装文件发送至上述oem终端厂商服务端,以使上述oem终端厂商服务端基于上述安装文件生成针对上述可信程序的操作数据。

在示出的一实施例中,上述操作数据被分片远程缓存;上述将上述操作数据发送至上述业务客户端,包括:

向上述业务客户端发送上述操作数据中的第一分片信息,以使上述业务客户的可以基于上述第一分片信息完成针对上述业务数据的下载;其中,上述第一分片信息包括上述操作数据的下载地址。

在示出的一实施例中,上述响应于上述获取请求,将与上述可信程序对应的安装文件发送至上述oem终端厂商服务端,包括:

响应于上述获取请求,对与上述可信程序对应的安装文件进行加密;

将加密后的上述安装文件发送至上述oem终端厂商服务端。

本申请提出tee中可信程序的操作方法,应用于oem终端厂商服务端;其中,上述oem终端厂商服务端与业务服务端对接;上述方法包括:

接收上述业务服务端发起的第一调用请求;其中,上述第一调用请求为上述业务服务端在接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端搭载的tee中的可信程序的操作请求后发起的;其中,上述调用请求携带与所请求的操作对应的操作凭证;

响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据;

将上述操作数据返回上述业务服务端,以使上述业务服务端将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述方法还包括:

接收上述业务服务端发起的第二调用请求;其中,上述第二调用请求为上述业务服务端在接收到上述业务客户端发起的针对上述可信程序进行上述操作的注册请求后发起的;

响应于上述第二调用请求,生成与所请求的操作对应的操作凭证;

将上述操作凭证返回至上述业务服务端。

在示出的一实施例中,上述操作请求为与可信程序对应的安装操作请求;

上述响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据,包括:

响应于上述第一调用请求,生成获取与上述可信程序对应的安装文件的获取请求,并将上述获取请求返回至上述业务服务端;

接收上述业务服务端响应于上述获取请求发送的与上述可信程序对应的安装文件;

基于上述安装文件生成针对上述可信程序的操作数据。

在示出的一实施例中,上述安装文件为加密文件。

在示出的一实施例中,上述方法还包括:

响应于上述第一调用请求,发起获取上述tee状态信息的请求,并通过上述业务服务端发送至上述业务客户端;

接收上述业务服务端返回的,上述业务客户端响应于上述获取上述tee状态信息的请求,返回至上述业务服务端的上述tee状态信息;

基于上述tee状态信息确定是否在上述tee中安装安全域;

如果是,则发起安装上述安全域的操作请求。

本申请提出tee中可信程序的操作方法,应用于业务客户端;其中,上述业务客户端对应的业务服务端与oem终端厂商服务端对接;上述方法包括:

向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,以使上述业务服务端响应于上述操作请求,向上述oem终端厂商服务端发起调用请求,生成针对上述可信程序的操作对应的操作数据;其中,上述操作请求携带与所请求的操作对应的操作凭证;

接收上述业务服务端返回的上述操作数据;

基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,包括:

获取上述tee对应的状态信息,并将获取的上述状态信息发送至上述业务服务端,以使上述业务服务端基于上述状态信息确定是否针对上述tee中的可信程序进行操作;

如果上述业务服务端返回需要针对上述tee中的可信程序进行操作的指令,则向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求。

在示出的一实施例中,上述方法还包括:

响应于上述业务服务端返回需要针对上述tee中的可信程序进行操作的指令,发起的针对上述可信程序进行上述操作的注册请求,以使上述业务服务端调用上述oem终端厂商服务端发起注册操作。

接收上述oem终端厂商服务端响应于上述注册请求返回的操作凭证,并将上述操作凭证返回至上述业务客户端。

本申请提出tee中可信程序的操作装置,应用于业务服务端;其中,上述业务服务端与oem终端厂商服务端对接;上述装置包括:

接收模块,接收安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求;其中,上述操作请求携带与所请求的操作对应的操作凭证;

调用模块,响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据;

发送模块,接收上述oem终端厂商服务端返回的操作数据,并将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

本申请提出tee中可信程序的操作装置,应用于oem终端厂商服务端;其中,上述oem终端厂商服务端与业务服务端对接;上述装置包括:

接收模块,接收上述业务服务端发起的第一调用请求;其中,上述第一调用请求为上述业务服务端在接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端搭载的tee中的可信程序的操作请求后发起的;其中,上述调用请求携带与所请求的操作对应的操作凭证;

生成模块,响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据;

返回模块,将上述操作数据返回上述业务服务端,以使上述业务服务端将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

本申请提出tee中可信程序的操作装置,应用于业务客户端;其中,上述业务客户端对应的业务服务端与oem终端厂商服务端对接;上述装置包括:

第一发起请求模块,向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,以使上述业务服务端响应于上述操作请求,向上述oem终端厂商服务端发起调用请求,生成针对上述可信程序的操作对应的操作数据;其中,上述操作请求携带与所请求的操作对应的操作凭证;

接收模块,接收上述业务服务端返回的上述操作数据;

第二发起请求模块,基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

由上述方案可知,在对ta进行操作时,由于上述业务服务端可以基于客户端发起的针对ta的相关操作请求调用上述oem服务端,以使上述oem服务端可以生成与上述操作对应的操作数据并通过上述业务服务端返回至上述业务客户端,以使tee可以基于上述操作数据对ta进行相关操作,因此,实现了业务服务商可以对ta进行相关操作。

在上述方案中,当终端设备中搭载的富应用被更新后,业务服务商可以及时更新上述终端设备搭载的ta,从而保证上述富应用可以正常执行安全性操作。

附图说明

图1为本申请示出的tee中可信程序的操作方法的方法流程图;

图2为本申请示出的tee中可信程序的操作方法的方法流程图;

图3为本申请示出的tee中可信程序的操作方法的方法流程图;

图4为本申请示出的一种针对终端设备搭载的ta进行安装操作的流程示意图;

图5为本申请示出的tee中可信程序的操作装置的结构图;

图6为本申请示出的tee中可信程序的操作装置的结构图;

图7为本申请示出的tee中可信程序的操作装置的结构图。

具体实施方式

富应用通常是指安装在终端搭载的富应用执行环境中,通过该终端执行部分业务逻辑的业务客户端程序。通过富应用业务客户端程序,用户可以享受客户端提供的服务。

例如,上述业务客户端可以是用于消费支付的客户端,用户可以通过该客户端进行转账、消费等服务。

在相关技术中,为了保证富应用执行过程的安全性,在终端中通常会搭载与上述富应用执行环境对应的tee。

其中,上述tee中通常会存在为各富应用分配的安全域。上述安全域中通常会搭载若干个与富应用对应的可信程序(以下简称ta)。通过各个ta可以完成富应用的相关安全操作,从而保证富应用执行安全性。

例如,上述富应用为搭载在终端中的用于支付的客户端(以下,检测支付客户端)。上述终端中还搭载了tee,该tee中搭载了与指纹验证服务相关的ta。当用户通过上述支付客户端发起一笔付款操作时,该支付客户端通常需要调用设备指纹采集器,采集当前用户的指纹特征。当采集到的上述指纹特征,与上述支付客户端预先获取的可信指纹特征匹配时,该支付客户端才会执行相关付款操作,从而保证付款操作的安全性。

在上述采集用户指纹特征的过程中,上述ta需要先对上述指纹采集器采集到的指纹特征进行签名,再签名后的指纹特征返回给上述支付客户端。上述支付客户端在接受到上述指纹特征后,将先验签,并在验签通过后,才认为上述采集的指纹特征是真实的指纹特征,并进行后续匹配操作。

目前,在otrp协议(opentrustprotocol,开放信任协议)中,为了保证ta的安全性,针对ta的安装、更新、删除等操作,均需要品牌厂商来配合完成。

例如,当上述终端为某品牌手机时,基于otrp协议,上述手机在出厂前,已被品牌厂商安装了tee,以及为上述tee搭载初始ta。当上述手机搭载的某客户端被更新后,上述某客户端对应的开发厂家通常会开发与更新后的该客户端对应的ta。当新的ta开发好后,上述开发厂家将请求上述手机的品牌厂商对该手机搭载的ta进行更新。当该手机对应的品牌厂商接收到更新ta的请求时,可以通过oem厂商服务端将携带上述ta更新文件的手机系统文件下发至上述手机中,从而使得手机在进行系统更新时完成对上述ta的更新。

由于终端生产厂家更新操作系统的间隔周期较长,这就可能导致安装在终端设备中的富应用被更新后,无法及时更新上述终端设备中搭载的与上述富应用对应的ta,从而导致富应用的相应操作缺乏安全性,无法正常提供服务。

基于此,本申请提供tee中可信程序的操作方法。该方法通过将富应用业务服务商维护的业务服务端与oem厂商维护的oem终端厂商服务端进行对接,使得上述业务服务端可以通过调用上述oem终端厂商服务端进行对可信程序的相关操作,从而使上述富应用业务服务商可以灵活对ta进行相关操作。

在上述情形下,当安装在终端设备中的富应用在被更新后,上述富应用业务服务商可以及时更新上述终端设备搭载的ta,从而保证上述富应用可以正常执行安全性操作。

在本申请中,一方面,上述方法的执行主体可以为业务服务端。其中,上述业务服务端与oem终端厂商服务端对接。具体地,上述业务服务端可以接收安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求。其中,上述操作请求携带与所请求的操作对应的操作凭证。

然后,上述业务服务端可以响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据。

最后,上述业务服务端可以接收上述oem终端厂商服务端返回的操作数据,并将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

另一方面,上述方法的执行主体可以oem终端厂商服务端。其中,上述oem终端厂商服务端与业务服务端对接。具体地,上述oem终端厂商服务端可以接收上述业务服务端发起的第一调用请求;其中,上述第一调用请求为上述业务服务端在接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端搭载的tee中的可信程序的操作请求后发起的。其中,上述调用请求携带与所请求的操作对应的操作凭证。

然后,上述oem终端厂商服务端可以响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据。

最后,上述oem终端厂商服务端可以将上述操作数据返回上述业务服务端,以使上述业务服务端将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

还一方面,上述方法的执行主体可以业务客户端。其中,上述业务客户端对应的业务服务端与oem终端厂商服务端对接。具体地,上述业务客户端可以向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,以使上述业务服务端响应于上述操作请求,向上述oem终端厂商服务端发起调用请求,生成针对上述可信程序的操作对应的操作数据。其中,上述操作请求携带与所请求的操作对应的操作凭证。

然后,上述业务客户端可以接收上述业务服务端返回的上述操作数据;

最后,上述业务客户端可以基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

以下结合具体实施例对本申请记载的技术方案进行说明。

请参见图1,图1为本申请示出的tee中可信程序的操作方法的方法流程图。该方法应用于业务服务端。其中,上述业务服务端与oem终端厂商服务端对接。如图1所示,该方法包括:

s101,接收安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求。其中,上述操作请求携带与所请求的操作对应的操作凭证。

s102,响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据;

s103,接收上述oem终端厂商服务端返回的操作数据,并将上述操作数据发送至上述业务客户端,以在上述tee中完成对上述可信程序的上述操作。

上述业务客户端,具体是指安装在终端设备搭载的富应用执行环境中的富应用客户端。该业务客户端通常有业务提供厂家负责更新操作。例如,支付宝客户端、淘宝客户端等。用户可以通过上述业务客户端可以享受相关服务。

上述业务客户端可以检测搭载该客户端的终端设备中的tee所搭载的ta信息是否需要被更新。如果是,上述业务客户端可以向业务服务端发送针对上述ta的操作请求。

上述业务服务端,具体是指为上述业务客户端提供业务支持的业务服务端。在上述业务服务端中,通常存储着与业务服务相关的数据。例如,当上述业务客户端为用于支付的客户端时,上述业务服务端可以存储支付数据。

上述业务服务端可以接收上述业务客户端发送的,针对搭载该客户端的终端所搭载的tee中的可信程序的操作请求。上述业务服务端在接收到上述操作请求后,可以向oem终端厂商服务端发送调用请求,以使上述oem终端厂商服务端可以响应于上述操作请求,生成响应的操作数据。当上述业务服务端接收到上述操作数据后,可以将上述操作数据返回至业务客户端,以由上述业务客户端与上述tee进行交互,实现对ta的相关操作。

上述tee,具体是指与搭载了业务客户端的执行环境对应的tee。上述tee中可以搭载若干ta,为上述业务客户端提供安全服务。上述tee,以及该环境中出厂搭载的ta可以是在终端设备出厂前,由终端厂商预先安装的。

上述ta,可以为上述业务客户端提供具体的安全服务。当业务客户端被更新时,上述ta通常也需要被更新,以保障业务客户端正常运作,从而保证业务执行的安全性。

上述oem终端厂商服务端(以下简称oem服务端),具体是指为终端设备研发厂商对应的服务端。上述oem服务端可以响应于业务服务端提出的对tee中的ta的相关操作请求,下发上述tee可以执行的操作数据,从而使上述业务服务端可以将上述操作数据返回至上述客户端,以由上述业务客户端与上述tee进行交互,实现对ta的相关操作。

例如,当上述终端为手机时,上述oem服务端可以是手机生产厂商对应的服务端。当上述ta需要被更新时,上述oem服务端可以响应于业务服务端发起的针对客户端针对ta的更新请求的调用请求,下发tee可以执行的操作数据,以使tee可以基于上述操作数据完成对ta的更新操作。

在实际应用中,在上述oem服务端中可以预先开发生成针对上述可信程序的操作对应的操作数据的执行逻辑,并保留接口供上述业务服务端调用。

当上述业务服务端接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求后,可以调用上述接口。上述oem服务端在接收到上述业务服务端的调用请求后,可以生成针对上述可信程序的操作对应的操作数据,并将上述操作数据返回至上述业务服务端。

上述业务服务端在接收到上述操作数据后,可以将上述操作数据发送至上述业务客户端。

上述业务客户端在接收到上述操作数据后,可以基于上述操作数据向上述终端设备搭载的tee发起针对ta的操作请求。上述tee在接收到该请求后,可以基于上述操作数据,对ta进行相关操作。

由上述方案可知,在对ta进行操作时,由于上述业务服务端可以基于客户端发起的针对ta的相关操作请求调用上述oem服务端,以使上述oem服务端可以生成与上述操作对应的操作数据并通过上述业务服务端返回至上述业务客户端,以使tee可以基于上述操作数据对ta进行相关操作,因此,实现了业务服务商可以对ta进行相关操作。

在上述方案中,当终端设备中搭载的富应用被更新后,业务服务商可以及时更新上述终端设备搭载的ta,从而保证上述富应用可以正常执行安全性操作。

与上述实施例相对应,在本申请还提出一种应用于oem终端厂商服务端的针对tee中可信程序的操作方法。

请参见图2,图2为本申请示出的tee中可信程序的操作方法的方法流程图。该方法应用于oem终端厂商服务端。其中,上述oem终端厂商服务端与业务服务端对接。如图2所示,该方法包括:

s201,接收上述业务服务端发起的第一调用请求;其中,上述第一调用请求为上述业务服务端在接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端搭载的tee中的可信程序的操作请求后发起的。其中,上述调用请求携带与所请求的操作对应的操作凭证。

s202,响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据;

s203,将上述操作数据返回上述业务服务端,以使上述业务服务端将上述操作数据发送至上述业务客户端,以在上述tee中完成对上述可信程序的操作。

与上述实施例相对应,在本申请还提出一种应用于业务客户端的针对tee中可信程序的操作方法。

请参见图3,图3为本申请示出的tee中可信程序的操作方法的方法流程图。该方法应用于业务客户端。其中,上述业务客户端对应的业务服务端与oem终端厂商服务端对接。如图3所示,该方法包括:

s301,向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,以使上述业务服务端响应于上述操作请求,向上述oem终端厂商服务端发起调用请求,生成针对上述可信程序的操作对应的操作数据;其中,上述操作请求携带与所请求的操作对应的操作凭证;

s302,接收上述业务服务端返回的上述操作数据;

s303,基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

以下结合对ta进行操作的场景,对本申请示出的实施例进行详细说明。

请参见图4,图4为本申请示出的一种针对终端设备搭载的ta进行安装操作的流程示意图。

如图4所示,所示业务客户端与上述业务服务端可以相互通信。上述业务服务端与上述oem服务端预先对接。

其中,上述业务客户端可以安装在终端设备搭载的安卓环境中。上述业务客户端可以获取上述终端设备搭载的tee所对应的状态信息。其中,上述状态信息可以包括,上述tee的版本信息、上述tee中安全域的分配信息、上述tee中搭载的ta信息等。

上述业务服务端,可以存储上述业务客户端正常运作所需要的ta信息。

其中,上述ta信息通常可以是响应于上述业务客户端开发厂家下发的指令进行维护的。当上述业务客户端被更新后,上述开发厂家通常会开发与更新后的业务客户端对应的ta,并向上述业务服务端下发更新上述业务客户端所需要的ta信息的指令。当上述业务服务端接收到上述更新指令后,可以对自身存储的上述业务客户端正常运作所需要的ta信息进行更新。

上述oem服务端,具体是上述终端设备的品牌厂商对应的服务端。上述oem服务端可以响应于上述业务服务端发送的调用请求(上述调用请求包括对ta的具体操作信息),生成对ta的相关操作数据,并将上述操作数据返回值上述业务服务端。上述业务服务端在接收到上述操作数据后,可以将上述操作数据发送至上述业务客户端,以在上述tee中完成对上述可信程序的相关操作。

为了确定是否需要对终端设备搭载的ta进行更新,上述业务客户端可以执行s402,定期获取上述终端设备搭载的tee所对应的状态信息。在实际应用中,可以将获取上述状态信息的操作数据加载在启动上述业务客户端的程序中。此时,每当用户启动上述业务客户端时,上述业务客户端均会查询上述tee对应的状态信息。

当上述业务客户端获取到上述状态信息后可以执行s404,将上述状态信息打包至确定是否需要对该终端搭载的ta进行操作的确认请求中。当上述确认请求构建完毕后,上述业务客户端可以将上述确认请求发送至上述业务服务端。

上述业务服务端接收到上述确认请求后,可以对该请求进行解析,以解析出上述状态信息。当上述业务服务端获取到上述状态信息后,可以执行s406,将上述状态信息中包括的ta信息与自身存储的ta信息进行比较,并基于比较结果确定应对该终端搭载的ta进行的操作。当上述业务服务端确定上述操作后,可以向上述业务客户端返回上述操作。

在本实施例中,假设上述业务服务端将上述状态信息中包括的ta信息与自身存储的ta信息进行比较后,发现该终端设备中需要进行安装ta的操作。以下以对终端设备中的ta进行安装为例进行说明。

当业务客户端接收到上述业务服务端返回的针对ta的安装操作后,上述业务客户端可以执行s408,向上述业务服务端发起针对上述安装操作的注册请求。

当上述业务服务端接收到上述注册请求后,可以执行s410,响应于上述注册请求,向上述oem服务端发起调用请求。其中,上述调用请求包括上述注册请求相关信息。

当上述oem服务端接收到上述调用请求后,上述oem服务端可以执行s412,通过解析上述调用请求,得到上述注册请求,并完成注册。当上述oem服务端对上述安装操作完成注册后,上述oem服务端可以生成与上述安装操作对应的操作凭证,并将上述操作凭证返回值上述业务服务端。

其中,上述操作凭证可以是上述业务客户端、上述业务服务端、上述oem服务端三者进行通信的唯一会话id。在一实施例中,上述会话id也可以由上述业务客户端或上述业务服务端生成,并经上述oem服务端完成注册后成为与安装操作对应的操作凭证。

当上述业务服务端接收到上述操作凭证后,可以将上述操作凭证返回值上述业务客户端。

至此,上述业务客户端、上述业务服务端、上述oem服务端三者已经完成对接。上述业务客户端可以在后续针对上述安装操作发起的其它请求中携带上述操作凭证,以使上述业务服务端与上述oem服务端可以基于上述操作凭证对上述请求作出响应。

上述业务客户端在接收到上述操作凭证后可以执行s414,开启针对ta的安装操作。在一实施例中,上述业务客户端可以将上述操作凭证添加至针对上述安装操作的开启安装操作请求中,并将上述开启安装操作请求发送至上述业务服务端。

上述业务服务端在接收到上述开启安装操作请求后,可以通过解析上述开启安装操作请求获取上述操作凭证。在获取上述操作凭证后,上述业务服务端可以基于上述操作凭证,确定下发上述操作凭证的oem服务端(在确定oem服务端的同时,也可以对上述操作凭证进行验证)。在确定oem服务端后,上述业务服务端可以将开启安装操作请求发送至上述oem服务端。在此,需要说明的是,业务服务端发送的开启安装操作请求可以是由上述业务客户端构造的,也可以是上述业务服务端基于上述上述业务客户端构造的开启安全请求重新构造的,在此不作限定。

上述oem服务端在接收到上述开启安全请求后,可以通过解析上述开启安装操作请求获取上述操作凭证。在获取上述操作凭证后,上述业务服务端可以基于上述操作凭证,可以对上述操作凭证进行验证,并在验证通过后开启针对ta的安装操作流程。上述oem服务端在开启上述安全操作时,需要获取安装上述ta的终端设备搭载的tee的状态信息,因此,上述oem服务端可以执行s416,构造获取上述状态信息的请求,通过上述业务服务端,发送至上述业务客户端。

当上述业务客户端接收到上述oem服务端发起的获取上述状态信息的请求后,可以向上述终端设备搭载的tee发起获取上述状态信息的相关请求。当上述tee接收到上述请求后,可以将tee的版本信息、tee中安全域的分配信息、tee搭载的ta信息等打包为上述状态信息返回至上述业务客户端。

在获取上述状态信息后,上述业务客户端可以通过上述业务服务端,将上述状态信息返回至上述oem服务端。

上述oem服务端在接收到上述状态信息后,可以对上述状态信息进行解析,以获取tee中安全域的分配信息。在获取上述tee中安全域的分配信息后,上述oem服务端可以执行s418,将确定上述终端设备搭载的tee中是否存在安装上述ta的安全域。

在一种情形中,如果基于上述分配信息确定上述终端设备中已具备上述安全域,则可以直接执行针对上述ta的安装操作。

在另一种情形中,如果基于上述分配信息确定上述终端设备中不具备上述安全域,上述oem服务端可以构造安装上述安全域的操作请求,并将该操作请求通过上述业务服务端发送至上述客户端。

当上述业务客户端接收到上述安装上述安全域的操作请求后,上述业务客户端可以向上述终端设备搭载的tee发起安装上述安全域的请求。上述tee在收到上述请求后,可以基于该请求生成对应的安全域,并在上述安全域生成完成后,将针对上述安全域的生成结果发送至上述业务客户端。

上述业务客户端在接收到上述安全域生成结果后,可以通过上述业务服务端返回至上述oem服务端。

上述oem服务端在接收到上述安全域生成结果后,可以基于上述生成结果确定上述终端设备中已经具备上述安全域。在确定上述终端设备中已经具备上述安全域后,可以继续执行安装操作。

由于通常被安装的ta的安装文件会被存储在上述业务服务端中,因此,在继续执行安装操作时,上述oem服务端可以执行s420,向上述业务服务端发起获取ta安装文件的请求。

上述业务服务端在接收到上述请求后,可以响应于该请求,将本地存储的ta的安装文件返回至上述oem服务端。在此步骤中,为了保证被安装ta的安全性与隐私性,上述业务服务端在接收到上述oem服务端发起的获取ta安装文件的请求后可以执行s422,对上述安装文件进行加密。其中,在对安装文件进行加密时,针对每次接收到上述oem服务端发起的获取ta安装文件的请求可以使用不重复的密码对上述安装文件进行加密,从而一方面,保证ta在安装过程中的安全性;另一方面,可以保证ta中包括的隐私信息不被泄露。

上述oem服务端在接收到上述安装文件后可以执行s424,基于上述安装文件,生成对应的操作数据。

在一实施例中,上述操作数据可以包括签名后的安装文件。此时,上述oem服务端在接收到上述安装文件后,可以对上述安装文件进行签名,以生成签名后的安装文件。

当上述签名后的安装文件生成完毕后,上述oem服务端可以基于上述签名后的安装文件构建操作数据,并将构建好的上述操作数据返回至上述业务服务端。

上述业务服务端在接收到上述操作数据后可以执行s426,将上述操作数据返回至上述业务客户端。

上述业务客户端在接收到上述操作数据后,可以基于上述操作数据向上述终端设备搭载的tee发起安装ta的请求。上述tee在接收到该请求后,可以解析该请求以获取针对上述ta对应的上述签名后的安装文件。在获取上述签名后的安装文件后,上述tee可以对上述签名进行验证,并在验证通过后,基于上述安装文件安装ta。当上述ta安装完毕后,上述tee可以将安装结果返回至上述业务客户端。

上述业务客户端在接收到上述安装结果后,可以通过上述业务服务端将上述安装结果返回至上述oem服务端。

在一种情形中,上述安装结果为加密数据,只有上述oem服务端可以对其进行解读。此时,上述oem服务端在接收到上述安装结果后,可解析上述安装结果,并生成上述业务服务端与上述业务客户端可以识别的结果数据。在生成上述结果数据后,上述oem服务端可以将上述结果数据返回上述业务服务端。上述业务服务端在收到上述结果数据后,也可以将上述结果数据返回至上述业务客户端。

至此,在终端设备搭载的tee中的一次ta安装已完成。

由上述方案可知,在对ta进行操作时,由于上述业务服务端可以基于客户端发起的针对ta的相关操作请求调用上述oem服务端,以使上述oem服务端可以生成与上述操作对应的操作数据并通过上述业务服务端返回至上述业务客户端,以使tee可以基于上述操作数据对ta进行相关操作,因此,实现了业务服务商可以对ta进行相关操作。

在上述方案中,当终端设备中搭载的富应用被更新后,业务服务商可以及时更新上述终端设备搭载的ta,从而保证上述富应用可以正常执行安全性操作。

此外,由于业务服务端可以针对ta的相关操作文件进行加密,因此,一方面,保证ta在安装过程中的安全性;另一方面,可以保证ta中包括的隐私信息不被泄露。

在实际应用中,上述业务服务端可能在同一时间段内与大批量的业务客户端进行通信以完成针对ta的相关操作。为了缓解上述业务服务端的工作压力,上述业务服务端在接收到上述oem服务端返回的操作数据后,可以将上述操作数据进行分片,并在形成分片数据后将上述分片数据进行远程缓存。

在一实施例中,上述业务服务端可以将上述分片数据的相关信息(其中,上述相关信息可以包括分片数据的片数,以及下载上述分片数据的地址)发送至上述业务客户端。在此步骤中,上述分片数据中的第一分片信息可以包括上述相关信息,此时,上述业务服务端可以将上述第一分片信息发送至上述业务客户端。

上述业务客户端在接收到上述分片数据的相关信息后,可以解析上述相关信息以获取上述分片数据的下载地址等信息。在获取到分片数据的下载地址后,上述业务客户端可以访问上述下载地址针对上述分片数据进行下载操作。

在另一实施例中,上述业务服务端可以将上述分片数据的片数信息发送至上述业务客户端。在此步骤中,上述分片数据中的第一分片信息可以包括上述片数信息,此时,上述业务服务端可以将上述第一分片信息发送至上述业务客户端。

上述业务客户端在接收到上述片数信息后,可以向上述业务服务端发送下载与上述片数信息对应的下载请求。上述业务服务端在接收到上述下载请求后,可以从远处缓存处将上述分片数据下载下来,并返回至上述业务客户端。上述业务客户端在接收到各分片信息后,可以在本地将各分片组合,形成完整的操作数据。

由于上述操作数据被分片远程存储,因此,一方面,可以减少上述业务客户端与上述业务服务端间的rpc通信压力;另一方面,一旦下载由于处于弱网环境或者公网抖动等导致下载中断,客户端进程被杀死等情况,就会导致全流程失败,基于分片缓存实现断点续传,可以大幅提升下载的效率。

本申请还提供tee中可信程序的操作装置。应用于oem终端厂商服务端;其中,上述业务服务端与oem终端厂商服务端对接。请参见图5,图5为本申请示出的tee中可信程序的操作装置的结构图。

如图5所示,上述装置500可以包括:

接收模块510,接收安装在终端设备的操作系统中的业务客户端发送的,针对上述终端设备搭载的tee中的可信程序对应的操作请求;其中,上述操作请求携带与所请求的操作对应的操作凭证;

调用模块520,响应于上述操作请求,调用与上述tee所对应的oem终端厂商服务端,生成针对上述可信程序的操作对应的操作数据;

发送模块530,接收上述oem终端厂商服务端返回的操作数据,并将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述调用模块520还包括:

响应于业务客户端发起的针对上述可信程序进行上述操作的注册请求,调用上述oem终端厂商服务端发起注册操作;

接收上述oem终端厂商服务端响应于上述注册请求返回的操作凭证,并将上述操作凭证返回至上述业务客户端。

在示出的一实施例中,上述操作请求为与可信程序对应的安装操作请求;上述调用模块520还包括:

响应于上述安装操作请求,向上述oem终端厂商服务端发起调用请求;

接收上述oem终端厂商服务端响应于上述调用请求,返回的获取与上述可信程序对应的安装文件的获取请求;

响应于上述获取请求,将与上述可信程序对应的安装文件发送至上述oem终端厂商服务端,以使上述oem终端厂商服务端基于上述安装文件生成针对上述可信程序的操作数据。

在示出的一实施例中,上述操作数据被分片远程缓存;上述发送模块530包括:

向上述业务客户端发送上述操作数据中的第一分片信息,以使上述业务客户的可以基于上述第一分片信息完成针对上述业务数据的下载;其中,上述第一分片信息包括上述操作数据的下载地址。

在示出的一实施例中,上述装置500还包括:

响应于上述获取请求,对与上述可信程序对应的安装文件进行加密;

将加密后的上述安装文件发送至上述oem终端厂商服务端。

本申请还提供tee中可信程序的操作装置。应用于oem终端厂商服务端;其中,上述oem终端厂商服务端与业务服务端对接。请参见图6,图6为本申请示出的tee中可信程序的操作装置的结构图。

如图6所示,上述装置600可以包括:

接收模块610,接收上述业务服务端发起的第一调用请求;其中,上述第一调用请求为上述业务服务端在接收到安装在终端设备的操作系统中的业务客户端发送的,针对上述终端搭载的tee中的可信程序的操作请求后发起的;其中,上述调用请求携带与所请求的操作对应的操作凭证;

生成模块620,响应于上述第一调用请求,生成针对上述可信程序的操作对应的操作数据;

返回模块630,将上述操作数据返回上述业务服务端,以使上述业务服务端将上述操作数据发送至上述业务客户端,以使上述业务客户端基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述接收模块610还包括:

接收上述业务服务端发起的第二调用请求;其中,上述第二调用请求为上述业务服务端在接收到上述业务客户端发起的针对上述可信程序进行上述操作的注册请求后发起的;

响应于上述第二调用请求,生成与所请求的操作对应的操作凭证;

将上述操作凭证返回至上述业务服务端。

在示出的一实施例中,上述操作请求为与可信程序对应的安装操作请求;上述生成模块620还包括:

响应于上述第一调用请求,生成获取与上述可信程序对应的安装文件的获取请求,并将上述获取请求返回至上述业务服务端;

接收上述业务服务端响应于上述获取请求发送的与上述可信程序对应的安装文件;

基于上述安装文件生成针对上述可信程序的操作数据。

在示出的一实施例中,上述安装文件为加密文件。

在示出的一实施例中,上述装置600还包括:

响应于上述第一调用请求,发起获取上述tee状态信息的请求,并通过上述业务服务端发送至上述业务客户端;

接收上述业务服务端返回的,上述业务客户端响应于上述获取上述tee状态信息的请求,返回至上述业务服务端的上述tee状态信息;

基于上述tee状态信息确定是否在上述tee中安装安全域;

如果是,则发起安装上述安全域的操作请求。

本申请还提供tee中可信程序的操作装置。应用于业务客户端;其中,上述业务客户端对应的业务服务端与oem终端厂商服务端对接。请参见图7,图7为本申请示出的tee中可信程序的操作装置的结构图。

如图7所示,上述装置700可以包括:

第一发起请求模块710,向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求,以使上述业务服务端响应于上述操作请求,向上述oem终端厂商服务端发起调用请求,生成针对上述可信程序的操作对应的操作数据;其中,上述操作请求携带与所请求的操作对应的操作凭证;

接收模块720,接收上述业务服务端返回的上述操作数据;

第二发起请求模块730,基于上述操作数据向上述tee发起针对上述可信程序的操作请求,完成对上述可信程序的上述操作。

在示出的一实施例中,上述第一发起请求模块710还包括:

获取上述tee对应的状态信息,并将获取的上述状态信息发送至上述业务服务端,以使上述业务服务端基于上述状态信息确定是否针对上述tee中的可信程序进行操作;

如果上述业务服务端返回需要针对上述tee中的可信程序进行操作的指令,则向上述业务服务端发起针对上述终端设备搭载的tee中的可信程序对应的操作请求。

在示出的一实施例中,上述装置700还包括:

响应于上述业务服务端返回需要针对上述tee中的可信程序进行操作的指令,发起的针对上述可信程序进行上述操作的注册请求,以使上述业务服务端调用上述oem终端厂商服务端发起注册操作。

接收上述oem终端厂商服务端响应于上述注册请求返回的操作凭证,并将上述操作凭证返回至上述业务客户端。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本说明书中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。

本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。上述处理及逻辑流程还可以由专用逻辑电路—例如fpga(现场可编程门阵列)或asic(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。

适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏操纵台、全球定位系统(gps)接收机、或例如通用串行总线(usb)闪存驱动器的便携式存储设备,仅举几例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如eprom、eeprom和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及cdrom和dvd-rom盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上上述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1