CN117009971A - 数据处理方法及装置 - Google Patents

数据处理方法及装置 Download PDF

Info

Publication number
CN117009971A
CN117009971A CN202210467415.4A CN202210467415A CN117009971A CN 117009971 A CN117009971 A CN 117009971A CN 202210467415 A CN202210467415 A CN 202210467415A CN 117009971 A CN117009971 A CN 117009971A
Authority
CN
China
Prior art keywords
security
data
secure
environment
connection
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
CN202210467415.4A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210467415.4A priority Critical patent/CN117009971A/zh
Priority to PCT/CN2023/089573 priority patent/WO2023207758A1/zh
Publication of CN117009971A publication Critical patent/CN117009971A/zh
Pending legal-status Critical Current

Links

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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请提供数据处理方法及装置,涉及终端技术领域。本申请能够通过建立不同设备安全环境之间的连接,使得不同的设备可通过该连接借用其他设备的安全能力,提升设备安全环境的处理能力,进而提高用户的使用体验。该方法包括:第一设备在确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境后,通过第二连接将第一数据发送到目标第二安全环境。其中,第一安全能力用于处理第一安全环境中待处理的第一数据,第二连接为第一安全环境和目标第二安全环境之间的连接。之后,第一设备通过第二连接,接收第一数据的第一处理结果,该第一处理结果为通过第一安全能力处理第一数据后生成的处理结果。

Description

数据处理方法及装置
技术领域
本申请实施例涉及终端技术领域,尤其涉及一种数据处理方法及装置。
背景技术
电子设备(例如:手机,平板电脑等)或服务器中一般设置有安全环境,如可信执行环境(trusted execution environment,TEE)或机密计算环境。电子设备或服务器通过安全环境提供安全态服务(例如安全存储、安全密钥、安全加解密、安全驱动等),并保护安全态服务运行过程中的数据安全。
但是,为保证数据安全,安全环境内部的数据只能在该安全环境内部处理,无法进行数据流通,因此电子设备或服务器可提供的安全态服务依赖于电子设备或服务器自身的安全环境中的安全能力。如电子设备或服务器不具备处理某些安全态服务对应的业务的安全能力,则无法提供这些安全态服务,影响用户的使用体验。
发明内容
为了解决上述的技术问题,本申请实施例提供了一种数据处理方法及装置。本申请实施例提供的技术方案,通过建立不同设备安全环境之间的连接,使得不同的设备可通过该连接借用其他设备的安全能力,提升了设备安全环境的处理能力,进而提高用户的使用体验。
为了实现上述的技术目的,本申请实施例提供了如下技术方案:
第一方面,提供一种数据处理方法,应用于第一设备,第一设备与一个或多个第二设备建立有第一连接,第一设备包括第一安全环境,一个或多个第二设备包括对应于一个或多个第二设备的一个或多个第二安全环境。该方法包括:确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境;其中,第一安全能力用于处理第一安全环境中待处理的第一数据。通过第二连接,将第一数据发送到目标第二安全环境,第二连接为第一安全环境和目标第二安全环境之间的连接。通过第二连接,接收第一数据的第一处理结果,第一处理结果为通过第一安全能力处理第一数据后生成的处理结果。
在一些实施例中,通过建立不同设备的安全环境之间的安全连接,池化安全能力,将通信系统中各个设备的安全环境集合成超级安全环境。因此,只要超级安全环境中具备处理待处理数据的安全能力,通信系统中的设备即可处理该待处理的数据。
如此,通过不同设备的安全环境间的交互,实现不同设备的安全能力和安全资源的共享。并且,在保证数据安全的基础上,无需提前适配REE(即无需定制REE侧的应用能力),在用户无感知的情况下,即可自适应的调用其他设备的安全能力,满足用户的需求,降低用户操作难度。
根据第一方面,在将第一安全环境中待处理的第一数据,确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境,包括:获取第一安全能力信息,第一安全能力信息包括一个或多个第二安全环境包括的安全能力。根据第一安全能力信息,确定目标第二安全环境。
在一些实施例中,第一设备在确定第一安全环境中待处理的第一数据后,确定自身的第一安全环境中的安全能力不足以处理该第一数据。因此,第一设备需要调用其他第二设备中的第二安全环境中的安全能力处理或协助处理该第一数据。基于此,第一设备需要获取各个第二设备的第二安全环境的安全能力(即通过获取安全能力信息确定安全能力),从而确定需要的其中的部分或全部第二设备的第二安全能力。
如此,第一设备可确定配置有用于处理第一数据的第一安全能力的目标第二安全环境,将第一数据发送到包括目标第二安全环境的目标第二安全环境中进行处理。从而满足安全环境中的数据处理需求,提升用户使用体验。
根据第一方面,或者以上第一方面的任意一种实现方式,在将第一安全环境中待处理的第一数据,通过第二连接发送到一个或多个第二安全环境中包括第一安全能力的目标第二安全环境之前,方法还包括:与包括目标第二安全环境的目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第一密钥,第一密钥用于加密通过第二连接传输的第一数据和第一处理结果。
在一些场景中,为了保证安全环境之间数据传输的安全,第一设备在确定需要使用目标第二设备的目标第二安全环境中的第一安全能力后,可与目标第二设备之间可以协商用于传输数据的第一密钥。
如此,通过协商密钥加密传输数据后,有效保证安全环境的通信安全。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:删除第一密钥。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:确定目标第二安全环境包括第二安全能力,第二安全能力用于处理第一安全环境中待处理的第二数据。与目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第二密钥,第二密钥用于加密通过第二连接传输的第二数据和第二数据对应的第二处理结果。
如此,第一设备在每次需要调用其他设备的安全能力时,均需重新与确定的目标第二设备协商此次通信的密钥。并在此次通信结束后,删除此次通信使用的密钥。从而避免密钥泄露,影响数据传输的安全性。
根据第一方面,或者以上第一方面的任意一种实现方式,在获取第一安全能力信息之前,方法还包括:通过第一连接,接收一个或多个第二设备发送的一个或多个第二安全环境的第一信息。根据第一信息,确定一个或多个第二安全环境安全。分别建立第一安全环境和一个或多个第二安全环境之间的安全连接,该安全连接用于获取一个或多个第二设备的第一安全能力信息,第二连接为所述安全连接中所述目标第二安全环境对应的连接。
在一些实施例中,第一设备和第二设备通过交互设备证书,确定第一安全环境和第二安全环境之间安全。之后,可建立安全环境之间的安全连接。后续可通过安全连接调用其他设备的安全能力,实现分布式场景中的安全能力共享。
如此,可进一步保证第一设备和第二设备之间安全环境交互的安全性。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:通过安全连接,向一个或多个第二设备发送第一安全环境包括的安全能力的第二安全能力信息。
在一些实施例中,第一设备将包括第一安全环境的安全能力的安全能力信息,通过第一连接发送到一个或多个第二设备。
如此,实现通信系统中安全能力信息的共享,以便于后续一个或多个第二设备调用第一设备的安全能力。
根据第一方面,或者以上第一方面的任意一种实现方式,获取安全能力信息,包括:获取本地存储的第一安全能力信息。和/或,获取中心节点发送的第一安全能力信息。
在一些实施例中,本地存储的安全能力信息,或者中心节点存储的安全能力信息中包括第一设备对应的第二安全能力信息,以及一个或多个第二设备对应的第一安全能力信息。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:向中心节点发送第一安全环境包括的安全能力的第二安全能力信息。
如此,通信系统中的第一设备和一个或多个第二设备,可通过多种方式共享安全能力信息,以便于后续各个设备实现共享安全能力。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:断开与包括目标第二安全环境的目标第二设备之间的第一连接。删除安全能力信息中目标第二设备的目标第二安全环境的安全能力信息。
如此,保证通信系统中安全能力信息的同步更新,避免同步的安全能力信息中包括已经不接入该通信系统的设备的安全能力信息,导致其他设备调用该设备的安全能力失败。
根据第一方面,或者以上第一方面的任意一种实现方式,一个或多个第二安全环境包括的安全能力包括:运行在一个或多个第二安全环境中的安全态应用的安全能力,和/或一个或多个第二安全环境支持的安全态服务。
根据第一方面,或者以上第一方面的任意一种实现方式,第一安全环境或第二安全环境为可信执行环境TEE或机密计算环境。
根据第一方面,或者以上第一方面的任意一种实现方式,在获取第一安全能力信息之前,方法还包括:检测到用户的第一操作。确定第一操作对应的第一业务的待处理数据。根据第一业务的待处理数据,确定第一数据。或者,获取第二业务。确定第二业务的待处理数据中的第一数据。
可选的,第一设备为电子设备或服务器。
在一些实施例中,第一安全能力可为目标第二设备的目标第二安全环境中完整的安全态应用的安全能力,也可以为安全态应用的部分能力(如安全态服务)。
如此,抽象各个设备的安全能力,切分安全业务,多个设备通过自身的安全能力合作处理安全业务,从而充分利用各个设备的安全能力。
第二方面,提供一种数据处理方法,应用于第二设备,第二设备与第一设备建立有第一连接,第二设备包括第二安全环境,第一设备包括第一安全环境。该方法包括:通过第二连接,第二设备中的第二安全环境接收第一设备中的第一安全环境发送的第一数据,第二连接为第一安全环境和第二安全环境之间的连接,第一数据为第一安全环境中的待处理数据。通过第一安全能力处理第一数据,获得第一处理结果。通过第二连接,向第一安全环境发送第一处理结果。
根据第二方面,在通过第二连接,第二设备中的第二安全环境接收第一设备中的第一安全环境发送的第一数据之前,方法还包括:与第一设备协商第一安全环境和第二安全环境之间数据传输的第一密钥,第一密钥用于加密第一数据和第一处理结果。
根据第二方面,或者以上第二方面的任意一种实现方式,在通过第一安全能力处理第一数据之前,方法还包括:确定第一设备具有调用第一安全能力的权限。
在一些实施例中,目标第二设备的目标第二安全环境中还可以配置有权限确认模块,用于确定第一设备是否具有调用第一安全能力的权限。比如,第一设备在发送的第一数据中携带的业务标签中还可以包括第一设备的设备标识,目标第二设备根据该设备标识,可确定第一设备的权限。在确定具有调用第一安全能力的权限后,目标第二设备通过第一安全能力处理获取到的第一数据。
如此,避免没有权限的设备调用自身安全环境的安全能力,进一步保证设备安全环境的安全。
根据第二方面,或者以上第二方面的任意一种实现方式,第一数据携带第一数据对应的业务标签;在通过第一安全能力处理第一数据,获得第一处理结果之前,方法还包括:根据业务标签,确定业务标签对应的第一安全能力。
在一些实施例中,第一数据的业务标签中例如包括待使用的安全能力,该安全能力的凭证等信息。第一数据中携带有该第一数据的业务标签,目标第二设备可根据该业务标签,确定用于处理该第一数据的第一安全能力。之后,目标第二设备在目标第二安全环境中通过第一安全能力处理第一数据,获取到第一数据的第一处理结果。
第二方面以及第二方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,提供一种数据处理装置。该数据处理装置包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机可读指令,当处理器从存储器中读取计算机可读指令,使得数据处理装置执行:确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境;其中,第一安全能力用于处理第一安全环境中待处理的第一数据。通过第二连接,将第一数据发送到目标第二安全环境,第二连接为第一安全环境和目标第二安全环境之间的连接。通过第二连接,接收第一数据的第一处理结果,第一处理结果为通过第一安全能力处理第一数据后生成的处理结果。
根据第三方面,在将第一安全环境中待处理的第一数据,确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境,包括:获取第一安全能力信息,第一安全能力信息包括一个或多个第二安全环境包括的安全能力。根据第一安全能力信息,确定目标第二安全环境。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:与包括目标第二安全环境的目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第一密钥,第一密钥用于加密通过第二连接传输的第一数据和第一处理结果。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:删除第一密钥。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:确定目标第二安全环境包括第二安全能力,第二安全能力用于处理第一安全环境中待处理的第二数据。与目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第二密钥,第二密钥用于加密通过第二连接传输的第二数据和第二数据对应的第二处理结果。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:通过第一连接,接收一个或多个第二设备发送的一个或多个第二安全环境的第一信息。根据第一信息,确定一个或多个第二安全环境安全。分别建立第一安全环境和一个或多个第二安全环境之间的安全连接,该安全连接用于获取一个或多个第二设备的第一安全能力信息,第二连接为所述安全连接中所述目标第二安全环境对应的连接。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:通过安全连接,向一个或多个第二设备发送第一安全环境包括的安全能力的第二安全能力信息。
根据第三方面,或者以上第三方面的任意一种实现方式,获取安全能力信息,包括:获取本地存储的安全能力信息。和/或,获取中心节点发送的安全能力信息。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:向中心节点发送第一安全环境包括的安全能力的第二安全能力信息。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:断开与包括目标第二安全环境的目标第二设备之间的第一连接。删除安全能力信息中目标第二设备的目标第二安全环境的安全能力信息。
根据第三方面,或者以上第三方面的任意一种实现方式,一个或多个第二安全环境包括的安全能力包括:运行在一个或多个第二安全环境中的安全态应用的安全能力,和/或一个或多个第二安全环境支持的安全态服务。
根据第三方面,或者以上第三方面的任意一种实现方式,第一安全环境或第二安全环境为可信执行环境TEE或机密计算环境。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:检测到用户的第一操作。确定第一操作对应的第一业务的待处理数据。根据第一业务的待处理数据,确定第一数据。或者,获取第二业务。确定第二业务的待处理数据中的第一数据。
第三方面以及第三方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第四方面,提供一种数据处理装置。该数据处理装置包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机可读指令,当处理器从存储器中读取计算机可读指令,使得数据处理装置执行:通过第二连接,第二设备中的第二安全环境接收第一设备中的第一安全环境发送的第一数据,第二连接为第一安全环境和第二安全环境之间的连接,第一数据为第一安全环境中的待处理数据。通过第一安全能力处理第一数据,获得第一处理结果。通过第二连接,向第一安全环境发送第一处理结果。
根据第四方面,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:与第一设备协商第一安全环境和第二安全环境之间数据传输的第一密钥,第一密钥用于加密第一数据和第一处理结果。
根据第四方面,或者以上第四方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:确定第一设备具有调用第一安全能力的权限。
根据第四方面,或者以上第四方面的任意一种实现方式,第一数据携带第一数据对应的业务标签;当处理器从存储器中读取计算机可读指令,还使得数据处理装置执行如下操作:根据业务标签,确定业务标签对应的第一安全能力。
第四方面以及第四方面中任意一种实现方式所对应的技术效果,可参见上述第二方面及第二方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第五方面,本申请实施例提供一种数据处理装置,该数据处理装置具有实现如上述第一方面及其中任一种可能的实现方式中所述的数据处理方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应地软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第五方面以及第五方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第六方面,本申请实施例提供一种数据处理装置,该数据处理装置具有实现如上述第二方面及其中任一种可能的实现方式中所述的数据处理方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应地软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第六方面以及第六方面中任意一种实现方式所对应的技术效果,可参见上述第二方面及第二方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第七方面,提供一种计算机可读存储介质。计算机可读存储介质存储有计算机程序(也可称为指令或代码),当该计算机程序被数据处理装置执行时,使得数据处理装置执行第一方面或第一方面中任意一种实施方式的方法;或者,使得数据处理装置执行第二方面或第二方面中任意一种实施方式的方法。
第七方面以及第七方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第八方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在数据处理装置上运行时,使得数据处理装置执行第一方面或第一方面中任意一种实施方式的方法;或者,使得数据处理装置执行第二方面或第二方面中任意一种实施方式的方法。
第八方面以及第八方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第九方面,本申请实施例提供一种电路系统,电路系统包括处理电路,处理电路被配置为执行第一方面或第一方面中任意一种实施方式的方法;或者,处理电路被配置为执行第二方面或第二方面中任意一种实施方式的方法。
第九方面以及第九方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第十方面,本申请实施例提供一种芯片系统,包括至少一个处理器和至少一个接口电路,至少一个接口电路用于执行收发功能,并将指令发送给至少一个处理器,当至少一个处理器执行指令时,至少一个处理器执行第一方面或第一方面中任意一种实施方式的方法;或者,至少一个处理器执行第二方面或第二方面中任意一种实施方式的方法。
第十方面以及第十方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种ARM TrustZone系统架构的示意图;
图2为本申请实施例提供的一种数据处理方法应用的通信系统的示意图;
图3A为本申请实施例提供的第一设备的硬件结构示意图一;
图3B为本申请实施例提供的第一设备的硬件结构示意图二;
图4为本申请实施例提供的一种数据处理过程中建立安全连接的方法的示意图;
图5为本申请实施例提供的一种模块交互的示意图;
图6为本申请实施例提供的数据处理方法的示意图一;
图7为本申请实施例提供的数据处理方法的示意图二;
图8为本申请实施例提供的数据处理方法的示意图三;
图9为本申请实施例提供的数据处理方法的示意图四;
图10为本申请实施例提供的第一设备的结构示意图;
图11为本申请实施例提供的第二设备的结构示意图。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
在一些场景中,电子设备(例如:手机,平板电脑等)或服务器中设置有安全环境,如包括可信执行环境(trusted execution environment,TEE)或机密计算环境,在安全环境处理隐私信息或秘密信息,以保护个人或设备的隐私信息或秘密信息的安全。
示例性的,如图1所示,基于ARM信任区(TrustZone)的电子设备包含富执行环境(rich execution environment,REE)和TEE。REE也称为普通执行环境,包括运行在通用处理器上的富执行环境操作系统(rich execution environment operating system,REEOS)及客户端应用(client application,CA),TEE非安全态服务以CA的形式运行在REE OS上。
其中,将CA具备的能力可抽象为Ability,一个CA可具备多种能力,即可包括多个Ability。Ability可包括功能能力(Feature Ability,FA)和原子的能力(atomic Ability,AA)。应用层的FA用于为用户提供电子设备最上层可用业务,FA由1到N个AA组成,AA提供基础服务能力供FA调用,FA对AA进行编排与拼装,以完成用户指示的业务。
TEE也称为安全执行环境,可以运行可信执行环境操作系统(trusted executionenvironment operating system,TEE OS),为CA提供可信赖的安全态服务(TService,例如安全存储、安全密钥、安全加解密、安全驱动等),这些安全态服务可以以可信应用(trustapplication,TA)(或称为安全态应用)的形式运行在TEE OS上。
如图1所示,为保证数据安全,CA在获取到业务后,会以固定的命令格式向TA发送运算请求,TA解析命令代码后,只能在TEE内部处理安全数据,那么也就导致了安全数据无法流通。
此外,TEE中TA、安全态服务的安全能力固化,电子设备只能使用自身TEE中的安全能力处理安全数据,如电子设备自身安全能力无法处理,则业务处理失败。
并且,TEE中的TA无法跨设备运行,若TA需要的本地资源不足,则TA无法加载并运行,导致业务失败。
这些问题限制了TEE安全运算的能力,影响了用户的使用体验。
基于此,开发者提出基于电子设备的REE,调用其他电子设备的TEE安全能力。示例性的,如图1所示,电子设备1和电子设备2可建立REE的通信连接。电子设备1在应用层(FA1)触发的业务后,确定自身TEE中的安全能力无法处理当前业务,那么通过服务层(AA1和AA2)交互,将该业务指示发送到电子设备2进行处理。比如,电子设备1接收到人脸识别请求,自身TEE不具备人脸识别能力。那么,由电子设备2采集用户人脸,在电子设备2的TEE中进行人脸识别处理。之后,电子设备2将处理结果发送到电子设备1,电子设备1才能响应用户的业务请求。
可以看出上述方法中,本质上是在REE侧形成了功能共享网络,用户操作并不方便。并且,由于需要按照其他电子设备的请求处理业务,那么每一个安全能力均需在REE侧提前适配,无法根据需要的业务能力自动感知。
在上述方法中,一般安全能力较弱的弱设备均需向安全能力较强的强设备发送处理请求,并不能充分利用弱设备自身的安全运算能力。此外,上述方法缺乏资源共享,对于涉及到安全存储等需要安全资源的场景,仍无法完成业务请求。
由此,本申请实施例提供一种数据处理方法,通过建立不同设备安全环境之间的连接,建立安全环境共享网络,使得不同的设备可通过该连接借用其他设备的安全能力,提升了设备安全环境的处理能力,进而提高用户的使用体验。
图2为本申请实施例提供的数据处理方法应用的通信系统的示意图。如图2所示,该通信系统包括第一设备100和第二设备200。其中,第二设备200的数量为一个或多个。
可选的,第一设备100或第二设备200可以为电子设备或服务器。如图2中(a)所示,第一设备100为电子设备(如手机),第二设备200包括多个电子设备和多个服务器。如图2中(b)所示,第一设备100为服务器,第二设备200包括服务器和多个电子设备。
可选的,上述第一设备100或第二设备200可以为基于ARM TrustZone架构的电子设备或服务器,也可以为基于ARM机密计算架构(Arm Confidential ComputeArchitecture,Arm CCA)架构的电子设备或服务器。
其中,基于ARM TrustZone架构的第一设备100或第二设备200中配置的安全环境为TEE,基于ARM CCA架构的第一设备100或第二设备200中配置的安全环境为机密计算环境。
可选的,在第一设备100或第二设备200为电子设备的情况下,第一设备100或第二设备200例如可以为手机、平板电脑、笔记本电脑、大屏设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digitalassistant,PDA)、可穿戴设备、人工智能(artificial intelligence)设备等终端设备,第一电子设备100安装的操作系统包括但不限于或者其它操作系统。本申请对第一设备100或第二设备200的具体类型、所安装的操作系统均不作限制。
可选的,在第一设备100或第二设备200为服务器的情况下,第一设备100或第二设备200可以是云服务器或者网络服务器等具有计算功能的设备或网络设备。第一设备100或第二设备200可以是一台服务器,也可以分别是由多台服务器组成的服务器集群,或者分别是一个云计算服务中心。
在一些实施例中,第一设备100和第二设备200之间建立有通信连接,该通信连接的方式可以为无线通信连接,也可以为有线通信连接。其中,建立无线通信连接的无线通信技术包括但不限于以下的至少一种:蓝牙(bluetooth,BT)(例如,传统蓝牙或者低功耗(bluetooth low energy,BLE)蓝牙),无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),近距离无线通信(near fieldcommunication,NFC),紫蜂(Zigbee),调频(frequency modulation,FM),红外(infrared,IR)等。
比如,第一设备100或第二设备200都支持靠近发现功能。示例性的,第一设备100靠近第二设备200后,第一设备100或第二设备200能够互相发现对方,之后,建立诸如Wi-Fi端到端(peer to peer,P2P)连接、蓝牙连接等无线通信连接。
又比如,第一设备100或第二设备200通过局域网,建立无线通信连接。比如,第一设备100或第二设备200都连接至同一路由器。
又比如,第一设备100或第二设备200通过蜂窝网络、因特网等,建立无线通信连接。比如,第一设备100通过路由器接入蜂窝网络,第二设备200通过蜂窝网络接入因特网;进而,第一设备100或第二设备200建立无线通信连接。
又比如,第一设备100或第二设备200也可以通过局域网中的第三方设备建立无线通信连接,第三方设备例如是路由器、网关、智能设备控制器、服务器等。
再比如,第一设备100通过USB接口连线与第二设备200建立有线通信连接。
示例性的,图3A示出了第一设备100为电子设备的情况下的一种结构示意图。
第一设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。
可以理解的是,本申请实施例示意的结构并不构成对第一设备100的具体限定。在本申请另一些实施例中,第一设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器,使处理器110与触摸传感器通过I2C总线接口通信,实现第一设备100的触摸功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现第一设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现第一设备100的显示功能。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为第一设备100充电,也可以用于第一设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他第一电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对第一设备100的结构限定。在本申请另一些实施例中,第一设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过第一设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为第一电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
第一设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。第一设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在第一设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在第一设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,第一设备100通过移动通信模块150或无线通信模块160与第二设备200建立通信连接。后续,第一设备100可通过与第二设备200之间的通信连接,交互设备信息,从而建立两个设备的安全环境之间的安全连接。进而基于安全环境间的安全连接,第一设备100可调用第二设备200的安全能力处理本侧安全环境中待处理的数据。
在一些实施例中,第一设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得第一设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
第一设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),例如采用有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Mini-led,Micro-led,Micro-oled,量子点发光二极管(quantumdot light emitting diodes,QLED)等生产制造。在一些实施例中,第一设备100可以包括1个或N个显示屏194,N为大于1的正整数。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,第一设备100可以包括1个或N个摄像头193,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展第一设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储第一设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行第一设备100的各种功能应用以及数据处理。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。第一设备100可以通过音频模块170,例如音乐播放,录音等。音频模块170可以包括扬声器,受话器,麦克风,耳机接口,以及应用处理器等实现音频功能。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。第一设备100可以接收按键输入,产生与第一设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和第一设备100的接触和分离。第一设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。
示例性的,图3B示出了第一设备100为服务器的情况下的一种结构示意图。
第一设备100包括至少一个处理器201,通信线路202,存储器203以及至少一个通信接口204。其中,存储器203还可以包括于处理器201中。
处理器201可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路202可包括一通路,在上述组件之间传送信息。
通信接口204,用于与其他设备通信。在本申请实施例中,通信接口可以是模块、电路、总线、接口、收发器或者其它能实现通信功能的装置,用于与其他设备通信。可选的,当通信接口是收发器时,该收发器可以为独立设置的发送器,该发送器可用于向其他设备发送信息,该收发器也可以为独立设置的接收器,用于从其他设备接收信息。该收发器也可以是将发送、接收信息功能集成在一起的部件,本申请实施例对收发器的具体实现不做限制。
存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路202与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器203用于存储用于实现本申请方案的计算机执行指令,并由处理器201来控制执行。处理器201用于执行存储器203中存储的计算机执行指令,从而实现本申请下述实施例提供的数据处理方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码、指令、计算机程序或者其它名称,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器201可以包括一个或多个CPU,例如图3B中的CPU0和CPU1。
在具体实现中,作为一种实施例,第一设备100可以包括多个处理器,例如图3B中的处理器201和处理器207。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,第一设备100还可以包括输出设备205和输入设备206。输出设备205和处理器201通信,可以以多种方式来显示信息。例如,输出设备205可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备206和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备206可以是鼠标、键盘、触摸屏设备或传感设备等。
以下以第一设备100为第一设备,第二设备200为第二设备,第一设备和第二设备为基于ARM TrustZone架构的设备为例,对本申请实施例提供的数据处理方法进行详细介绍。需要说明的是,基于ARM CCA架构的设备的数据处理方法可参考下述各个实施例所述的数据处理方法。
可选的,图4为本申请实施例提供的一种数据处理过程中建立安全连接的方法的流程示意图。如图4所示,该方法包括如下步骤。
S401、第一设备通过与一个或多个第二设备之间的第一连接,获取一个或多个第二安全环境的第一信息。
在一些实施例中,第一设备包括第一安全环境,第二安全设备包括第二安全环境,第一安全环境或第二安全环境为基于ARM TrustZone架构的TEE,或者为基于ARM CCA的机密计算环境,或者为基于其他架构的安全环境。
在一些实施例中,第一设备和第二设备之间建立有第一连接,该第一连接为电子设备或服务器之间的用于通信的连接,如Wi-Fi连接、蓝牙连接、NFC连接等。第一设备和一个或多个第二设备之间建立安全环境之间的安全连接之前,需要建立用于交互设备信息的普通连接(即第一连接)。
在一些实施例中,第一信息为设备证书,例如包括TEE ID,TEE版本信息,TEE的证书信息,TEE OS版本信息,芯片架构信息,TEE OS的支持的设备类型信息,TEE OS代码的完整性度量值(如签名哈希值),TEE OS厂商信息,安全等级等。
示例性的,如图5所示,第一设备中包括REE 51和TEE 52,一个或多个第二设备中包括目标第二设备,目标第二设备中包括REE 53和TEE 54。其中,第一设备的TEE 52中包括设备证书管理模块521,目标第二设备的TEE 54中也包括设备证书管理模块541。设备证书管理模块用于管理设备证书。
可选的,第一设备在确定与目标第二设备建立安全连接的情况下,可向目标第二设备发送安全连接建立请求,在安全连接建立请求中可携带设备证书管理模块521管理的自身安全环境的设备证书,用于与目标第二设备交互设备证书,验证双方安全环境的安全性。
比如,第一设备在与目标第二设备之间建立第一连接后,第一设备中的设备证书管理模块521可通过第一连接向第二设备发送第一设备的设备证书,并通过第一连接接收第二设备的设备证书管理模块541发送的第二设备的设备证书(如第一信息)。
又比如,第一设备在建立第一连接后暂不进行设备证书的交互(即暂不建立安全环境间的安全连接)。后续,响应于用户指示执行安全业务的操作(如在REE侧检测到需要在TEE侧处理的业务),第一设备再通过第一连接与一个或多个第二设备交互设备证书。
再比如,第一设备在建立第一连接后暂不进行设备证书的交互。后续,第一设备检测到用户指示执行安全业务的操作后,确定自身不具备处理该安全业务的安全能力。第一设备显示界面提示信息,提示用户是否需要通过其他设备的安全能力处理该安全业务。响应于用户指示调用其他设备的安全能力的操作,第一设备再通过第一连接与一个或多个第二设备交互设备证书。
S402、第一设备根据第一信息,确定一个或多个第二安全环境安全。
在一些实施例中,第一设备通过第一连接获取到第二设备的TEE的第一信息(如第二设备的设备证书)后,可根据第一信息确定第二设备的第二安全环境(即第二设备的TEE)是否安全。
比如,第一设备根据第一信息根据签名哈希值(hash)确定代码完整,确定第二安全环境未做修改,可确定第二安全环境安全。
S403、第一设备建立第一安全环境和一个或多个第二安全环境之间的安全连接。
在一些实施例中,第一设备在确定第二设备的第二安全环境安全后,可建立自身第一安全环境和第二设备的第二安全环境的安全连接。其中,在第一设备确定第二安全环境是否安全的过程中,对端的第二设备同样可以接收到第一设备发送的设备证书,因此可确定第一安全环境是否安全。
由此,第一设备和第二设备均确定对端设备的安全环境安全后,可与对端设备建立安全环境之间的安全连接。
示例性的,如图5所示,第一设备与目标第二设备之间通过第一连接交互设备证书后,根据设备证书确定对端设备中的安全环境安全。之后,第一设备可建立TEE 52和TEE 54之间的第二连接(上述安全连接包括第二连接)。
在另一些实施例中,第一设备与对端第二设备在上述步骤S402中,双方任一方确定对端设备中的安全环境不安全,那么可确定安全认证未通过,在步骤S403中,可取消本次安全连接的建立。
如此,第一设备和第二设备通过交互设备证书,建立安全环境之间的安全连接,后续可通过安全连接调用其他设备的安全能力,实现分布式场景中的安全能力共享。
在一些场景中,第一设备在与一个或多个第二设备建立安全连接后,可通过该安全连接获取到一个或多个第二设备的安全能力信息,进而在需要处理安全业务时,可确定是否需要调用其他设备的安全能力处理该安全业务。也就是说,安全连接可用于获取其他设备的安全能力信息,以及向其他设备发送安全能力信息。并且,第三设备还可用于调用其他设备的安全能力。
如下介绍第一设备通过调用其他第二设备的第二安全环境的安全能力,进行数据处理的过程。
可选的,图6为本申请实施例提供的一种数据处理方法的流程示意图。如图6所示,该方法包括如下步骤。
S601、第一设备确定一个或多个第二安全环境中包括第一安全能力的目标第二安全环境。
在一些实施例中,第一设备与一个或多个第二设备建立有第一连接。其中,第一设备包括第一安全环境,一个或多个第二设备包括对应于一个或多个第二设备的一个或多个第二安全环境。
在一些实施例中,不同设备的TEE(即安全环境)具有相同或不相同的安全能力,安全能力为安全环境中系统的安全能力(如TEE OS的安全能力),以安全态服务(TService)的形式提供相应的安全能力。
可选的,安全态服务例如包括安全存储、安全密钥、安全加解密、安全驱动、安全时钟、安全外设、安全CPU等。
可选的,一个或多个第二设备中包括目标第二设备,目标第二设备包括目标第二安全环境,目标第二安全环境中包括第一安全能力。
在一些实施例中,第一设备在确定第一安全环境中待处理的第一数据后,确定自身的第一安全环境中的安全能力不足以处理该第一数据。第一设备需要调用其他第二设备中的第二安全环境中的安全能力处理或协助处理该第一数据。因此,第一设备需要根据能够用于处理该待处理的第一数据的第一安全能力,确定包括第一安全能力的目标第二安全环境。
基于此,第一设备需要获取各个第二设备的第二安全环境的安全能力,从而确定需要的部分或全部第二设备的第二安全环境(即目标第二安全环境)。
可选的,如图7所示,步骤S601可以包括步骤S701和步骤S702。
S701、第一设备获取安全能力信息。
在一些实施例中,第一设备或第二设备在建立安全连接后,可生成包括自身安全能力的安全能力信息。安全能力信息可通过文件格式存在,如T-Profile。
比如,第一设备的安全能力包括安全存储,第一设备可确定对应的安全能力信息包括存储空间的大小、属性等信息。
又比如,第一设备的安全能力包括安全时钟,第一设备可确定对应的安全能力信息包括时间服务的信息。
再比如,第一设备的安全能力信息包括重放保护内存块(replay protectedmemory block,RPMB)的大小、属性等信息。
在一些实施例中,第一设备提供T-Profile的同步接口,通过该接口与通信系统中的第二设备完成安全能力信息的同步。
比如,第一设备在通过上述图4所示方法与一个或多个第二设备建立安全连接后,通过安全连接,可获取到一个或多个第二设备的安全能力信息(即第一安全能力信息)。
又比如,第一设备在本地创建用于记录安全能力信息的账本,将自身的安全能力信息(即第二安全能力信息)以及获取到的第二设备的安全能力信息(即第一安全能力信息)记录在该账本中。可选的,第一设备或第二设备按照预设周期广播自身的安全能力信息,和/或,在确定自身安全能力更新后广播更新后的安全能力信息。第一设备在接收到第二设备发送的广播信息后,更新本地账本中记录的第二设备的安全能力信息。之后,在需要确定通信系统中其他设备的安全能力时,从本地存储的账本中获取安全能力信息。
再比如,通信系统中设置有中心节点,中心节点能够用于管理通信系统中各个设备的安全能力信息,通信系统中包括的第一设备和第二设备可将自身的安全能力信息发送到中心节点进行同步。第一设备在确定需要调用其他设备的安全能力时,可向中心节点请求获取其他设备的安全能力信息。可选的,中心节点例如为通信系统中能够保持通信的电子设备、或者为运算能力较强的电子设备、或者为非电池设备(即能保证工作时长的设备)等。
示例性的,如图5所示,第一设备的TEE 52中包括同步服务模块523,同步服务模块523用于管理TEE 52的安全能力,以及通过安全连接同步通信系统中其他设备的安全能力信息。目标第二设备的TEE 54中包括同步服务模块543,同步服务模块543用于管理TEE 54的安全能力,以及通过安全连接同步通信系统中其他设备的安全能力信息。
在一些实施例中,第一设备在需要调用其他设备的安全能力时,可获取安全能力信息。安全能力信息中包括与第一设备建立有安全连接的一个或多个第二安全环境包括的安全能力。
可选的,第一设备通过安全连接,获取一个或多个第二设备的安全能力信息;和/或,获取本地存储的安全能力信息;和/或,获取中心节点发送的安全能力信息。
S702、第一设备根据安全能力信息,确定目标第二安全环境。
在一些实施例中,第一设备在获取到一个或多个第二设备的安全能力信息,通过安全能力信息,可确定一个或多个第二安全环境包括的安全能力。
可选的,一个或多个第二安全环境包括的安全能力包括:运行在一个或多个第二安全环境中的安全态应用的安全能力,和/或一个或多个第二安全环境支持的安全态服务。
示例性的,如图1所示的ARM TrustZone架构,电子设备的TEE中包括安全态应用(TA)和安全态服务(TService),安全应用和安全态服务具有相应的安全能力。第一设备可根据获取到的安全能力信息,确定第二设备的安全环境包括的安全态应用和/或安全态服务的安全能力。
需要说明的是,参见上文对图1所示架构的介绍,安全态服务可以以可信应用(或称为安全态应用)的形式运行在TEE OS上。也就是说,安全态应用集成了一个或多个安全态服务,各个设备的安全环境中可以包括一个或多个安全态应用,和/或一个或多个安全态服务。后续,第一设备调用目标第二设备的安全能力,可为第一设备的第一安全环境调用目标第二设备的目标第二安全环境中的安全态应用和/或安全态服务,对此下文不再说明。
在一些实施例中,第一设备在检测到待处理的业务后,确定自身不具备处理该业务的安全能力,或者自身只具备处理该业务部分数据的安全能力后,可通过上述步骤S601将该业务分配给目标第二设备的目标第二安全环境处理。
比如,第一设备可通过上述步骤S701获取到通信系统中其他设备的安全能力信息,进而可通过上述步骤S702确定配置有处理该业务的安全能力的安全环境。以便于,后续第一设备可将该业务对应的第一设备无法处理的数据发送到确定的安全环境中进行处理(即执行下述步骤S602)。
示例性的,如图5所示,第一设备根据其TEE 52中的同步服务模块523获取到的安全能力信息,确定目标第二设备中的TEE 54(即目标第二安全环境)具有处理待处理数据的第一安全能力。如同步服务模块523中存储有包括通信系统中全部设备的安全能力信息的表格,第一设备通过查表的方式,确定目标第二设备中的TEE 54具有所需的第一安全能力。
S602、第一设备通过第二连接,将第一数据发送到目标第二安全环境。
在一些实施例中,第一设备在确定配置有用于处理第一数据的第一安全能力的目标第二安全环境后,可将第一数据通过第二连接发送到包括目标第二安全环境的目标第二设备中进行处理。
如此,满足安全环境中的数据处理需求,提升用户使用体验。
S603、目标第二设备通过第一安全能力处理第一数据,获得第一处理结果。
在一些实施例中,目标第二设备在接收到第一数据后,可将第一数据发送到目标第二安全环境中,通过第一安全能力处理该第一数据。
可选的,第一数据中携带有该第一数据的业务标签,目标第二设备可根据该业务标签,确定用于处理该第一数据的第一安全能力。之后,目标第二设备在目标第二安全环境中通过第一安全能力处理第一数据,获取到第一数据的第一处理结果。其中,第一数据的业务标签中例如包括待使用的安全能力,该安全能力的凭证等信息。
比如,目标第二设备的TEE OS通过第一安全能力处理第一数据后,可确定第一处理结果。
在一些实施例中,目标第二设备的目标第二安全环境中还可以配置有权限确认模块,用于确定第一设备是否具有调用第一安全能力的权限。比如,第一设备在发送的第一数据中携带的业务标签中还可以包括第一设备的设备标识,目标第二设备根据该设备标识,可确定第一设备的权限。在确定具有调用第一安全能力的权限后,目标第二设备通过第一安全能力处理获取到的第一数据。
在一些实施例中,第一安全能力可为目标第二设备的目标第二安全环境中完整的安全态应用的安全能力,也可以为安全态应用的部分能力(如安全态服务)。
S604、第一设备通过第二连接,获取第一处理结果。
在一些实施例中,目标第二设备确定第一处理结果后,将该第一处理结果从目标第二安全环境通过第二连接发送到第一设备的第一安全环境。相应的,第一设备的第一安全环境接收该第一处理结果。
如此,通过不同设备的安全环境间的交互,实现不同设备的安全能力和安全资源的共享。并且,在保证数据安全的基础上,无需提前适配REE(即无需定制REE侧的应用能力),在用户无感知的情况下,即可自适应的调用其他设备的安全能力,满足用户的需求,降低用户操作难度。
在一些场景中,为了保证安全环境之间数据传输的安全,第一设备在确定需要使用目标第二设备的目标第二安全环境中的第一安全能力后,可与目标第二设备的目标第二安全环境之间协商用于传输数据的第一密钥。
可选的,如图8所示,在步骤S702之后,还可以包括步骤S801。
S801、第一设备和目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第一密钥。
在一些实施例中,为保证安全环境的通信安全,第一设备与目标第二设备需要协商此次通信的安全密钥,用于对通信过程中的传输数据进行加密。可选的,第一设备和目标第二设备可通过第二连接协商第一密钥。
示例性的,如图5所示,第一设备的TEE 52中包括分布式密钥管理模块522,目标第二设备的TEE 54中包括分布式密钥管理模块542,分别用于协商和管理各自的安全通信密钥。第一设备在通过同步服务模块523确定目标第二设备的TEE 54中包括处理待处理的第一数据的安全能力后,可通过分布式密钥管理模块522与分布式密钥管理模块542协商第二连接的加密密钥(即第一密钥)。
比如,通过公私钥密钥对的方式,确定第一密钥。具体的密钥协商方法可参考现有技术,对此本申请实施例不做具体限制。
在一些实施例中,第一设备可在上述步骤S403中建立与一个或多个第二设备的安全连接后,即与一个或多个第二设备协商用于对安全连接上传输的数据进行加密的安全密钥。之后,在获取安全能力信息的过程中(即步骤S701),通过确定的安全密钥对待传输的安全能力信息进行加密。从而保证安全能力信息的安全性。也就是说,步骤S801可在上述步骤S701之前执行。
在一些实施例中,第一设备和目标第二设备完成安全环境之间的密钥协商后,可通过协商后确定的第一密钥加密上述步骤S602中传输的第一数据,以及加密上述步骤S604中传输的第一处理结果。
可选的,如图8所示,步骤S602可包括步骤S602a,步骤S604可包括步骤S604a。
S602a、第一设备通过第二连接,将第一数据通过第一密钥加密后,发送到目标第二安全环境。
在一些实施例中,第一设备在与目标第二设备协商确定第一密钥,并确定待目标第二设备处理的第一数据后,第一设备可通过第一密钥加密第一数据,将加密后的第一数据通过第二连接发送到目标第二设备的目标第二安全环境进行处理。相应的,目标第二设备在接收到加密后的第一数据后,可根据协商确定的第一密钥,解密获取到的第一数据。
S604a、第一设备通过第二连接,获取通过第一密钥加密后的第一处理结果。
在一些实施例中,目标第二设备确定第一处理结果后,将该第一处理结果通过第一密钥加密后,从目标第二安全环境通过第二连接发送到第一设备的第一安全环境。相应的,第一设备的第一安全环境接收该第一处理结果,并可根据第一密钥解密接收到的第一处理结果。
如下基于上述图6-图8所示的数据处理方法,对其中第一设备的第一安全环境中待处理的第一数据的相关内容进行详细介绍。
在一些场景中,第一设备在检测到待处理的安全业务,确定本侧安全能力无法独立处理该安全业务后,触发上述步骤S701,获取通信系统中其他设备的安全能力信息。
示例性的,第一设备检测到用户的第一操作,确定第一操作对应的第一业务的待处理数据,根据第一业务的待处理数据,确定第一数据。其中,第一数据可为第一业务的全部数据或部分数据。第一设备确定自身的安全能力无法处理第一数据,可获取安全能力信息,以便确定能够处理该第一数据的设备。
比如,第一设备为大屏设备,大屏设备中安装有金融产品应用,配置有对应的实物操作界面(tangible user interface,TUI)。TUI用于显示安全键盘接收用户输入的密码等信息。大屏设备在检测到用户在TUI上输入的密码和需要操作的钱数后,确定自身不具备安全密钥能力,可执行上述步骤S701,获取通信系统中其他设备的安全能力信息。之后,大屏设备确定与其相连的手机(目标第二设备)具有安全密钥能力(即步骤S702),可与手机协商此次安全通信的第一密钥(即步骤S801)。之后,大屏设备将接收到的用户输入的密码和钱数通过第一密钥加密后,通过第二连接发送到手机的目标第二安全环境(即步骤S602a)。手机接收到密钥和钱数后,通过与云服务器(如银行服务器)交互,对密码进行验证,确定是否允许当前钱数的交易,确定第一处理结果(即步骤S603)。手机可通过第二连接将加密后的第一处理结果发送到大屏设备(即步骤S604a),大屏设备根据获取到的第一处理结果,确定此次安全验证是否通过,显示相应的处理结果。
又示例性的,第一设备响应于获取到的第二业务,也可确定第二业务的待处理数据中的第一数据。
比如,第一设备为服务器1,第一设备获取到通过安全存储能力存储数据的请求,确定本侧不具备安全存储能力,可执行上述步骤S701,获取通信系统中其他设备的安全能力信息。之后,服务器1确定服务器2的安全环境配置有安全存储能力(即步骤S702),可与服务器2协商此次安全通信的第一密钥(即步骤S801)。之后,服务器1将通过第一密钥加密后的存储数据通过第二连接发送到服务器2的目标第二安全环境(即步骤S602a)。服务器2接收到存储数据后,可通过安全存储能力存储该存储数据,确定第一处理结果,如存储成功或失败的响应(即步骤S603)。服务器1可获取到服务器2发送的第一处理结果(即步骤S604a),确定是否存储成功。
又比如,第一设备为服务器1,第一设备获取到通过安全存储能力存储数据的请求,确定本侧具有安全存储能力,但是存储空间不足。服务器1可执行上述步骤S701,获取通信系统中其他设备的安全能力信息。之后,服务器1确定服务器2的安全环境配置有安全存储能力和服务器2的可用安全存储空间大小,以及确定服务器3的安全环境配置有安全存储能力和服务器3的可用安全存储空间大小(即步骤S702)。服务器1根据获取到的安全能力信息,确定此次获取到的存储数据,需要通过自身剩余的安全存储空间、服务器2的可用安全存储空间、以及服务器3的可用安全存储空间,才可完成全部存储业务。
那么,服务器1可与服务器2协商此次安全通信的密钥1,以及与服务器3协商此次安全通信的密钥2(即步骤S801)。之后,服务器1将待存储的存储数据切分为待分布式存储的数据1(需本侧安全存储的数据)、数据2(需服务器2安全存储的数据)、以及数据3(需服务器3安全存储的数据),通过密钥1加密数据2后通过与服务器2之间的安全连接发送到服务器2的安全环境,以及通过密钥2加密数据3后通过与服务器3之间的安全连接发送到服务器3的安全环境(即步骤S602a)。服务器2和服务器3接收到相应的数据后,通过安全存储能力存储数据,确定数据存储响应(即步骤S603)。服务器1可获取到服务器2和服务器3发送的数据存储响应(即步骤S604a),确定是否存储成功,并且可直接确定本侧的数据1是否存储成功。
如此,通过池化安全能力,将通信系统中各个设备的安全环境集合成超级安全环境(super TEE)。因此,只要超级安全环境中具备处理待处理数据的安全能力,通信系统中的设备即可处理该待处理的数据。
此外,抽象各个设备的安全能力,切分安全业务,多个设备通过自身的安全能力合作处理安全业务,从而充分利用各个设备的安全能力。
需要说明的是,第一设备对待处理业务的切分,可参考现有技术,对此本申请实施例不做具体阐述。如上述示例,第一设备可根据自身的安全能力、安全存储资源等信息,进行业务切分。比如,大屏设备确定自身采集密码,由手机验证密码。又比如,服务器1对待存储的数据进行切分,确定由服务器1、服务器2和服务器3分别存储的数据。
在一些实施例中,在上述步骤S604a中,目标第二设备在发送第一处理结果后,删除第一密钥。相应的,第一设备在获取到第一处理结果后,删除第一密钥。
如此,第一设备在每次需要调用其他设备的安全能力时,均需重新与确定的目标第二设备协商此次通信的密钥,避免密钥泄露,影响数据传输的安全性。
比如,第一设备在删除第一密钥后,获取到第二业务,确定待处理的第二业务的第二数据。之后,第一设备确定目标第二设备的目标第二安全环境包括第二安全能力,第二安全能力可用于处理第一安全环境中待处理的第二数据。那么,第一设备通过第二连接,与目标第二设备协商第一安全环境和目标第二安全环境之间数据传输的第二密钥,第二密钥用于加密第二数据和第二数据对应的第二处理结果。
在一些实施例中,第一设备确定第二设备退出通信系统后,可删除安全信息中该第二设备的安全能力信息。比如,第一设备断开与包括目标第二安全环境的目标第二设备之间的第一连接后,可删除安全能力信息中目标第二设备的目标第二安全环境的安全能力。
示例性的,如图9所示,第一设备接入到包括第二设备的通信系统(如加入网络)后,建立第一设备的第一安全环境与第二设备的第二安全环境之间的安全连接。之后,第一设备生成自身的安全能力信息,并且通过该安全连接,将该安全能力信息发送到其他第二设备,并通过该安全连接同步其他第二设备的安全能力信息,从而完成设备入网的安全能力信息的同步。
之后,通信系统中的第二设备退出通信系统(如退出网络)后,同步广播自身的退网信息,第一设备可同步删除该退网设备的安全能力信息。此外,该退网设备也可以删除本地存储的该退出的通信系统中其他设备的安全能力信息。
可以理解的是,第一设备断开与目标第二设备之间的第一连接后,两个设备安全环境之间的第二连接自动断开。
如此,保证通信系统中安全能力信息的同步更新,避免同步的安全能力信息中包括已经不接入该通信系统的设备的安全能力信息,导致其他设备调用该设备的安全能力失败。
以上结合图4-图9详细说明了本申请实施例提供的数据处理方法。以下结合图10和图11详细说明本申请实施例提供的第一设备和第二设备。
在一种可能的设计中,图10为本申请实施例提供的第一设备的结构示意图。如图10所示,第一设备1000可以包括:收发单元1001和处理单元1002。第一设备1000可用于实现上述方法实施例中涉及的第一设备的功能。其中,第一设备为电子设备或服务器。
可选地,收发单元1001,用于支持第一设备1000执行图4中的S401和S403;和/或,用于支持第一设备1000执行图6中的S602和S604;和/或,用于支持第一设备1000执行图7中的S701;和/或,用于支持第一设备1000执行图8中的S801、S602a以及S604a。
可选地,处理单元1002,用于支持第一设备1000执行图4中的S402;用于支持第一设备1000执行图6中的S601;和/或,和/或,用于支持第一设备1000执行图7中的S702。
其中,收发单元可以包括接收单元和发送单元,可以由收发器或收发器相关电路组件实现,可以为收发器或收发模块。第一设备1000中的各个单元的操作和/或功能分别为了实现上述方法实施例中所述的数据处理方法的相应流程,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能单元的功能描述,为了简洁,在此不再赘述。
可选地,图10所示的第一设备1000还可以包括存储单元(图10中未示出),该存储单元中存储有程序或指令。当收发单元1001和处理单元1002执行该程序或指令时,使得图10所示的第一设备1000可以执行上述方法实施例中所述的数据处理方法。
图10所示的第一设备1000的技术效果可以参考上述方法实施例中所述的数据处理方法的技术效果,此处不再赘述。
除了以第一设备1000的形式以外,本申请提供的技术方案也可以为第一设备中的功能单元或者芯片,或者与第一设备匹配使用的装置。
在一种可能的设计中,图11为本申请实施例提供的第二设备的结构示意图。如图11所示,第二设备1100可以包括:收发单元1101和处理单元1102。第二设备1100可用于实现上述方法实施例中涉及的第二设备的功能。其中,第二设备为电子设备或服务器。
可选地,收发单元1101,用于支持第二设备1100执行图4中的S401和S403;和/或,用于支持第二设备1100执行图6中的S602和S604;和/或,用于支持第二设备1100执行图8中的S801、S602a以及S604a。
可选地,处理单元1102,用于支持第二设备1100执行图6中的S603。
其中,收发单元可以包括接收单元和发送单元,可以由收发器或收发器相关电路组件实现,可以为收发器或收发模块。第二设备1100中的各个单元的操作和/或功能分别为了实现上述方法实施例中所述的数据处理方法的相应流程,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能单元的功能描述,为了简洁,在此不再赘述。
可选地,图11所示的第二设备1100还可以包括存储单元(图11中未示出),该存储单元中存储有程序或指令。当收发单元1101和处理单元1102执行该程序或指令时,使得图11所示的第二设备1100可以执行上述方法实施例中所述的数据处理方法。
图11所示的第二设备1100的技术效果可以参考上述方法实施例中所述的数据处理方法的技术效果,此处不再赘述。
除了以第二设备1100的形式以外,本申请提供的技术方案也可以为第二设备中的功能单元或者芯片,或者与第二设备匹配使用的装置。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性地,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性地,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(AP设备plication specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(centralprocessor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controllerunit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的数据处理方法。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的数据处理方法。
另外,本申请实施例还提供一种装置。该装置具体可以是组件或模块,该装置可包括相连的一个或多个处理器和存储器。其中,存储器用于存储计算机程序。当该计算机程序被一个或多个处理器执行时,使得装置执行上述各方法实施例中的数据处理方法。
其中,本申请实施例提供的装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法。因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
结合本申请实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应地软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(AP设备plication specific integrated circuit,ASIC)中。
通过以上的实施方式的描述,本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明。实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成;即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的。例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
计算机可读存储介质包括但不限于以下的任意一种:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (19)

1.一种数据处理方法,其特征在于,应用于第一设备,所述第一设备与一个或多个第二设备建立有第一连接,所述第一设备包括第一安全环境,所述一个或多个第二设备包括对应于所述一个或多个第二设备的一个或多个第二安全环境,所述方法包括:
确定所述一个或多个第二安全环境中包括第一安全能力的目标第二安全环境;其中,所述第一安全能力用于处理所述第一安全环境中待处理的第一数据;
通过第二连接,将所述第一数据发送到所述目标第二安全环境,所述第二连接为所述第一安全环境和所述目标第二安全环境之间的连接;
通过所述第二连接,接收所述第一数据的第一处理结果,所述第一处理结果为通过所述第一安全能力处理所述第一数据后生成的处理结果。
2.根据权利要求1所述的方法,其特征在于,所述确定所述一个或多个第二安全环境中包括第一安全能力的目标第二安全环境,包括:
获取第一安全能力信息,所述第一安全能力信息包括所述一个或多个第二安全环境包括的安全能力;
根据所述第一安全能力信息,确定所述目标第二安全环境。
3.根据权利要求2所述的方法,其特征在于,在所述通过第二连接,将所述第一数据发送到所述目标第二安全环境之前,所述方法还包括:
与包括所述目标第二安全环境的目标第二设备协商所述第一安全环境和所述目标第二安全环境之间数据传输的第一密钥,所述第一密钥用于加密通过所述第二连接传输的所述第一数据和所述第一处理结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
删除所述第一密钥。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
确定所述目标第二安全环境包括第二安全能力,所述第二安全能力用于处理所述第一安全环境中待处理的第二数据;
与所述目标第二设备协商所述第一安全环境和所述目标第二安全环境之间数据传输的第二密钥,所述第二密钥用于加密通过所述第二连接传输的所述第二数据和所述第二数据对应的第二处理结果。
6.根据权利要求2-5任一项所述的方法,其特征在于,在所述获取第一安全能力信息之前,所述方法还包括:
通过所述第一连接,接收所述一个或多个第二设备发送的所述一个或多个第二安全环境的第一信息;
根据所述第一信息,确定所述一个或多个第二安全环境安全;
分别建立所述第一安全环境和所述一个或多个第二安全环境之间的安全连接,所述安全连接用于获取所述一个或多个第二设备的第一安全能力信息,所述第二连接为所述安全连接中所述目标第二安全环境对应的连接。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
通过所述安全连接,向所述一个或多个第二设备发送所述第一安全环境包括的安全能力的第二安全能力信息。
8.根据权利要求2-5任一项所述的方法,其特征在于,所述获取第一安全能力信息,包括:
获取本地存储的所述第一安全能力信息;
和/或,获取中心节点发送的所述第一安全能力信息。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
向所述中心节点发送所述第一安全环境包括的安全能力的第二安全能力信息。
10.根据权利要求2-9任一项所述的方法,其特征在于,所述方法还包括:
断开与包括所述目标第二安全环境的目标第二设备之间的所述第一连接;
删除所述第一安全能力信息中所述目标第二设备的所述目标第二安全环境的安全能力信息。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述一个或多个第二安全环境包括的安全能力包括:运行在所述一个或多个第二安全环境中的安全态应用的安全能力,和/或所述一个或多个第二安全环境支持的安全态服务。
12.根据权利要求1-11任一项所述的方法,其特征在于,所述第一安全环境或第二安全环境为可信执行环境TEE或机密计算环境。
13.一种数据处理方法,其特征在于,应用于第二设备,所述第二设备与第一设备建立有第一连接,所述第二设备包括第二安全环境,所述第一设备包括第一安全环境,所述方法包括:
通过第二连接,所述第二设备中的所述第二安全环境接收所述第一设备中的第一安全环境发送的第一数据,所述第二连接为所述第一安全环境和所述第二安全环境之间的连接,所述第一数据为所述第一安全环境中的待处理数据;
通过第一安全能力处理所述第一数据,获得第一处理结果;
通过所述第二连接,向所述第一安全环境发送所述第一处理结果。
14.根据权利要求13所述的方法,其特征在于,在所述通过第二连接,所述第二设备中的所述第二安全环境接收所述第一设备中的第一安全环境发送的第一数据之前,所述方法还包括:
与所述第一设备协商所述第一安全环境和所述第二安全环境之间数据传输的第一密钥,所述第一密钥用于加密所述第一数据和所述第一处理结果。
15.根据权利要求13或14所述的方法,其特征在于,在所述通过第一安全能力处理所述第一数据之前,所述方法还包括:
确定所述第一设备具有调用所述第一安全能力的权限。
16.根据权利要求13-15任一项所述的方法,其特征在于,所述第一数据携带所述第一数据对应的业务标签;在通过第一安全能力处理所述第一数据,获得第一处理结果之前,所述方法还包括:
根据所述业务标签,确定所述业务标签对应的所述第一安全能力。
17.一种数据处理装置,其特征在于,包括:处理器和存储器,所述存储器与所述处理器耦合,所述存储器用于存储计算机可读指令,当所述处理器从所述存储器中读取所述计算机可读指令,使得所述数据处理装置执行如权利要求1-12中任意一项所述的方法;或者,使得所述数据处理装置执行如权利要求13-16中任意一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在数据处理装置上运行时,使得所述数据处理装置执行如权利要求1-12中任意一项所述的方法;或者,使得所述数据处理装置执行如权利要求13-16中任意一项所述的方法。
19.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-12中任意一项所述的方法;或者,使得所述计算机执行如权利要求13-16中任意一项所述的方法。
CN202210467415.4A 2022-04-29 2022-04-29 数据处理方法及装置 Pending CN117009971A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210467415.4A CN117009971A (zh) 2022-04-29 2022-04-29 数据处理方法及装置
PCT/CN2023/089573 WO2023207758A1 (zh) 2022-04-29 2023-04-20 数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210467415.4A CN117009971A (zh) 2022-04-29 2022-04-29 数据处理方法及装置

Publications (1)

Publication Number Publication Date
CN117009971A true CN117009971A (zh) 2023-11-07

Family

ID=88517559

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210467415.4A Pending CN117009971A (zh) 2022-04-29 2022-04-29 数据处理方法及装置

Country Status (2)

Country Link
CN (1) CN117009971A (zh)
WO (1) WO2023207758A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019148397A1 (zh) * 2018-01-31 2019-08-08 华为技术有限公司 分解敏感数据存储在不同应用环境中
CN114245375B (zh) * 2020-09-09 2023-03-17 华为技术有限公司 一种密钥跨设备分发方法及电子设备
CN114238900A (zh) * 2020-09-09 2022-03-25 华为技术有限公司 一种数据传输方法及电子设备

Also Published As

Publication number Publication date
WO2023207758A1 (zh) 2023-11-02

Similar Documents

Publication Publication Date Title
CN111466099B (zh) 一种登录方法、令牌发送方法、设备及存储介质
EP4092980B1 (en) Account data sharing method and electronic device
WO2021073428A1 (zh) 一种账号绑定方法、设备及系统
WO2021093855A1 (zh) 一种移动设备管理方法及设备
CN113408016B (zh) 保存密文的方法和装置
WO2021175266A1 (zh) 身份验证方法、装置和电子设备
WO2021184264A1 (zh) 数据保存方法、数据访问方法及相关装置、设备
WO2021057982A1 (zh) 应用程序的处理方法及相关产品
CN113196236A (zh) 一种跨设备认证方法及电子设备
EP4138462A1 (en) Information sharing method, electronic devices and system
CN112966297A (zh) 数据保护方法、系统、介质及电子设备
CN113950048B (zh) 连接建立方法、电子设备及存储介质
WO2023207758A1 (zh) 数据处理方法及装置
CN116743357B (zh) 密钥存储方法和装置
CN116049826B (zh) 基于tpm的数据保护方法、电子设备及存储介质
WO2024164112A1 (zh) 应用间通信方法、通信系统、应用间通信装置及车辆
WO2024037500A1 (zh) 通信方法及相关装置
WO2023169545A1 (zh) 离线设备控制方法及相关装置
CN114845297B (zh) 应用程序访问方法、电子设备及存储介质
CN116647936B (zh) 一种pdn连接方法和通信系统
WO2024114214A1 (zh) 一种通信方法以及电子设备
CN112615891B (zh) 配对方法及设备
US20240233933A1 (en) Contact tracing method and related device
CN116028916A (zh) 一种设备控制方法与相关设备
CN118870547A (zh) 一种WiFi通信方法及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication