一种交互方法及装置与流程

文档序号:17695151发布日期:2019-05-17 21:26阅读:126来源:国知局
一种交互方法及装置与流程

本发明实施例涉及计算机技术领域,具体涉及一种交互方法及装置。



背景技术:

可信用户界面(trusteduserinterface,tui)是可信执行环境(trustedexecutionenvironment,tee)操作系统(operatingsystems,os)提供的一项安全功能,能够为在tee中运行的各可信应用(trustedapplication,ta)提供可信的与用安全交互的界面,保证ta与用户交互的敏感数据免受其他应用或恶意软件的攻击。进而显著提升业务的安全性。安全单元(secureelement,se)是具有独立的处理器和防硬件攻击能力的硬件单元,能够为在其中运行的应用程序(applet)提供安全的运行环境,并且能够保证存储在其中的资产的安全性和机密性,因此一些对安全性要求较高的应用,比如支付应用、公交应用、u盾等都选择部署在se中。但se不具备与用户交互的能力,为了解决上述问题,业界提出了tee+se安全架构,即tee提供tui能力,所有安全、密码学相关的运算在se内进行,由于tee中的tui只开放给tee中的ta,因此,当se中某个应用程序在某些敏感业务场景下需要与用户进行交互时,需要业务方在tee内安装一个专门的ta以实现对应的tui功能并调整业务的运行时序。上述方法中,针对不同的业务可能需要开发不同的ta,以致增加了业务的开发难度。



技术实现要素:

本发明实施例公开了一种交互方法及装置,用于降低业务开发难度。

第一方面公开一种交互方法,该方法应用于设置在终端中的se,接收来自客户端应用(clientapplication,ca)的业务请求,确定要使用的tui标识,向tee发送携带有tui标识的tui调用指令,tui调用指令可以指示tee获取存储的tui标识对应的tui模板或tui功能模块,根据获取的tui模板或tui功能模块绘制画面,并调用tui显示绘制的画面,接收来自tee的响应信息,根据响应信息执行对应的业务流程。可见,在具备tee+se安全架构的终端上,se内的应用可以使用通过tui模板或tui功能模块开放的tee中的tui能力,不需要为不同的业务开发不同的ta,因此,可以降低业务开发难度。其中,ca为安装在终端上且运行在普通执行环境(richexecutionenvironment,ree)中的应用,响应信息为用户针对显示的画面通过tui输入的信息或tee根据用户与tui显示的画面的交互生成的信息。

在一个实施例中,tui调用指令还携带有tui标识对应的tui模板或tui功能模块所需参数,tui调用指令可以指示tee根据获取的tui模板或tui功能模块以及该参数绘制画面,以便能够绘制完整的画面。

在一个实施例中,在tui标识对应tui模板的情况下,可以先判断tee存储的tui标识对应的tui模板是否与应用存在绑定关系,在判断出tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,才向tee发送携带有tui标识的tui调用指令,可以保证在tee中存储有tui标识对应的tui模板且该tui模板可以被业务应用使用的情况下,才向tee发送携带有tui标识的tui调用指令,从而可以减少不必要的处理过程。其中,该应用为接收业务请求的应用。

在一个实施例中,在判断出tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,可以继续判断tui标识对应的tui模板是否被篡改,在判断出tui标识对应的tui模板未被篡改的情况下,才向tee发送携带有tui标识的tui调用指令,可以保证tui标识对应的tui模板是可以使用的tui模板,从而可以减少不必要的处理过程。

在一个实施例中,tui调用请求还携带有接收业务请求的应用的应用标识,tui调用指令还可以指示tee判断应用标识对应的应用与获取的tui模板是否存在绑定关系,在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,才根据获取的tui模板绘制画面,可以保证获取的tui模板为该应用可以使用的tui模板。

在一个实施例中,tui调用指令还可以指示tee在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,继续判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,才根据获取的tui模板绘制画面,可以保证获取的tui模板是可以使用的tui模板。

在一个实施例中,接收来自ca的业务请求之后,可以先判断se的tui服务是否被激活,在判断出tui服务被激活的情况下,才确定要使用的tui标识,从而可以保证se可以使用tee中的tui。

在一个实施例中,业务请求可以携带有业务类型,可以先根据业务类型判断是否需要使用tui,在判断出需要使用tui的情况下,才判断se的tui服务是否被激活或确定要使用的tui标识,可以确保在需要使用tui的情况下,才使用tee中开放的tui,从而可以减少不必要的处理过程。

第二方面公开一种交互方法,该方法应用于终端中的tee,接收来自se且携带有tui标识的tui调用指令,获取存储的tui标识对应的tui模板或tui功能模块,根据获取的tui模板或tui功能模块绘制画面,调用tui显示绘制的画面,向se发送响应信息,响应信息用于指示se根据响应信息执行对应的业务流程。可见,在具备tee+se安全架构终端上,tee可以通过tui模板或tui功能模块将tee中的tui能力开放给se内的应用,不需要为不同的业务开发不同的ta,因此,可以降低业务开发难度。其中,响应信息为用户针对显示的画面通过tui输入的信息或根据用户与tui显示的画面的交互生成的信息。

在一个实施例中,tui调用指令还可以携带有参数,可以根据获取的tui模板或tui功能模块以及该参数绘制画面,以便能够绘制完整的画面。

在一个实施例中,tee存储的tui模板可以为来自se的tui模板,也可以为来自服务器的tui模板,还可以为预置在tee中的tui模板。

在一个实施例中,在tui模板为来自se或服务器的tui模板的情况下,tui调用请求还可以携带有se中接收业务请求的应用的应用标识,可以先判断获取的tui模板是否与应用标识对应的应用存在绑定关系,在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,才根据获取的tui模板绘制画面,可以保证获取的tui模板为该应用可以使用的tui模板。

在一个实施例中,在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,可以继续判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,才根据获取的tui模板绘制画面,可以保证获取的tui模板是可以使用的tui模板。

第三方面公开一种se,所述se设置在终端中,包括:

接收单元,用于接收来自ca的业务请求,所述ca为安装在所述终端上且运行在ree中的应用;

确定单元,用于确定要使用的tui标识;

发送单元,用于向tee发送携带有所述选择单元选择的tui标识的tui调用指令,所述tui调用指令用于指示所述tee获取存储的所述tui标识对应的tui模板或tui功能模块,根据所述tui模板或tui功能模块绘制画面,并调用tui显示所述画面;

所述接收单元,还用于接收来自所述tee的响应信息,所述响应信息为用户针对所述画面通过所述tui输入的信息或所述tee根据用户与所述tui显示的画面的交互生成的信息;

执行单元,用于根据所述接收单元接收的响应信息执行对应的业务流程。

在一个实施例中,所述tui调用指令还携带有参数,所述参数为所述tui模板或tui功能模块所需参数;

所述tui调用指令用于指示所述tee根据所述tui模板或tui功能模块绘制画面包括:

所述tui调用指令用于指示所述tee根据所述tui模板或tui功能模块以及所述参数绘制画面。

在一个实施例中,所述se还包括:

第一判断单元,用于判断所述tee存储的所述tui标识对应的tui模板是否与应用存在绑定关系,在所述第一判断单元判断出所述tee存储的所述tui标识对应的tui模板与所述应用存在绑定关系的情况下,所述发送单元向tee发送携带有所述tui标识的tui调用指令,所述应用为接收所述业务请求的应用。

在一个实施例中,所述se还包括:

第二判断单元,用于在所述第一判断单元判断出所述tee存储的所述tui标识对应的tui模板与所述应用存在绑定关系的情况下,判断所述确定单元确定的tui标识对应的tui模板是否被篡改,在判断出所述tui标识对应的tui模板未被篡改的情况下,所述发送单元向tee发送携带有所述tui标识的tui调用指令。

在一个实施例中,所述tui调用请求还携带有接收所述业务请求的应用的应用标识,所述tui调用指令还用于指示所述tee判断所述应用标识对应的应用与所述tui模板是否存在绑定关系,在判断出所述应用标识对应的应用与所述tui模板存在绑定关系的情况下,执行所述根据所述tui模板绘制画面。

在一个实施例中,所述tui调用指令还用于指示所述tee在判断出所述应用标识对应的应用与所述tui模板存在绑定关系的情况下,判断所述tui模板是否被篡改,在判断出所述tui模板未被篡改的情况下,执行所述根据所述tui模板绘制画面。

在一个实施例中,所述se还包括:

第三判断单元,用于所述接收单元接收来自ca的业务请求之后,判断所述se的tui服务是否被激活,在所述第三判断单元判断出所述tui服务被激活的情况下,所述确定单元确定要使用的tui标识。

在一个实施例中,所述业务请求携带有业务类型,所述se还包括:

第四判断单元,用于根据所述接收单元接收的业务类型判断是否需要使用tui,在判断出需要使用tui的情况下,所述第三判断单元判断所述se的tui服务是否被激活或所述确定单元确定要使用的tui标识。

第四方面公开一种tee,所述tee为终端中的tee,包括:

接收单元,用于接收来自se的tui调用指令,所述tui调用指令携带有tui标识;

获取单元,用于获取存储的所述接收单元接收的tui标识对应的tui模板或tui功能模块;

绘制单元,用于根据所述获取单元获取的tui模板或tui功能模块绘制画面;

显示单元,用于调用tui显示所述绘制单元绘制的画面;

发送单元,用于向所述se发送响应信息,所述响应信息为用户针对所述显示单元显示的画面通过所述tui输入的信息或根据用户与所述显示单元通过tui显示的画面的交互生成的信息,所述响应信息用于指示所述se根据所述响应信息执行对应的业务流程。

在一个实施例中,所述tui调用指令还携带有参数;

所述绘制单元,具体用于根据所述tui模板或tui功能模块以及所述参数绘制画面。

在一个实施例中,所述tee存储的tui模板为:

来自所述se的tui模板;或者

来自服务器的tui模板;或者

预置的tui模板。

在一个实施例中,在所述tui模板为来自所述se或所述服务器的tui模板的情况下,所述tui调用请求还携带有所述se中接收业务请求的应用的应用标识;

所述tee还包括:

第一判断单元,用于判断所述获取单元获取的tui模板是否与所述应用标识对应的应用存在绑定关系,在判断出所述tui模板与所述应用标识对应的应用存在绑定关系的情况下,所述绘制单元根据所述tui模板绘制画面。

在一个实施例中,所述tee还包括:

第二判断单元,用于在所述第一判断单元判断出所述tui模板与所述应用标识对应的应用存在绑定关系的情况下,判断所述获取单元获取的tui模板是否被篡改,在判断出所述tui模板未被篡改的情况下,所述绘制单元根据所述tui模板绘制画面。

第五方面公开一种se,该se设置在终端中,该se包括处理器、存储器和收发器,存储器用于存储程序代码,处理器用于执行程序代码,收发器用于与其它通信设备或装置进行通信。当处理器执行存储器存储的程序代码时,使得处理器执行第一方面或第一方面的任一种可能实现方式所公开的交互方法。

第六方面公开一种tee,该tee设置在终端中,该se包括处理器、存储器、收发器和显示屏,存储器用于存储程序代码,处理器用于执行程序代码,收发器用于与其它通信设备或装置进行通信,显示屏用于显示信息。当处理器执行存储器存储的程序代码时,使得处理器执行第二方面或第二方面的任一种可能实现方式所公开的交互方法。

第七方面公开一种可读存储介质,该可读存储介质上存储有程序,当该程序运行时,实现如第一方面或第一方面的任一种存实施例所公开的交互方法,或者实现如第二方面或第二方面的任一种存实施例所公开的交互方法。

附图说明

图1是本发明实施例公开的一种系统架构示意图;

图2是本发明实施例公开的一种交互方法的流程示意图;

图3是本发明实施例公开的另一种交互方法的流程示意图;

图4是本发明实施例公开的一种se的结构示意图;

图5是本发明实施例公开的另一种se的结构示意图;

图6是本发明实施例公开的一种tee的结构示意图;

图7是本发明实施例公开的另一种tee的结构示意图;

图8是本发明实施例公开的一种tui模板的示意图;

图9是本发明实施例公开的一种绘制的画面的示意图。

具体实施方式

本发明实施例公开了一种交互方法及装置,用于降低业务开发难度。以下进行详细说明。

为了更好地理解本发明实施例公开的一种交互方法及装置,下面先对本发明实施例使用的用语进行描述。ree,即富执行环境,泛指不具备特定安全功能的运行环境,比如android操作系统。tee是与ree共同存于智能终端中的运行环境,通过硬件的支撑,实现与ree的隔离,具有安全能力并且能够抵御常规ree侧易遭受的软件攻击。tee有自身的运行空间,定义了严格的保护措施,因此,比ree的安全级别更高,能够保护tee中的资产(assets),如数据,软件等,免受软件攻击,抵抗特定类型的安全威胁。只有授权的安全软件才能在tee中执行,同时它也保护了安全软件的资源和数据的机密性。相比ree,由于其隔离和权限控制等保护机制,tee能够更好的保护数据和资源的安全性。

ta是运行在tee中的应用,能够为运行在tee之外的ca提供安全相关的服务。通常ca指ree中的应用,但在某些ta调用ta的情况下,主动发起调用的ta也可作为ca。ca通过客户端(client)应用程序编程接口(applicationprogramminginterface,api)对ta进行调用并指示ta执行相应的安全操作。

se是具备防篡改、防硬件攻击能力的硬件单元,具有独立的处理器,能够为在其中运行的应用(applet)提供安全的运行环境,并且能够保证存储在其中的资产的安全性和机密性。常见的se形式有通用集成电路卡(universalintegratedcircuitcard,uicc)-se、嵌入式(embedded)se,集成到主芯片(systemonchip,soc)之中的se等。

tui是由tee提供可信的与用户进行安全交互的界面,保证ta与用户交互的敏感数据免受其他应用或恶意软件的攻击输入和输出(即显示)内容无法被ree甚至其他ta获取。全球平台组织(globalplatform)对ta调用tui的api进行了标准化,方便ta开发者利用这些api进行tui的开发。通过tui,可以实现安全显示、安全输入、安全指示标记等最基础的安全用户交互功能。

为了更好地理解本发明实施例公开的一种交互方法及装置,下面先对本发明实施例使用的系统架构进行描述。请参阅图1,图1是本发明实施例公开的一种系统架构示意图。如图1所示,该系统架构可以包括ree101、se102和tee103。ree101包括一个或多个ca和开放移动(openmobile,om)api。se102包括一个或多个应用和tui代理(agent)模块。tee103包括一个或多个ta、seta和tui模块。ree101中的ca通过omapi向se102中的应用发起业务请求。se102中的应用接收到业务请求之后,向se102中的tui代理发送tui调用请求。se102中的tui代理接收到tui调用请求之后,向tee103中的seta发送tui调用指令。tee103中的seta接收到tui调用指令之后,读取对应的tui模板或tui功能模块,根据tui模板或tui功能模块绘制画面,tui模块显示绘制的画面,并接收用户针对显示的画面输入的信息或操作,seta向se102中的tui代理发送响应信息。se102中的tui代理将响应信息发送给se102中的该应用,se102中的应用根据响应信息执行对应的业务流程。

se内的tui代理可以向se内的各应用提供tui能力的调用接口,进而将终端中tee中的tui能力开放给se中的各应用。se中的tui代理和tee中的seta可以由终端厂商、tee厂商或se厂商开发并实现内部交互方式,该内部实现可以看做是se能够调用tee中的tui能力,并把tui能力抽象封装并通过调用接口开放给se中的应用。

基于图1所示的系统架构,请参阅图2,图2是本发明实施例公开的一种交互方法的流程示意图。如图2所示,该交互方法可以包括以下步骤。

201、ree中的ca通过omapi向se中的应用发送业务请求。

本实施例中,在ree中的ca需要se中的应用执行某些业务操作的情况下,ree中的ca通过omapi向se中的应用发送业务请求。业务请求可以携带业务信息,业务信息可以表明该业务是哪个业务,比如签名业务请求中的业务信息表明ca请求se中的业务应用对输入的业务数据执行签名操作。

202、se中的应用确定需要使用的tui标识。

本实施例中,se中的应用接收到来自ree的业务请求之后,在判断出se的tui服务可用(即被激活)的情况下,根据业务请求确定需要使用的tui标识,tui标识用于标识需要使用的tui模板或tui功能模块。

本实施例中,在tui标识用于标识要使用的tui模板,且tee中存储的tui模板为来自se或服务器中的tui模板的情况下,在将tui模板部署到tee中时seta可以将tui模板与se中的应用进行绑定。因此,在se中的应用确定要使用的tui标识之后,可以判断tee存储的tui标识对应的tui模板是否与该应用存在绑定关系,即判断tee存储的tui模板中是否存在tui标识对应的tui模板,在判断出tee存储的tui模板中存在tui标识对应的tui模板的情况下,可以直接执行步骤203。具体的,se中的应用通过向tui代理发送查询请求的方式确定tui标识对应的tui模板是否存在。在一个实现中,查询请求包含tui标识,tui代理返回该tui标识对应的模板是否存在的应答。在另一个实现中,应用发送查询请求,tui代理返回tee中保存的该应用关联的所有tui模板的标识,应用自己判断要使用的tui标识对应的模板是否存在。

更进一步地,当tui代理返回tee中保存的该应用关联的所有tui模板的标识时,还可以返回该应用关联的tui模板的哈希值。应用存储有tui标识对应的tui模板的哈希值,可以比较该哈希值与获取到的tee存储的tui标识对应的tui模板的哈希值,比较第一摘要与第二摘要是否相同,在比较结果为相同的情况下,表明该tui模板未被篡改,执行步骤203。在判断出tee存储的tui模板中不存在tui标识对应的tui模板,或比较结果不同的情况下,表明该tee中没有要使用的tui模板或tui模板已被篡改,将结束业务。

此外,tui标识对应的tui模板的信息可以是在初始化的时候获取的。tui标识对应的tui模板的信息可以包括tui标识对应的tui模板的标识信息、哈希值等。此外,该应用也可以从tee中的seta获取tui标识对应的tui模板需要的参数的信息,以便应用将参数的信息对应的参数发送给seta。

203、se中的应用向se中的tui代理发送包括确定的tui标识的tui调用请求。

本实施例中,se中的应用确定出tui标识之后,可以向se中的tui代理发送包括确定的tui标识的tui调用请求。在tui标识对应的tui模板或tui功能模块需要参数的情况下,tui调用请求还可以包括需要的参数,该参数可以是该应用提供的,也可以是ca通过业务请求发送过来的,还可以是该应用和ca共同提供的。此外,tui调用请求还可以包括该应用的应用标识,用于验证该应用与tui模板的绑定关系。tui调用请求的格式可以为:ι应用标识ιtui标识ι参数1ι参数2ι……ι,也可以为ι应用标识ιtui标识1ι参数1ιtui标识2ι参数2。se中的应用可以通过tui代理提供的api接口向tui代理发送tui调用请求,也可以通过卡片操作系统提供的应用的通信接口向tui代理发送tui调用请求。此外,tui代理还可以响应步骤202中的查询请求,向se中的应用发送存储的tui标识、对应的tui模板的哈希值等信息。

本实施例中,在tui标识用于标识tui模板的情况下,tui代理接收到来自se中的应用的tui调用请求之后,可以先判断tee存储的tui标识对应的tui模板是否与应用存在绑定关系,可以判断tee存储的tui模板中是否存在tui标识对应的tui模板,并判断该应用与tui标识对应的tui模板是否存在绑定关系。可以是先判断tee存储的tui模板中是否存在tui标识对应的tui模板,在判断出tee存储的tui模板中存在tui标识对应的tui模板的情况下,继续判断tui标识对应的tui模板是否与该应用存在绑定关系。在判断出tui标识对应的tui模板与该应用存在绑定关系的情况下,表明该应用具备调用tui标识对应的tui模板的权限,可以执行步骤204。在判断出tee存储的tui模板中不存在tui标识对应的tui模板或者tui标识对应的tui模板与该应用不存在绑定关系的情况下,表明该tee中没有要使用的tui模板、要使用的tui模板给应用的业务无法使用或tui模板已被篡改,将结束业务。具体的,tui代理在se初始化或者启动过程中,获取tee存储的tui模板的标识以及模板同各应用的绑定关系,并确定tui服务可用(为激活状态)。在接收到应用发送的包含tui标识的tui调用请求后,tui代理可用确定该标识对应的tui模板是否存在,并确定标识和应用存在绑定关系,然后再执行204。

更进一步,在判断出tui标识对应的tui模板与该应用存在绑定关系的情况下,也可以继续判断tui标识对应的tui模板是否被篡改。具体的,应用可以保存tui标识对应的tui模板的哈希值,在发送给tui代理的tui调用请求中可以包括该哈希值。tui代理确定模板存在且和应用存在绑定关系后,再对从tee获取到的tee存储的tui标识对应的tui模板的哈希值和se中的应用发送过来的哈希值进行比较,在比较结果为相同的情况下,表明该tui模板未被篡改,执行步骤204。在比较结果不同的情况下,表明该tee中要使用的tui模板已被篡改,将结束业务。

204、se中的tui代理向tee中的seta发送携带tui标识的tui调用指令。

本实施例中,se中的tui代理接收到来自se中的应用发送的tui标识之后,可以直接向tee中的seta发送携带tui标识的tui调用指令,tui调用指令可以是tui代理生成的。tui代理生成的tui调用指令可以是根据预设通信协议格式生成的,生成的tui调用指令的格式可以与上述tui调用请求的格式相同,也可以不同。其中,可以通过核间通信(interprocessorcommunication,ipc)或其它底层机制触发由se主动向tee发起的通信连接。

205、tee中的seta获取tui标识对应的tui模板或tui模块功能,根据获取的tui模板或tui模块功能绘制画面。

本实施例中,tee中的seta接收到来自se中tui代理的tui调用指令之后,根据指令中的tui标识获取存储在tee的,该标识对应的tui模板或tui功能模块。之后可以直接根据获取的tui模板或tui功能模块绘制画面。在tui调用指令携带参数的情况下,可以先将参数写入tui模板或tui功能模块,之后才绘制画面。其中,tui功能模块可以为键盘,显示框,按键,生物认证、二维码等功能模块。比如,对于签名场景,se中的业务确定使用文字显示框、图片显示框、按键和生物认证,并向tui代理发送调用请求调用相对应的tui功能模块,同时携带各模块所需要提供的参数。

本实施例中,seta接收到的调用指令之后,根据tui标识对应的tui功能模块,组合文字显示框、图片显示框、按键和生物认证模块,并向各模块提供参数,使得在文字显示框显示待用户确认信息,图片显示框显示安全指示标记,让用户通过按键确认信息是否无误,并在用户选择代表“是”的按键时调用生物认证模块进行身份认证。

本实施例中,在tui标识用于标识tui模板的情况下,seta中存储的tui模板可以是来自se中的应用的tui模板(应用自定义的模板,通过se的tui代理将模板存储到tee),也可以是来自服务器动态部署保存的tui模板(应用自定义的模板,通过tee远程管理的方式直接将模板存储到tee),还可以是seta中预置的tui模板。

本实施例中,tui调用指令还可以携带有se中接收业务请求的应用的应用标识,获取到tui标识对应的tui模板之后,也可以先判断获取的tui模板与应用标识对应的应用是否存在绑定关系,在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,可以直接根据获取的tui模板绘制画面。也可以根据指令中包含的tui模板哈希值继续判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,根据获取的tui模板绘制画面。其中,具体的判断过程与上述tui代理的判断过程相似,在此不再详细赘述。

本实施例中,tui调用指令还可以携带有认证信息,可以先对认证信息进行认证,在认证通过之后,才执行步骤205。在认证未通过的情况下,结束本次业务。认证信息可以是部署tui模板时生成的,具体的,认证信息可以是seta生成的调用凭证,在调用请求中携带该调用凭证才能完成模板的调用。也可以是seta生成的调用密钥,se的tui代理生成tui调用指令时需要使用调用密钥生成认证信息,seta对所述认证信息进行认证通过后允许调用tui模板。

本实施例中,建立在se中的安全业务使用tui的场景基本是固定的,比如信息展示、验证签名、输入密码、二维码显示、生物识别界面等,这些场景展示的内容是相对固定的,基本不涉及动画等需要高频刷新屏幕内容的复杂操作。因此,可以通过tui模板的形式对tui能力进行开放,针对不同的场景部署不同的tui模板(tui模板可以基于业务进行个性化设置)。这样,业务就可以通过模板调用的方式,在se内调用tui能力满足不同场景下的业务需求。

本实施例中,可以针对不同的场景生成不同的tui模板,还可以进一步定义tui模板中各组件(子模块)的属性,如大小、位置、颜色,是否需要入参、是否生成出参以及各参数的数据类型等。请参阅图8,图8是本发明实施例公开的一种tui模板的示意图。如图8所示,tui模板包括了4个组件(子模块)。组件1为图片框组件,要求提供一张图或图片索引作为输入参数,无输出。组件2为文字显示组件,要求提供一段字符串作为输入参数,无输出。组件3为按钮组件,无需输入,根据获取到的用户确认或取消的事件输出是/否或是其他形式的输出。组件4要求提供一个安全指示符(securityindicator)作为输入参数。

本实施例中,tee厂商可以对tui进行tui功能的封装,并提供ui设计工具/组件库让应用厂商自行定制化地进行tui模板设计。,针对不同场景自行选择不同组件以及其相应的属性、设置其所需要的输入/输出等。应用厂商完成tui模板布局设计后,由tee厂商/ui设计工具负责生成相应的tee可执行的tui模板代码。其中,该tui模板代码可以遵循tuiapi规范,只要提供了各tui模板所需的输入参数填入模板代码相应位置,即可通过tuiapi调用tui能力。该tui模板(tui模板代码)通过前面介绍的方式被部署到tee中进行保存。

本实施例中,在进行组件设计开发时,可以为组件提供更丰富的属性供业务方(应用厂商)设置,比如对于按钮组件,除了可以设计按钮显示内容,还可以设计颜色、字体、按压效果等。当业务方决定在ui界面增加一个按钮组件后,除了可以决定位置外,还可以根据可选组件的属性进行更深层次设计。对于用户输入框组件,除了底色、字体等属性,还可以设计该部分始终显示明文,短时显示明文等显示效果属性。

本实施例中,按照常用使用场景,可以分别设计显示确认模板、签名确认模板、带身份认证的签名认证模板(个人通用身份标识码(personalidentificationnumber,pin)码、生物认证等)、二维码显示模板、安全选择模板、触屏事件获取模板等tui模板。当生成tui模板后,可以由业务方或tee厂商对tui模板进行签名、加密等操作,并为tui模板生成在tee内的唯一标识。

本实施例中,tui模板还可以是tee厂商提供的各场景下的通用模板或功能模块,应用厂商根据业务需求直接对tee提供的tui通用模板或功能模块进行使用。

本实施例中,tui模板需要被部署到tee中。tee中的seta对应的服务器可以通过远程管理的方式将tui模板部署到seta中。远程管理的方式,可以使用现有的tee标准化管理协议,如tmf、otrp协议,也可以使用厂商私有协议进行远程管理。

本实施例中,tui模板还可以随se中的应用一起部署到se,并由se中的应用通过se中的tui代理将tui模板保存到tee的seta中。

本实施例中,在tee的seta(通过多种可能方式)接收到tui模板后,可以将tui模板与se中的应用进行绑定。seta还可以向se发送调用凭证,当在tui调用指令中包含该调用凭证时才允许调用。tui模板可以加密保存,密钥可以由se中的应用或tui代理保存,当调用tui模板时需同时传入解密密钥。seta的属性可以设置为多实例(multipleinstant),即不同se中的应用通过se中的tui代理调用tui时会生成不同的seta实例,这样可以进一步确保不同应用的tui模板数据直接的隔离性。

本实施例中,请参阅图9,图9是本发明实施例公开的一种绘制的画面的示意图。图9对应的tui标识用于标识tui模板,tui模板为图8所示,se中的应用向tui代理发送tui标识和业务参数,tui代理向tee中的seta发送tui调用指令,seta接收到tui调用指令之后,获取存储的tui标识对应的图8所示tui模板,tui调用指令的参数提供了组件1所需的图片、组件2显示框所需的内容(如收付款方信息、交易信息等待签名信息等)和组件4所需的安全指示标记给seta,之后seta组合tui模板和业务参数以绘制tui画面。

本实施例中,tee中的seta根据获取的tui模板或tui模块功能绘制完画面之后,可以直接调用tee中的tui模块显示绘制的画面。在一个实现中,当tui模板为可执行的tui模板代码时,tee中的seta使用tui调用指令中的参数对tui模板代码实现相应赋值操作后,可以通过标准的tuiapi接口实现tui功能的调用,并显示绘制的画面。

206、tee中的tui显示绘制的画面,接收用户针对显示的画面输入的信息或操作。

本实施例中,tee中的tui显示绘制的画面之后,用户可以按照指示在显示的tui页面中输入信息,如输入密码,或根据需要在显示的画面中进行点击、滑动等操作,如点击确定按钮或否定按钮等。tee中的tui接收用户针对显示的画面输入的信息或操作之后,可以向tee中的seta发送该信息,或者该操作所在区域的信息,即被操作的信息。比如,组件按钮1显示内容为“是”,按钮2显示内容为“否”,当tui检测到用户点击按钮1区域的操作,即用户点击了“是”对内容进行了确认,则按钮1的输出是被点击(值1),按钮2的输出是未被点击(值0)。

207、tee中的seta向se中的tui代理发送响应信息。

本实施例中,tee中的seta接收到用户通过tui提供的信息之后,可以直接将该信息作为响应信息发送给se中的tui代理。tee中的seta接收到来自tui的被操作的信息之后,可以先根据该操作和被操作的信息生成响应信息,之后将响应信息发送给se中的tui代理。即响应信息可以是用户针对显示的画面通过tui输入的信息,也可以是tee根据用户与tui显示的画面的交互生成的信息。

208、se中的tui代理向se中的应用发送响应信息。

本实施例中,se中的tui代理接收到来自tee中seta的响应信息之后,可以通过广播或应用之间的通信机制向se中的应用发送响应信息。

209、se中的应用根据响应信息执行对应的业务流程。

本实施例中,se中的应用接收到来自se中的tui代理发送的响应信息之后,根据响应信息执行对应的业务流程。例如:在响应信息为用户点击了“是”的情况下,执行下一步操作。

基于图1所示的系统架构,请参阅图3,图3是本发明实施例公开的另一种交互方法的流程示意图。如图3所示,该交互方法可以包括以下步骤。

301、ree中的ca通过omapi向se中的应用发送携带业务类型的业务请求。

其中,步骤301与步骤201相同,详细描述请参考步骤201,在此不再详细赘述。

302、se中的应用根据业务类型判断是否需要使用tui,在判断出需要使用tui的情况下,执行步骤303。

本实施例中,se中业务信息对应的应用接收到业务请求之后,可以根据业务类型判断当前业务是否需要使用tui,在判断出当前业务需要使用tui的情况下。执行步骤303,在判断出当前业务不需要使用tui的情况下,直接执行业务所需流程。

303、se中的应用判断se的tui服务是否被激活,在判断出tui服务被激活的情况下,执行步骤304。

本实施例中,se中业务信息对应的应用在判断出当前业务需要使用tui的情况下,可以继续判断se的tui服务是否被激活。判断过程可以是se中的应用向se中的tui代理发送服务状态查询请求,在tui代理与tee中的seta已建立过连接的情况下,可以直接向该应用发送已激活的消息。在tui代理与tee中的seta未建立过连接的情况下,tui代理可以向seta发送建立连接请求,检查tee中seta和tui的状态。在seta可用的情况下,seta向tui代理发送建立完成的消息,在seta不可用的情况下,seta可以不响应,也可以像tui代理发送无法建立连接的消息。更进一步,seta还可以向tui代理发送tee保存的所有tui模板标识以及模板和各应用的绑定关系,以及模板的哈希值。在确定se的tui激活状态之后tui代理可以向该应用发送已激活的消息或未激活的消息。该应用接收到tui代理发送的tui代理已激活的消息之后,执行步骤304。该应用接收到tui代理发送的tui业务未激活的消息之后,将结束该业务,之后可以向ca发送业务失败的消息,也可以向ca发送业务失败的原因。也可以是tui代理将tui服务激活的消息直接推送给该应用。

304、se中的应用确定要使用的tui标识。

其中,步骤304与步骤202相同,详细描述请参考步骤202,在此不再详细赘述。

305、se中的应用向se中的tui代理发送包括确定的tui标识的tui调用请求。

其中,步骤305与步骤203相同,详细描述请参考步骤203,在此不再详细赘述。

306、se中的tui代理向tee中的seta发送携带tui标识的tui调用指令。

其中,步骤306与步骤204相同,详细描述请参考步骤204,在此不再详细赘述。

307、tee中的seta获取tui标识对应的tui模板或tui模块功能,根据获取的tui模板或tui模块功能绘制画面。

其中,步骤307与步骤205相同,详细描述请参考步骤205,在此不再详细赘述。

308、tee中的tui显示绘制的画面,接收用户针对显示的画面输入的信息或操作。

其中,步骤308与步骤206相同,详细描述请参考步骤206,在此不再详细赘述。

309、tee中的seta向se中的tui代理发送响应信息。

其中,步骤309与步骤207相同,详细描述请参考步骤207,在此不再详细赘述。

310、se中的tui代理向se中的应用发送响应信息。

其中,步骤310与步骤208相同,详细描述请参考步骤208,在此不再详细赘述。

311、se中的应用根据响应信息执行对应的业务流程。

其中,步骤311与步骤209相同,详细描述请参考步骤209,在此不再详细赘述。

基于图1所示的系统架构,请参阅图4,图4是本发明实施例公开的一种se的结构示意图。其中,该se为设置在终端中的se。如图4所示,该se可以包括:

接收单元401,用于接收来自ca的业务请求,ca为安装在该终端上且运行在ree中的应用;

确定单元402,用于确定要使用的tui标识;

发送单元403,用于向tee发送携带有选择单元402选择的tui标识的tui调用指令,tui调用指令用于指示tee获取存储的tui标识对应的tui模板或tui功能模块,根据获取的tui模板或tui功能模块绘制画面,并调用tui显示所述画面;

接收单元401,还用于接收来自tee的响应信息,响应信息为用户针对显示的画面通过tui输入的信息或tee根据用户与tui显示的画面的交互生成的信息;

执行单元404,用于根据接收单元401接收的响应信息执行对应的业务流程。

具体地,确定单元402,用于根据接收单元401接收的业务请求确定要使用的tui标识。

作为一种可能的实施方式,tui调用指令还携带有参数,该参数为tui标识对应的tui模板或tui功能模块所需参数;

tui调用指令用于指示tee根据获取的tui模板或tui功能模块绘制画面包括:

tui调用指令用于指示tee根据获取的tui模板或tui功能模块以及参数绘制画面。

作为一种可能的实施方式,se还可以包括:

第一判断单元405,用于判断tee存储的确定单元402确定的tui标识对应的tui模板是否与应用存在绑定关系,在第一判断单元405判断出tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,发送单元403向tee发送携带有tui标识的tui调用指令,该应用为接收业务请求的应用。

作为一种可能的实施方式,se还可以包括:

第二判断单元406,用于在第一判断单元405判断出tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,判断确定单元402确定的tui标识对应的tui模板是否被篡改,在第二判断单元406判断出tui标识对应的tui模板未被篡改的情况下,发送单元403向tee发送携带有tui标识的tui调用指令。

作为一种可能的实施方式,tui调用请求还携带有接收业务请求的应用的应用标识,tui调用指令还用于指示tee判断应用标识对应的应用与获取的tui模板是否存在绑定关系,在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,执行根据获取的tui模板绘制画面。

作为一种可能的实施方式,tui调用指令还用于指示tee在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,执行根据获取的tui模板绘制画面。

作为一种可能的实施方式,se还可以包括:

第三判断单元407,用于接收单元401接收来自ca的业务请求之后,判断se的tui服务是否被激活,在第三判断单元407判断出tui服务被激活的情况下,确定单元402确定要使用的tui标识。

作为一种可能的实施方式,业务请求携带有业务类型,se还可以包括:

第四判断单元408,用于根据接收单元401接收的业务类型判断是否需要使用tui,在判断出需要使用tui的情况下,第三判断单元407判断se的tui服务是否被激活或确定单元402确定要使用的tui标识。

此外,该se还可以执行上述图2-图3中se执行的方法步骤,还可以包括执行上述图2-图3中se执行的方法步骤的其他单元,此处不再赘述。

基于图1所示的系统架构,请参阅图5,图5是本发明实施例公开的另一种se的结构示意图。其中,该se为设置在终端中的se。如图5所示,该se可以包括处理器501、存储器502、收发器503和总线504。处理器501可以是一个通用中央处理器(cpu),多个cpu,微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。存储器502可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器502可以是独立存在,总线504与处理器501相连接。存储器502也可以和处理器501集成在一起。总线504可包括一通路,在上述组件之间传送信息。其中:

收发器503,用于接收来自ca的业务请求,ca为安装在终端上且运行在ree中的应用;

存储器502中存储有一组程序代码,处理器501用于调用存储器502中存储的程序代码执行以下操作:

确定要使用的tui标识;

收发器503,还用于向tee发送携带有tui标识的tui调用指令,tui调用指令用于指示tee获取存储的tui标识对应的tui模板或tui功能模块,根据获取的tui模板或tui功能模块绘制画面,并调用tui显示绘制的画面;

收发器503,还用于接收来自tee的响应信息,响应信息为用户针对显示的画面通过tui输入的信息或tee根据用户与tui显示的画面的交互生成的信息;

处理器501还用于调用存储器502中存储的程序代码执行以下操作:

根据响应信息执行对应的业务流程。

作为一种可能的实施方式,tui调用指令还携带有参数,参数为确定的tui标识对应的tui模板或tui功能模块所需参数;

tui调用指令用于指示tee根据获取的tui模板或tui功能模块绘制画面包括:

tui调用指令用于指示tee根据获取的tui模板或tui功能模块以及参数绘制画面。

作为一种可能的实施方式,处理器501还用于调用存储器502中存储的程序代码执行以下操作:

判断tee存储的tui标识对应的tui模板是否与应用存在绑定关系的tui模板,在判断出tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,收发器503执行向tee发送携带有tui标识的tui调用指令,应用为接收业务请求的应用。

作为一种可能的实施方式,处理器501还用于调用存储器502中存储的程序代码执行以下操作:

在tee存储的tui标识对应的tui模板与应用存在绑定关系的情况下,判断tui标识对应的tui模板是否被篡改,在判断出tui标识对应的tui模板未被篡改的情况下,收发器503向tee发送携带有tui标识的tui调用指令。

作为一种可能的实施方式,tui调用请求还携带有接收业务请求的应用的应用标识,tui调用指令还用于指示tee判断应用标识对应的应用与获取的tui模板是否存在绑定关系,在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,执行根据获取的tui模板绘制画面。

作为一种可能的实施方式,tui调用指令还用于指示tee在判断出应用标识对应的应用与获取的tui模板存在绑定关系的情况下,判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,执行根据获取的tui模板绘制画面。

作为一种可能的实施方式,处理器501还用于调用存储器502中存储的程序代码执行以下操作:

收发器503接收来自ca的业务请求之后,判断se的tui服务是否被激活,在判断出tui服务被激活的情况下,执行确定要使用的tui标识。

作为一种可能的实施方式,业务请求携带有业务类型,处理器501还用于调用存储器502中存储的程序代码执行以下操作:

根据业务类型判断是否需要使用tui,在判断出需要使用tui的情况下,执行判断se的tui服务是否被激活或执行确定要使用的tui标识。

其中,步骤202-步骤203、步骤209-步骤210、步骤302-步骤305以及步骤311-步骤312可以由se中的处理器501和存储器502来执行,se中的应用接收来自ca的业务请求的步骤、步骤204、步骤208中的接收步骤、步骤306以及步骤310中的接收步骤可以由se中的收发器503来执行。

其中,确定单元402、执行单元404、第一判断单元405、第二判断单元406、第三判断单元407和第四判断单元408可以由se中的处理器501和存储器502来实现,接收单元401和发送单元403步骤可以由se中的收发器503来实现。

基于图1所示的系统架构,请参阅图6,图6是本发明实施例公开的一种tee的结构示意图。其中,该tee为终端中的tee。如图6所示,该tee可以包括:

接收单元601,用于接收来自se的tui调用指令,tui调用指令携带有tui标识;

获取单元602,用于获取存储的接收单元601接收的tui标识对应的tui模板或tui功能模块;

绘制单元603,用于根据获取单元602获取的tui模板或tui功能模块绘制画面;

显示单元604,用于调用tui显示绘制单元603绘制的画面;

发送单元605,用于向se发送响应信息,响应信息为用户针对显示单元604显示的画面通过tui输入的信息或根据用户与显示单元604通过tui显示的画面的交互生成的信息,响应信息用于指示se根据响应信息执行对应的业务流程。

作为一种可能的实施方式,tui调用指令还携带有参数;

绘制单元603,具体用于根据获取的tui模板或tui功能模块以及参数绘制画面。

作为一种可能的实施方式,tee存储的tui模板为:

来自se的tui模板;或者

来自服务器的tui模板;或者

预置的tui模板。

作为一种可能的实施方式,在tui模板为来自se或服务器的tui模板的情况下,tui调用请求还携带有se中接收业务请求的应用的应用标识;

tee还可以包括:

第一判断单元606,用于判断获取单元602获取的tui模板是否与应用标识对应的应用存在绑定关系,在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,绘制单元603根据获取的tui模板绘制画面。

作为一种可能的实施方式,tee还可以包括:

第二判断单元607,用于在第一判断单元606判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,判断获取单元602获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,绘制单元603根据获取的tui模板绘制画面。

此外,该tee还可以执行上述图2-图3中tee执行的方法步骤,还可以包括执行上述图2-图3中tee执行的方法步骤的其他单元,此处不再赘述。

基于图1所示的系统架构,请参阅图7,图7是本发明实施例公开的另一种tee的结构示意图。其中,该tee为终端中的tee。如图7所示,该tee可以包括处理器701、存储器702、收发器703、显示屏704和总线705。处理器701可以是一个通用中央处理器(cpu),多个cpu,微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。存储器702可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器702可以是独立存在,总线705与处理器701相连接。存储器702也可以和处理器701集成在一起。总线705可包括一通路,在上述组件之间传送信息。收发器703可以为收发天线,也可以为其他收发器件。其中:

收发器703,用于接收来自se的tui调用指令,tui调用指令携带有tui标识;

存储器702中存储有一组程序代码,处理器701用于调用存储器702中存储的程序代码执行以下操作:

获取存储的tui标识对应的tui模板或tui功能模块;

根据获取的tui模板或tui功能模块绘制画面;

显示屏704,用于调用tui显示绘制的画面;

收发器703,还用于向se发送响应信息,响应信息为用户针对显示的画面通过tui输入的信息或根据用户与tui显示的画面的交互生成的信息,响应信息用于指示se根据响应信息执行对应的业务流程。

作为一种可能的实施方式,tui调用指令还携带有参数;

处理器701根据获取的tui模板或tui功能模板绘制画面包括:

根据获取的tui模板或tui功能模块以及参数绘制画面。

作为一种可能的实施方式,tee存储的tui模板为:

来自所述se的tui模板;或者

来自服务器的tui模板;或者

预置的tui模板。

作为一种可能的实施方式,在tui模板为来自se或服务器的tui模板的情况下,tui调用请求还携带有se中接收业务请求的应用的应用标识;

处理器701还用于调用存储器702中存储的程序代码执行以下操作:

判断获取的tui模板是否与应用标识对应的应用存在绑定关系,在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,执行根据tui模板绘制画面。

作为一种可能的实施方式,处理器701还用于调用存储器702中存储的程序代码执行以下操作:

在判断出获取的tui模板与应用标识对应的应用存在绑定关系的情况下,判断获取的tui模板是否被篡改,在判断出获取的tui模板未被篡改的情况下,执行根据tui模板绘制画面。

其中,步骤205-步骤207中接收和发送步骤以及步骤307-步骤309中接收和发送步骤可以由tee中的处理器701和存储器702来执行,tee中的seta接收tui调用指令的步骤、步骤208以及步骤310可以由tee中的收发器703来执行,步骤207和309中显示步骤可以由tee中的显示屏704来执行。

其中,获取单元602、绘制单元603、第一判断单元606和第二判断单元607可以由tee中的处理器701和存储器702来实现,接收单元601和发送单元605可以由tee中的收发器703来实现,显示单元604可以由tee中的显示屏704来实现。

本发明实施例还公开了一种可读存储介质,该可读存储介质上存储有程序,该程序运行时,实现如图2-图3所示的交互方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中,通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

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