CN114021141A - 一种电子设备、可信应用调用方法、装置、设备及介质 - Google Patents

一种电子设备、可信应用调用方法、装置、设备及介质 Download PDF

Info

Publication number
CN114021141A
CN114021141A CN202111275919.8A CN202111275919A CN114021141A CN 114021141 A CN114021141 A CN 114021141A CN 202111275919 A CN202111275919 A CN 202111275919A CN 114021141 A CN114021141 A CN 114021141A
Authority
CN
China
Prior art keywords
trusted application
identification information
native
trusted
bytecode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111275919.8A
Other languages
English (en)
Inventor
邹奋
陈成钱
李定洲
王鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN202111275919.8A priority Critical patent/CN114021141A/zh
Publication of CN114021141A publication Critical patent/CN114021141A/zh
Priority to PCT/CN2022/112599 priority patent/WO2023071423A1/zh
Priority to TW111133829A priority patent/TWI793053B/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security

Abstract

本申请公开了一种电子设备、可信应用调用方法、装置、设备及介质,用于降低可信应用的开发周期以及开发成本。由于本申请可信应用开发平台联结多个可信执行环境操作系统分别对应的原生可信应用,基于该可信应用开发平台,字节码可信应用可以适用于任一TEE OS,针对不同的TEE OS硬件平台,只需要为一个应用开发一个对应的字节码可信应用即可,相比相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用而言,本申请可以降低可信应用的开发周期及开发成本;同时,本申请开发的可信应用开发平台及字节码可信应用,可以适用于不同的TEE OS的电子设备(终端),从而可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。

Description

一种电子设备、可信应用调用方法、装置、设备及介质
技术领域
本申请涉及可信应用调用技术领域,尤其涉及一种电子设备、可信应用调用方法、装置、设备及介质。
背景技术
移动通信技术的发展带来了移动终端技术的快速发展,现代的移动终端设备提供了强大而灵活的普通执行环境(Rich Execution Environment,REE),但同时也导致设备容易受到安全威胁。可信执行环境(Trusted Execution Environment,TEE)是为了解决当前移动终端设备存在的安全风险而提出的技术方案。TEE和REE平行运行于同一个设备上,TEE能够保证在可信的环境中进行敏感数据的存储、处理和保护,并为授权的安全软件(可信软件)提供了安全的执行环境,通过执行保护、保密、完整和数据访问权限实现了端到端的安全。其中,可信应用(Trusted Application,TA)运行于TEE上,客户端应用(ClientApplication,CA)运行于REE上,CA通过调用TA,从而使用TEE及TA提供的安全功能。
传统的TA一般是基于可信执行环境操作系统(TEE OS)上运行的机器码程序。针对同一应用,通常需要为华为iTrustee、高通QSEE等不同的TEE OS硬件平台开发不同版本的可信应用,以适应不同的TEE OS硬件平台的使用需求。
相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用的方式,存在可信应用开发周期较长,开发成本较高的问题。
发明内容
本申请提供了一种电子设备、可信应用调用方法、装置、设备及介质,用于降低可信应用的开发周期以及开发成本。
第一方面,本申请提供了一种电子设备,所述电子设备包括:客户端应用CA和可信应用开发平台;
所述CA,用于发起对所述可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
所述可信应用开发平台,用于接收所述第一访问请求,根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
所述第一标识信息对应的原生可信应用,用于接收所述第一访问请求,并判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向所述CA返回确认信息;
所述CA,还用于接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送调用命令;
所述第一标识信息对应的原生可信应用,还用于将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述电子设备还包括:
创建模块,用于基于支持跨平台功能的字节码技术,创建所述可信应用开发平台,其中所述可信应用开发平台联结至少两个可信执行环境操作系统分别对应的原生可信应用。
在一种可能的实施方式中,所述第一标识信息对应的原生可信应用,还用于若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;
所述CA,还用于向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
所述第一标识信息对应的原生可信应用,还用于根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;
所述CA,还用于接收到所述返回信息后,发起第二访问请求。
在一种可能的实施方式中,所述电子设备还包括:可信应用管理平台;
所述CA,还用于向所述可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
所述可信应用管理平台,用于接收所述安装请求,根据所述安装请求,组装包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文;并将所述OTRP报文发送给所述CA;
所述CA,具体用于接收所述OTRP报文,将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
第二方面,本申请还提供了一种可信应用调用方法,所述方法应用于客户端应用CA,所述方法包括:
发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息之后,所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令之前,所述方法还包括:
向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;
所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令包括:
将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
第三方面,本申请提供了一种可信应用调用方法,所述方法应用于原生可信应用,所述方法包括:
接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
第四方面,本申请提供了一种可信应用调用装置,该装置应用于客户端应用CA,该装置包括:
发起模块,用于发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
第一接收模块,用于接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
发送命令模块,用于向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述装置还包括:
发送安装指令模块,用于若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
所述发起模块,还用于接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述发送安装指令模块,还用于向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
第五方面,本申请还提供了一种可信应用调用装置,该装置应用于原生可信应用,该装置包括:
第二接收模块,用于接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断模块,用于判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
第三接收模块,用于接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
转交模块,用于将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述装置还包括:
提示模块,用于若判断所述第一标识信息对应的原生可信应用没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
安装模块,用于接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
第六方面,本申请提供了一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述任一所述可信应用调用方法的步骤。
第七方面,本申请提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一所述可信应用调用方法的步骤。
由于本申请CA发起第一访问请求后,可信应用开发平台可以从可信应用开发平台联结的至少两个(多个)TEE OS分别对应的原生可信应用中,确定第一访问请求携带的第一标识信息对应的原生可信应用;第一标识信息对应的原生可信应用在判断自身安装有第一访问请求中携带的第二标识信息的字节码可信应用后,向CA返回确认信息,CA在接收到该确认信息后,可以向第一标识信息对应的原生可信应用发送调用命令;第一标识信息对应的原生可信应用可以将从CA处接收到的调用命令转交给第二标识信息的字节码可信应用,实现对第二标识信息的字节码可信应用的准确调用。由于本申请可信应用开发平台联结多个可信执行环境操作系统分别对应的原生可信应用,基于该可信应用开发平台,字节码可信应用可以适用于任一TEE OS,针对不同的TEE OS硬件平台,只需要为一个应用开发一个对应的字节码可信应用即可,相比相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用而言,本申请可以降低可信应用的开发周期及开发成本;同时,本申请开发的可信应用开发平台及字节码可信应用,可以适用于不同的TEE OS的电子设备(终端),从而可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。
附图说明
为了更清楚地说明本申请实施例或相关技术中的实施方式,下面将对实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1示出了一些实施例提供的第一种电子设备结构示意图;
图2示出了一些实施例提供的第二种电子设备结构示意图;
图3示出了一些实施例提供的第一种可信应用调用过程示意图;
图4示出了一些实施例提供的第二种可信应用调用过程示意图;
图5示出了一些实施例提供的第三种可信应用调用过程示意图;
图6示出了一些实施例提供的第一种可信应用调用装置示意图;
图7示出了一些实施例提供的第一种电子设备结构示意图;
图8示出了一些实施例提供的第四种可信应用调用过程示意图;
图9示出了一些实施例提供的第二种可信应用调用装置示意图;
图10示出了一些实施例提供的第二种电子设备结构示意图。
具体实施方式
为了降低可信应用的开发周期以及开发成本,本申请提供了一种电子设备、可信应用调用方法、装置、设备及介质。
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
术语“模块”是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
实施例1:
图1示出了一些实施例提供的第一种电子设备结构示意图,该电子设备包括:客户端应用(Client Application,CA)11和可信应用开发平台12;
所述CA11,用于发起对所述可信应用开发平台12联结的与所述CA11对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
所述可信应用开发平台12,用于接收所述第一访问请求,根据所述第一标识信息,从所述可信应用开发平台12联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
所述第一标识信息对应的原生可信应用13,用于接收所述第一访问请求,并判断自身是否安装有所述第二标识信息的BTA14,若是,向所述CA11返回确认信息;
所述CA11,还用于接收到所述确认信息后,向所述第一标识信息对应的原生可信应用13发送调用命令;
所述第一标识信息对应的原生可信应用13,还用于将从所述CA11处接收到的所述调用命令转交给所述第二标识信息的BTA14。
在一种可能的实施方式中,本申请的电子设备可以是PC、移动终端等设备,也可以是服务器等。示例性的,电子设备中的可信执行环境操作系统(TEE OS)可以为华为iTrustee、高通QSEE等任一TEE OS。
在一种可能的实施方式中,针对每个TEE OS,可以创建该TEE OS对应的可信应用(为方便描述,称为原生可信应用)。其中,创建TEE OS对应的原生可信应用可以采用现有技术,在此不再赘述。在一种可能的实施方式中,为了针对任一应用,开发出可适用于多个TEEOS,可跨不同TEE OS硬件平台使用的可信应用,从而降低可信应用的开发周期以及开发成本,电子设备中还可以包括创建模块,该创建模块可以基于支持跨平台功能的字节码技术(如WebAssembly字节码技术等),创建联结多个(至少两个)TEE OS分别对应的原生可信应用(为方便描述,称为Native TA)的可信应用开发平台12(可信应用开发框架)。其中,WebAssembly是由主流浏览器厂商组成的万维网联盟(World Wide Web Consortium,W3C)社区团体制定的一个新的规范,其定义了一个可移植、体积小、加载快并且兼容万维网(Web)的全新格式。
图2示出了一些实施例提供的第二种电子设备结构示意图,参阅图2,本申请可以基于支持跨平台功能的字节码技术(如WebAssembly字节码技术等),将多个TEE OS分别对应的Native TA构建为一个可信应用开发平台12,该可信应用开发平台12可以向上提供统一的开发接口,可信应用开发者可以无需再关注TEE OS硬件平台的具体版本,只需基于该可信应用开发平台12,针对例如建设银行、农业银行等任一应用,开发该应用对应的可信应用(为方便描述,称为字节码可信应用)即可,该字节码可信应用(为方便描述,称为Bytecode Trusted Application,BTA)是基于可信应用开发平台12开发的可适用于不同的TEE OS,可跨不同的TEE OS硬件平台使用的可信应用。本申请针对每个应用,可以只开发一个对应的可信应用,相比相关技术中,针对每个应用,需要为不同的TEE OS硬件平台分别开发一个可信应用,需要为同一个应用开发多个不同版本的可信应用而言,本申请可以缩短可信应用的开发周期、降低开发成本,同时还可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。
在一种可能的实施方式中,当需要使用可信执行环境(Trusted ExecutionEnvironment,TEE)提供的安全功能时,电子设备中的客户端应用(CA)11可以发起对可信应用开发平台12中包含的与该CA11对应的TEE OS的原生可信应用的访问请求(为方便描述,称为第一访问请求)。示例性的,假设电子设备的TEE OS是华为iTrustee,该电子设备中的CA11可以发起对可信应用开发平台12中包含的华为iTrustee TEE OS对应的原生可信应用的第一访问请求。在一种可能的实施方式中,第一访问请求中可以携带电子设备的标识信息(为方便描述,称为第一标识信息)以及待调用的任一应用的字节码可信应用的标识信息(为方便描述,称为第二标识信息)。其中,第一标识信息和第二标识信息可以根据需求灵活设置,本申请对此不做具体限定。示例性的,电子设备的第一标识信息可以为电子设备的型号、电子设备的品牌等标识信息。在一种可能的实施方式中,第一标识信息中除了包含电子设备的型号、电子设备的品牌等标识信息之外,还可以包含电子设备适用的原生可信应用的名称、原生可信应用版本号等原生可信应用的标识信息。字节码可信应用的第二标识信息可以为字节码可信应用的名称、供应商名称等标识信息。
CA11发起第一访问请求,可信应用开发平台12接收到第一访问请求后,可信应用开发平台12可以根据第一访问请求中携带的电子设备的第一标识信息,从可信应用开发平台12自身联结的至少两个(多个)TEE OS分别对应的Native TA中,确定电子设备的第一标识信息对应的Native TA,并将第一访问请求发送给第一标识信息对应的Native TA。示例性的,如果电子设备的品牌为华为,电子设备的第一标识信息可以包括华为、华为品牌的电子设备(终端)适用的原生可信应用的名称以及原生可信应用版本号等,则可信应用开发平台12可以将华为iTrustee TEE OS对应的原生可信应用确定为第一标识信息对应的原生可信应用。
在一种可能的实施方式中,可以将多个(至少两个)TEE OS分别对应的原生可信应用直接集成在可信应用开发平台12中,可信应用开发平台12中包含(联结)多个TEE OS分别对应的原生可信应用。在一种可能的实施方式中,考虑到如果将多个TEE OS分别对应的原生可信应用均集成在可信应用开发平台12中时,可信应用开发平台12占用的空间可能较大。为了节省空间,可信应用开发平台12中可以先只包含(联结)多个TEE OS分别对应的原生可信应用的标识信息,可信应用开发平台12根据电子设备的标识信息与原生可信应用的标识信息的对应关系,确定了电子设备的第一标识信息对应的原生可信应用的标识信息后,可以通过空中下载技术(OTA),从与可信应用开发平台12联结的后端应用平台中,将第一标识信息对应的原生可信应用下载并安装到可信应用开发平台12中。在一种可能的实施方式中,可信应用开发平台12中包含了第一标识信息对应的原生可信应用后,可以将第一访问请求发送给第一标识信息对应的原生可信应用(Native TA)。
在一种可能的实施方式中,由于可以将字节码可信应用(BTA)安装在Native TA的数据区等设定位置处,第一标识信息的Native TA13在接收到第一访问请求后,可以判断第一标识信息的Native TA13自身是否安装有第二标识信息的BTA。如果第一标识信息的Native TA13自身安装有第二标识信息的BTA,可以认为可以继而对第二标识信息的BTA发送调用命令等来实现对BTA的调用。在一种可能的实施方式中,为了使CA11可以获知可以继而发送调用命令等,第一标识信息的Native TA13可以向CA11返回确认信息。
在一种可能的实施方式中,CA11在接收到第一标识信息的Native TA13返回的确认信息后,可以向第一标识信息的Native TA13发送调用命令。第一标识信息的NativeTA13在接收到CA11发送的调用命令后,可以将该调用命令转交(如透传等)给第二标识信息的BTA。第二标识信息的BTA在接收到该调用命令后,可以根据该调用命令,执行对应的操作。其中,调用命令可以根据需求灵活设置,本申请对此不做具体限定。
由于本申请可信应用开发平台12联结多个可信执行环境操作系统分别对应的原生可信应用,基于该可信应用开发平台12,字节码可信应用可以适用于任一TEE OS,针对不同的TEE OS硬件平台,只需要为一个应用开发一个对应的字节码可信应用即可,相比相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用而言,本申请可以降低可信应用的开发周期及开发成本;同时,本申请开发的可信应用开发平台12及字节码可信应用,可以适用于不同的TEE OS的电子设备(终端),从而可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。
实施例2:
为了准确的安装第二标识信息对应的字节码可信应用,在上述实施例的基础上,在本申请实施例中,所述第一标识信息对应的原生可信应用13,还用于若判断自身没有安装所述第二标识信息的BTA14,则向所述CA11返回尚未安装的提示信息;
所述CA11,还用于向所述第一标识信息对应的原生可信应用13发送安装所述第二标识信息的BTA14的安装指令;
所述第一标识信息对应的原生可信应用13,还用于根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的BTA14安装在自身设定位置处;并在安装成功后,向所述CA11发送安装成功的返回信息;
所述CA11,还用于接收到所述返回信息后,发起第二访问请求。
在一种可能的实施方式中,第一标识信息的Native TA13如果判断自身没有安装第二标识信息的BTA,可以向CA11返回尚未安装的提示信息。其中,提示信息可以根据需求灵活设置,本申请对此不做具体限定。示例性的,第一标识信息的Native TA13向CA11返回的提示信息可以是预先设定的一个状态值(STATUS_WAIT_TASM_TA)。
参阅图2,在一种可能的实施方式中,电子设备中还可以包括可信应用管理平台(Trusted Application Management,TAM),TAM(应用商场)可以对多个BTA进行管理,TAM中可以包含多个BTA的安装包、应用签名、服务商公钥证书等安装信息。CA11在接收到提示信息后,可以向TAM发送安装第二标识信息的BTA的安装请求。TAM接收到安装第二标识信息的BTA的安装请求后,可以根据该安装请求,组装包含第二标识信息的BTA的安装包、应用签名、服务商公钥证书等安装信息的开放信任协议(Open Trust Protocol,OTRP)报文;并可以将该OTRP报文发送给CA11。
CA11接收到TAM发送的OTRP报文后,可以将该OTRP报文以及安装第二标识信息的字节码可信应用的安装指令发送给第一标识信息的Native TA13。在一种可能的实施方式中,Native TA中可以包含OTRP报文处理模块。第一标识信息的Native TA13接收到该OTRP报文及安装指令后,第一标识信息的Native TA13中的OTRP报文处理模块可以基于开放信任协议OTRP,对OTRP报文进行解析,并基于OTRP,将第二标识信息的BTA14安装在自身设定位置处。其中,设定位置可以根据需求灵活设置,本申请对此不做具体限定。示例性的,可以将BTA安装在Native TA内的数据区等设定位置处,BTA可以基于WebAssembly虚拟机运行于Native TA之内。
第一标识信息的Native TA13在成功安装第二标识信息的BTA14后,可以向CA11发送安装成功的返回信息。CA11接收到第一标识信息的Native TA13发送的返回信息后,可以再次发起访问请求(为方便描述,称为第二访问请求)。在一种可能的实施方式中,CA11可以通过重新发送命令(CMD_OPEN_WASM_TA_SESSION)发起第二访问请求。其中,可信应用开发平台12、第一标识信息对应的原生可信应用13等对第二访问请求的处理过程与对第一访问请求的处理过程类似,在此不再赘述。
相关技术中,应用开发商通常需要为不同TEE OS硬件平台,开发不同版本的可信应用,且通常只有TEE OS硬件平台的设备厂商才拥有对可信应用的管理权限(TEE所有权),导致应用开发商需要与不同的设备厂商进行技术沟通,才能为不同的TEE OS对应的可信应用进行签名分发,使得可信应用可以在对应的TEE OS上运行。本申请只需在创建设备厂商的TEE OS对应的Native TA时,与设备厂商进行技术沟通,而基于可信应用开发平台12开发的BTA可以无需再与设备厂商进行技术沟通。本申请可以在应用开发商没有TEE所有权的情况下,基于TAM,对原生可信应用中承担实际业务的BTA进行签名分发及管理,使得BTA可以在TEE OS上运行。
为方便理解,下面通过一个具体实施例对本申请提供的可信应用调用过程进行举例说明。图3示出了一些实施例提供的第一种可信应用调用过程示意图,图4示出了一些实施例提供的第二种可信应用调用过程示意图,参阅图3和图4,该过程包括以下步骤:
S301:CA11发起对可信应用开发平台12联结的与CA11对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息。
其中,参阅图2及图4,在一种可能的实施方式中,CA11可以通过调用打开会话函数(TEEC_OpenSession)实现发起第一访问请求。CA11可以基于TEEC应用程序编程接口(Application Programming Interface,API)发起第一访问请求,电子设备中的TEE OS可以接收CA11发起的第一访问信息,并将该第一访问信息发送给可信应用开发平台12。
S302:可信应用开发平台12接收第一访问请求,根据第一标识信息,从可信应用开发平台12联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定第一标识信息对应的原生可信应用,并将第一访问请求发送给第一标识信息对应的原生可信应用。
S303:第一标识信息对应的原生可信应用13接收第一访问请求,并判断自身是否安装有第二标识信息的BTA14,若是,则进行S304;若否,进行S307。
参阅图2,示例性的,第一标识信息对应的原生可信应用13中可以安装有BTA1、BTA2、BTA3等多个不同的BTA。
S304:第一标识信息对应的原生可信应用13向CA11返回确认信息。
S305:CA11接收到确认信息后,向第一标识信息对应的原生可信应用13发送调用命令。
S306:第一标识信息对应的原生可信应用13将从CA11处接收到的调用命令转交给第二标识信息的BTA14。
S307:第一标识信息对应的原生可信应用13向CA11返回尚未安装的提示信息。
其中,参阅图4,第一标识信息对应的Native TA13向CA11返回的提示信息可以是预先设定的一个状态值(STATUS_WAIT_TASM_TA)。
S308:CA11向TAM发送安装第二标识信息的BTA14的安装请求。
S309:可信应用管理平台接收安装请求,并根据该安装请求,组装包含第二标识信息的BTA14的安装信息的开放信任协议报文;并将该开发信任协议报文发送给CA11。
S310:CA11接收开发信任协议报文,将开发信任协议报文及安装第二标识信息的字节码可信应用的安装指令发送给第一标识信息对应的原生可信应用13。
S311:第一标识信息对应的原生可信应用13接收安装指令及开发信任协议报文,并根据安装指令,基于开放信任协议,将第二标识信息的BTA14安装在自身设定位置处;并在安装成功后,向CA11发送安装成功的返回信息。
S312:CA11接收到返回信息后,发起第二访问请求。其中第二访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息。
S313:可信应用开发平台12接收第二访问请求,根据第一标识信息,从可信应用开发平台12联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定第一标识信息对应的原生可信应用,并将第二访问请求发送给第一标识信息对应的原生可信应用。
S314:第一标识信息对应的原生可信应用13判断自身是否安装有第二标识信息的BTA14,若是,则进行S304。
实施例3:
基于相同的技术构思,本申请提供了一种可信应用调用方法,该方法应用于客户端应用(CA),图5示出了一些实施例提供的第三种可信应用调用过程示意图,如图5所示,该过程包括以下步骤:
S501:发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用。
S502:接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的。
S503:向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息之后,所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令之前,所述方法还包括:
向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;
所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令包括:
将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
由于本申请CA发起第一访问请求后,可信应用开发平台可以从可信应用开发平台联结的至少两个(多个)TEE OS分别对应的原生可信应用中,确定第一访问请求携带的电子设备的第一标识信息对应的原生可信应用;第一标识信息对应的原生可信应用在判断自身安装有第一访问请求中携带的第二标识信息的字节码可信应用后,向CA返回确认信息,CA在接收到该确认信息后,可以向第一标识信息对应的原生可信应用发送调用命令;第一标识信息对应的原生可信应用可以将从CA处接收到的调用命令转交给第二标识信息的字节码可信应用,实现对第二标识信息的字节码可信应用的准确调用。由于本申请可信应用开发平台中联结多个可信执行环境操作系统分别对应的原生可信应用,基于该可信应用开发平台,字节码可信应用可以适用于任一TEE OS,针对不同的TEE OS硬件平台,只需要为一个应用开发一个对应的字节码可信应用即可,相比相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用而言,本申请可以降低可信应用的开发周期及开发成本;同时,本申请开发的可信应用开发平台及字节码可信应用,可以适用于不同的TEEOS的电子设备(终端),从而可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。
实施例4:
基于相同的技术构思,本申请提供了一种可信应用调用装置,该装置应用于客户端应用(CA),图6示出了一些实施例提供的第一种可信应用调用装置示意图,如图6所示,该装置包括:
发起模块61,用于发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
第一接收模块62,用于接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
发送命令模块63,用于向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述装置还包括:
发送安装指令模块,用于若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
所述发起模块61,还用于接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述发送安装指令模块,还用于向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
实施例5:
基于相同的技术构思,本申请还提供了一种电子设备,图7示出了一些实施例提供的第一种电子设备结构示意图,如图7所示,包括:处理器71、通信接口72、存储器73和通信总线74,其中,处理器71,通信接口72,存储器73通过通信总线74完成相互间的通信;
所述存储器73中存储有计算机程序,当所述程序被所述处理器71执行时,使得所述处理器71执行如下步骤:
发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述处理器71,还用于若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述处理器71,还用于向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
由于上述电子设备解决问题的原理与可信应用调用方法相似,因此上述电子设备的实施可以参见方法的实施,重复之处不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口72用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例6:
基于相同的技术构思,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:
发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
在一种可能的实施方式中,所述接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息之后,所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令之前,所述方法还包括:
向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;
所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令包括:
将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
由于上述计算机可读存储介质解决问题的原理与可信应用调用方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施,重复之处不再赘述。
上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(MO)等、光学存储器如CD、DVD、BD、HVD等、以及半导体存储器如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD)等。
实施例7:
基于相同的技术构思,本申请提供了一种可信应用调用方法,该方法应用于原生可信应用,图8示出了一些实施例提供的第四种可信应用调用过程示意图,如图8所示,该过程包括以下步骤:
S801:接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息。
S802:判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息。
S803:接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令。
S804:将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
由于本申请CA发起第一访问请求后,可信应用开发平台可以从可信应用开发平台联结的至少两个(多个)TEE OS分别对应的原生可信应用中,确定第一访问请求携带的第一标识信息对应的原生可信应用;第一标识信息对应的原生可信应用在判断自身安装有第一访问请求中携带的第二标识信息的字节码可信应用后,向CA返回确认信息,CA在接收到该确认信息后,可以向第一标识信息对应的原生可信应用发送调用命令;第一标识信息对应的原生可信应用可以将从CA处接收到的调用命令转交给第二标识信息的字节码可信应用,实现对第二标识信息的字节码可信应用的准确调用。由于本申请可信应用开发平台联结多个可信执行环境操作系统分别对应的原生可信应用,基于该可信应用开发平台,字节码可信应用可以适用于任一TEE OS,针对不同的TEE OS硬件平台,只需要为一个应用开发一个对应的字节码可信应用即可,相比相关技术中,针对同一应用,需要为不同的TEE OS硬件平台开发不同版本的可信应用而言,本申请可以降低可信应用的开发周期及开发成本;同时,本申请开发的可信应用开发平台及字节码可信应用,可以适用于不同的TEE OS的电子设备(终端),从而可以达到“一次开发,多终端部署”的目的,实现应用的快速部署推广。
实施例8:
基于相同的技术构思,本申请提供了一种可信应用调用装置,该装置应用于原生可信应用(电子设备的第一标识信息对应的原生可信应用),图9示出了一些实施例提供的第二种可信应用调用装置示意图,如图9所示,该装置包括:
第二接收模块91,用于接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断模块92,用于判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
第三接收模块93,用于接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
转交模块94,用于将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述装置还包括:
提示模块,用于若判断所述第一标识信息对应的原生可信应用没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
安装模块,用于接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
实施例9:
基于相同的技术构思,本申请还提供了一种电子设备,图10示出了一些实施例提供的第二种电子设备结构示意图,如图10所示,包括:处理器101、通信接口102、存储器103和通信总线104,其中,处理器101,通信接口102,存储器103通过通信总线104完成相互间的通信;
所述存储器103中存储有计算机程序,当所述程序被所述处理器101执行时,使得所述处理器101执行如下步骤:
接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述处理器101,还用于若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
由于上述电子设备解决问题的原理与可信应用调用方法相似,因此上述电子设备的实施可以参见方法的实施,重复之处不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口102用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例10:
基于相同的技术构思,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:
接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
在一种可能的实施方式中,所述方法还包括:
若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
由于上述计算机可读存储介质解决问题的原理与可信应用调用方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施,重复之处不再赘述。
上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(MO)等、光学存储器如CD、DVD、BD、HVD等、以及半导体存储器如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD)等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种电子设备,其特征在于,所述电子设备包括:客户端应用CA和可信应用开发平台;
所述CA,用于发起对所述可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
所述可信应用开发平台,用于接收所述第一访问请求,根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
所述第一标识信息对应的原生可信应用,用于接收所述第一访问请求,并判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向所述CA返回确认信息;
所述CA,还用于接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送调用命令;
所述第一标识信息对应的原生可信应用,还用于将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
2.根据权利要求1所述的电子设备,其特征在于,所述电子设备还包括:
创建模块,用于基于支持跨平台功能的字节码技术,创建所述可信应用开发平台,其中所述可信应用开发平台联结至少两个可信执行环境操作系统分别对应的原生可信应用。
3.根据权利要求1所述的电子设备,其特征在于,所述第一标识信息对应的原生可信应用,还用于若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;
所述CA,还用于向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
所述第一标识信息对应的原生可信应用,还用于根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;
所述CA,还用于接收到所述返回信息后,发起第二访问请求。
4.根据权利要求3所述的电子设备,其特征在于,所述电子设备还包括:可信应用管理平台;
所述CA,还用于向所述可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
所述可信应用管理平台,用于接收所述安装请求,根据所述安装请求,组装包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文;并将所述OTRP报文发送给所述CA;
所述CA,具体用于接收所述OTRP报文,将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
5.一种可信应用调用方法,其特征在于,所述方法应用于客户端应用CA,所述方法包括:
发起对可信应用开发平台联结的与所述CA对应的可信执行环境操作系统的原生可信应用的第一访问请求,其中所述第一访问请求中携带所述CA所属的电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;使所述可信应用开发平台接收所述第一访问请求,使所述可信应用开发平台根据所述第一标识信息,从所述可信应用开发平台联结的至少两个可信执行环境操作系统分别对应的原生可信应用中,确定所述第一标识信息对应的原生可信应用,并使所述可信应用开发平台将所述第一访问请求发送给所述第一标识信息对应的原生可信应用;
接收所述第一标识信息对应的原生可信应用返回的确认信息,其中所述确认信息为所述第一标识信息对应的原生可信应用在接收到所述第一访问请求,并判断自身安装有所述第二标识信息的字节码可信应用时发送的;
向所述第一标识信息对应的原生可信应用发送调用命令;使所述第一标识信息对应的原生可信应用将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息,向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;使所述第一标识信息对应的原生可信应用根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;
接收所述第一标识信息对应的原生可信应用发送的返回信息,并发起第二访问请求,其中所述返回信息为所述第一标识信息对应的原生可信应用在成功安装所述第二标识信息的字节码可信应用时发送的。
7.根据权利要求6所述的方法,其特征在于,所述接收到所述第一标识信息对应的原生可信应用返回的尚未安装的提示信息之后,所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令之前,所述方法还包括:
向可信应用管理平台发送安装所述第二标识信息的字节码可信应用的安装请求;
接收所述可信应用管理平台发送的包含所述第二标识信息的字节码可信应用的安装信息的开放信任协议OTRP报文,其中所述OTRP报文为所述可信应用管理平台接收到所述安装请求,并根据所述安装请求,成功组装所述OTRP报文时发送的;
所述向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令包括:
将所述OTRP报文及安装所述第二标识信息的字节码可信应用的安装指令发送给所述第一标识信息对应的原生可信应用。
8.一种可信应用调用方法,其特征在于,所述方法应用于原生可信应用,所述方法包括:
接收第一访问请求,其中所述第一访问请求中携带电子设备的第一标识信息及任一应用的字节码可信应用的第二标识信息;
判断自身是否安装有所述第二标识信息的字节码可信应用,若是,向CA返回确认信息;
接收所述CA发送的调用命令,其中所述调用命令为所述CA在接收到所述确认信息后,向所述第一标识信息对应的原生可信应用发送的命令;
将从所述CA处接收到的所述调用命令转交给所述第二标识信息的字节码可信应用。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
若判断自身没有安装所述第二标识信息的字节码可信应用,则向所述CA返回尚未安装的提示信息;使所述CA向所述第一标识信息对应的原生可信应用发送安装所述第二标识信息的字节码可信应用的安装指令;
接收所述安装指令,根据所述安装指令,基于开放信任协议OTRP,将所述第二标识信息的字节码可信应用安装在自身设定位置处;并在安装成功后,向所述CA发送安装成功的返回信息;使所述CA接收到所述返回信息后,发起第二访问请求。
10.一种电子设备,其特征在于,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求5-7中任一所述可信应用调用方法的步骤,或,实现如权利要求8或9任一所述可信应用调用方法的步骤。
CN202111275919.8A 2021-10-29 2021-10-29 一种电子设备、可信应用调用方法、装置、设备及介质 Pending CN114021141A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202111275919.8A CN114021141A (zh) 2021-10-29 2021-10-29 一种电子设备、可信应用调用方法、装置、设备及介质
PCT/CN2022/112599 WO2023071423A1 (zh) 2021-10-29 2022-08-15 一种电子设备、可信应用调用方法、装置、设备及介质
TW111133829A TWI793053B (zh) 2021-10-29 2022-09-07 一種電子設備、可信應用調用方法、裝置、設備及介質

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111275919.8A CN114021141A (zh) 2021-10-29 2021-10-29 一种电子设备、可信应用调用方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN114021141A true CN114021141A (zh) 2022-02-08

Family

ID=80058885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111275919.8A Pending CN114021141A (zh) 2021-10-29 2021-10-29 一种电子设备、可信应用调用方法、装置、设备及介质

Country Status (3)

Country Link
CN (1) CN114021141A (zh)
TW (1) TWI793053B (zh)
WO (1) WO2023071423A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023071424A1 (zh) * 2021-10-29 2023-05-04 中国银联股份有限公司 一种电子设备
WO2023071423A1 (zh) * 2021-10-29 2023-05-04 中国银联股份有限公司 一种电子设备、可信应用调用方法、装置、设备及介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9444627B2 (en) * 2014-12-24 2016-09-13 Intel Corporation System and method for providing global platform compliant trusted execution environment
EP3179690A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Mobile device having trusted execution environment
CN105978920B (zh) * 2016-07-28 2019-05-24 恒宝股份有限公司 一种访问可信应用的方法及ta
KR102511451B1 (ko) * 2016-11-09 2023-03-17 삼성전자주식회사 리치 실행 환경에서 보안 어플리케이션을 안전하게 실행하는 컴퓨팅 시스템
CN109739522B (zh) * 2019-01-03 2022-02-18 中国—东盟信息港股份有限公司 一种适用于eSIM应用的TEE OS适配系统
WO2020185417A1 (en) * 2019-03-08 2020-09-17 Microsoft Technology Licensing, Llc Secure policy ingestion into trusted execution environments
US11295014B2 (en) * 2019-05-08 2022-04-05 Baidu Usa Llc TPM-based secure multiparty computing system using a non-bypassable gateway
CN111382445B (zh) * 2020-03-03 2023-04-07 首都师范大学 利用可信执行环境系统提供可信服务的方法
CN114021141A (zh) * 2021-10-29 2022-02-08 中国银联股份有限公司 一种电子设备、可信应用调用方法、装置、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023071424A1 (zh) * 2021-10-29 2023-05-04 中国银联股份有限公司 一种电子设备
WO2023071423A1 (zh) * 2021-10-29 2023-05-04 中国银联股份有限公司 一种电子设备、可信应用调用方法、装置、设备及介质

Also Published As

Publication number Publication date
TW202318237A (zh) 2023-05-01
TWI793053B (zh) 2023-02-11
WO2023071423A1 (zh) 2023-05-04

Similar Documents

Publication Publication Date Title
KR100943553B1 (ko) 상주 애플리케이션들을 활성화하기 위한 방법, 소프트웨어및 장치
CN102915247B (zh) Apk插件化管理方法
US8904518B2 (en) Information processing device, information processing method, and program distribution system
TWI793053B (zh) 一種電子設備、可信應用調用方法、裝置、設備及介質
CN103379481B (zh) 一种实现安全防护的方法
EP2696532A2 (en) Method, server and system for starting application
RU2339076C2 (ru) Выполнение неверифицированных программ в операционной среде устройства радиосвязи
WO2017071207A1 (zh) 一种应用安装方法、相关装置及应用安装系统
US20070078957A1 (en) Firmware-licensing system for binding terminal software to a specific terminal unit
US9417860B2 (en) Automatic provisioning of a software platform to a device ecosystem
CN103617380A (zh) 应用程序权限动态控制方法和系统
TWI828306B (zh) 一種電子設備
CN111880987A (zh) 应用程序的动态监测方法、装置、存储介质以及电子装置
KR20070085779A (ko) 인도후―수입을 발생시키고 사전 로드된 비활성 상주애플리케이션과 연관된 인도후―활성화를 기록하는 방법
CN108958785B (zh) 一种应用程序升级方法及装置
CN113703813A (zh) 内核升级方法、装置、设备及计算机可读存储介质
US10282719B1 (en) Secure and trusted device-based billing and charging process using privilege for network proxy authentication and audit
US11741175B2 (en) Performance metrics collection and promulgation from within a mobile application
WO2023124420A1 (zh) 应用签名方法、系统、交易终端及服务平台
US7392518B1 (en) Robust remote flash ROM upgrade system and method
CN116340956B (zh) 一种电力嵌入式终端设备的可信防护优化方法和装置
Jeter et al. Identifying and quantifying the android device users' security risk exposure
KR101900710B1 (ko) 보안 어플리케이션 다운로드 관리방법, 이를 적용한 보안 어플리케이션 다운로드 관리서버, 단말기, 및 관리시스템
CN113590271A (zh) 数据库部署方法、装置、电子设备及存储介质
CN106815519A (zh) 一种应用升级方法及终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40068095

Country of ref document: HK