CN112596802B - 一种信息处理方法及装置 - Google Patents
一种信息处理方法及装置 Download PDFInfo
- Publication number
- CN112596802B CN112596802B CN201910877079.9A CN201910877079A CN112596802B CN 112596802 B CN112596802 B CN 112596802B CN 201910877079 A CN201910877079 A CN 201910877079A CN 112596802 B CN112596802 B CN 112596802B
- Authority
- CN
- China
- Prior art keywords
- password
- target
- encryption
- security
- request
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例公开了一种信息处理方法及装置,应用于部署有富执行环境(TEE)和可信执行环境(REE)的计算机系统中。目标TA接收REE目标CA发送的口令设置请求,口令设置请求包括第一口令,之后该目标TA利用第一加密参数对第一口令进行加密得到第一密文,第一加密参数包括部署在TEE的安全器件派生的第一安全秘钥,之后,目标TA可以向目标CA发送口令设置结果,口令设置结果包括该第一密文。安全器件派生的第一安全秘钥的安全性较高,难以被窃取,因此提高了第一密文的破解难度,从而提高了第一口令的安全性。
Description
技术领域
本申请涉及计算机安全技术,尤其涉及一种信息处理方法及装置。
背景技术
随着移动互联网的发展,智能终端设备的应用越来越广泛。为了提供智能终端设备的丰富功能和可扩展属性,并且保护用户隐私和信息安全,终端设备构建在提供开放式操作环境的富执行环境(rich execution envrironment,REE)和可信执行环境(trustedexecution environment,TEE)之上。REE也被称作一般运行环境,主要包括运行于通用处理器上的富操作系统(rich operating system,Rich OS)和运行在Rich OS上的客户端应用程序(client application,CA)。TEE是运行于REE之外的独立运行环境,主要包括运行于可信操作系统(trusted operating system,Trusted OS)和运行在Trusted OS上的可信应用程序(trusted application,TA),TEE与REE隔离。REE无法直接访问TEE的硬件和软件资源,例如TEE内存,二者只能通过授权的应用程序编程接口(application programminginterface,API)进行交互。因此TEE能够抵御在REE侧发生的软件攻击。
CA可以调用特定的应用编程接口(application programming interface,API)调用TA,由TA调用TEE中的资源执行安全服务,比如加密服务。TA对CA发送的加密信息进行加密,将加密得到的密文返回至CA,完成加密服务。为了提高加密信息的安全性,TA一般在加密过程中引入加密参数,将其作为加密算法的盐值或秘钥。由于调用派生设备(比如硬件加解密引擎)派生根秘钥所需的权限等级较高,为了进一步增加密文被破解的难度,现有技术中,TA调用派生设备派生终端设备的根秘钥,以根秘钥为加密参数中的随机盐值或秘钥,利用加密参数对加密信息进行加密。
快速启动(fastboot)是一种刷机模式,fastboot组件在fastboot阶段具有最高权限,通过向fastboot组件注入恶意代码等方式,可以通过fastboot组件调用派生设备派生根秘钥,利用获取到的根秘钥对TEE返回的密文进行破解。可见,TA的加密过程存在安全漏洞,降低了CA的加密信息的安全性。
发明内容
本申请实施例提供一种信息处理方法及装置等,用于提高现有TA的加密过程的安全性。
下面通过不同的方面示例性地介绍本申请提供的方案,应理解的是,以下各个方面的实现方式和有益效果可互相参考。
为了保护用户隐私和信息安全,部署有富执行环境(rich executionenvrironment,REE)和可信执行环境(trusted execution environment,TEE)的计算机系统的应用越来越广泛,该计算机系统的REE内部署有富操作系统(rich operating system,Rich OS),或称REE操作系统,该REE操作系统内一般部署有一个或多个CA,该计算机系统的TEE内部署有安全器件(secure element,SE)和可信操作系统(trusted operatingsystem,Trusted OS),或称TEE操作系统,该TEE操作系统上一般一个或多个TA,TA一般可以提供一个或多个服务。
以该TEE操作系统中部署的某个TA(称作目标TA)和该REE操作系统中部署的某个CA(称作目标CA)为例,下面介绍本申请实施例第一方面提供的信息处理方法。需要说明的是,本申请并不限定TEE操作系统中部署的所有TA和REE操作系统中部署的所有CA都按照本申请提供的方法运行。
目标TA可以向目标CA提供加密服务,例如,目标CA可以向目标TA发送加密请求,加密请求中包括加密信息,目标TA接收到加密请求后,可以利用加密算法对加密信息进行加密,该加密算法可以为哈希算法,为了提高哈希算法的安全性,目前的哈希算法一般支持设置加密参数,常见的加密参数的类型包括盐值和秘钥,本申请实施例第一方面提供的信息处理方法中,目标TA可以利用安全器件派生的安全秘钥作为加密算法的一个加密参数(例如作为盐值或秘钥),利用该加密算法对加密信息进行加密得到密文,之后向目标CA返回加密结果,该加密结果可以包括得到的密文。
安全器件通常以芯片形式存在于计算机系统中,具体的,一般以单独芯片(例如eSE)的形式或集成在计算机系统的主处理器(例如inSE)中的形式设置于计算机系统中。为防止外部恶意解析攻击,保护数据安全,安全器件中一般具有加密解密的逻辑电路,可以为有调用权限的TA派生安全秘钥,示例性的,安全器件可以对安全器件的硬件唯一识别号进行哈希加密得到安全秘钥。
在快速启动(fastboot)阶段,由于安全器件的镜像通常未被加载,fastboot组件难以调用安全器件派生安全秘钥,目标TA利用安全器件派生的安全秘钥对加密信息进行加密得到密文,黑客窃取到密文后,由于难以窃取到安全秘钥,因此难以利用密文破解出加密信息,提高加密信息的安全性。
基于本申请第一方面提供的方法,在本申请第一方面第一种可能的实现方式中,目标TA向目标CA提供的加密服务可以具体为口令设置服务,设置的标准口令可以用于确定标准用户,通过验证当前用户是否知道标准口令,可以确定当前用户是否为标准用户。为了便于理解,对应用场景进行如下举例:用户可以向目标CA输入第一口令,并请求目标CA将第一口令设置为计算机系统(如手机)中部分资源的标准口令,例如目标CA为锁屏应用程序,用户可以在目标CA的口令设置界面中输入第一口令,设置成功后,用户需要输入该第一口令才能使手机解除锁屏,进而通过手机屏幕访问手机的应用界面(例如桌面)。响应于该用户下达的设置标准口令的请求,目标CA可以向目标TA发送口令设置请求,口令设置请求中可以包括第一口令;目标TA接收到口令设置请求后,可以利用第一加密参数对第一口令进行加密得到第一密文,采用的加密算法为单向函数,例如哈希函数,第一加密参数可以包括安全器件派生的安全秘钥(将得到第一密文所用的安全秘钥称作第一安全秘钥);得到第一密文后,目标TA可以向目标CA发送口令设置结果,该口令设置结果可以包括第一密文。
将本申请第一方面提供的TA的加密方法应用于口令设置流程中,即使第一密文被黑客窃取,由于黑客难以窃取到第一安全秘钥,因此难以利用第一密文破解出第一口令,有利于提高计算机系统中相应资源的安全性。
需要说明的是,本申请中的“响应于A执行B”可以为A之后直接执行B,也可以理解为A之后,B之前还执行其他动作,或者执行B的时候还执行其它动作等。
单向函数是指这样一类函数:对于每一个输入,函数值都容易计算(多项式时间),但是给出随机输入的函数值,却难以算出原始输入(无法在多项式时间内使用正确的图灵机计算)。
基于本申请第一方面第一种可能的实现方式,在本申请第一方面的第二种可能的实现方式中,目标TA对第一口令进行加密时所利用的第一加密参数还可以包括其他参数,例如现有技术中派生设备(比如硬件加解密引擎)派生的根秘钥,或者,包括目标TA在接收到口令设置请求后生成的随机字符串,或者包括根秘钥和随机字符串,示例性的,在利用第一加密参数加密第一口令的过程中,随机字符串和根秘钥可以作为哈希算法的盐值,第一安全秘钥作为哈希算法的秘钥。
基于本申请第一方面第一种可能的实现方式或第二种可能的实现方式,在本申请第一方面的第三种可能的实现方式中,目标TA可以响应于口令设置请求向安全器件发送第一安全秘钥派生请求,安全器件可以响应于该第一安全秘钥派生请求生成第一安全秘钥,并将第一安全秘钥发送给目标TA。
为了进一步提高安全秘钥的安全性,安全器件为不同TA生成的安全秘钥一般不同,为此,可以根据TA发送的派生请求中携带的部分信息(例如目标TA的标识信息)作为派生参数,利用派生参数生成安全秘钥,派生参数不同,那么生成的安全秘钥也不同,例如安全器件对安全器件的硬件唯一识别号进行哈希加密,派生参数作为哈希算法的秘钥或盐值。为了进一步提高第一安全秘钥的安全性,基于本申请第一方面的第三种可能的实现方式,在本申请第一方面的第四种可能的实现方式中,目标TA发送的第一安全秘钥派生请求中可以包括第一口令,安全器件可以根据第一口令生成第一安全秘钥,口令不同,安全器件生成的安全秘钥不同。
基于本申请第一方面第一种可能的实现方式至第四种可能的实现方式中任意一种可能的实现方式,在本申请第一方面第五种可能的实现方式中,继续以第一方面的第一种可能的实现方式中提供的应用场景为例,第一口令被设置为标准口令后,用户希望解除手机的锁屏时,需要向目标CA提供的口令验证界面输入口令(将用户在口令验证界面中输入的口令称作第二口令)。响应于用户在口令验证界面中输入第二口令,目标CA可以向目标TA发送口令验证请求,该口令验证请求可以包括第二口令,目标TA接收到目标CA发送的口令设置结果后,可以利用第二加密参数对第二口令进行加密得到第二密文,第二加密参数包括安全器件派生的第二安全秘钥。得到第二密文后,目标TA可以根据第二密文向目标CA发送口令验证结果。目标CA可以根据口令验证结果确定第二口令与第一口令是否相同,从而确定用户是否通过口令验证。
基于本申请第一方面第五种可能的实现方式,在本申请第一方面的第六种可能的实现方式中,口令验证请求可以包括第一密文,目标TA得到第二密文后,可以对第一密文和第二密文进行比较,根据比较结果向目标CA发送口令验证结果,该口令验证结果可以用于指示第一密文和第二密文是否一致,若一致,则目标CA可以判定第二口令和第一口令一致;若不一致,则目标CA可以判定第二口令和第一口令不一致。
需要说明的是,在本申请第一方面第五种可能的实现方式和本申请第一方面的第六种可能的实现方式中,为了保证与第一口令相同的第二口令能够通过目标CA的验证,若第二口令与第一口令相同,目标TA对第二口令进行加密所采用的加密算法和加密参数,应与对第一口令进行加密所采用的加密算法和加密参数相同。
为此,在一种可能的实现方式中,目标TA可以仅设置有一种加密算法,或者,为了提高安全性,在一种可能的实现方式中,目标TA可以设置多个加密算法,目标CA发送的口令设置请求和口令验证请求中可以携带与目标CA相关或与用户相关的加密信息,例如加密信息可以为目标CA的标识,或者为用户的账户名,相同的加密信息对应于同一加密算法,目标TA可以根据口令设置请求和口令验证请求中的加密信息确定所采用的加密算法。
基于本申请第一方面第五种可能的实现方式或第六种可能的实现方式,若如本申请第一方面的第二种可能的实现方式所限定的,目标TA对第一口令进行加密时所利用的第一加密参数还包括其他参数,那么在本申请第一方面第七种可能的实现方式中,目标TA对第二口令进行加密时所利用的第二加密参数还包括相应的参数。示例性的,若第一加密参数包括派生设备(比如硬件加解密引擎)派生的根秘钥,那么第二加密参数也包括派生设备派生的根秘钥;若第一加密参数还包括目标TA在接收到口令设置请求后生成的随机字符串,那么第二加密参数也包括该随机字符串,例如,口令设置结果和口令验证请求中可以包括该随机字符串,目标TA从口令验证请求中获取该随机字符串。
基于本申请第一方面第五种可能的实现方式至第七种可能的实现方式中任一种可能的实现方式,第二安全秘钥为安全器件派生的,具体的,在本申请第一方面第八种可能的实现方式中,目标TA可以响应于口令验证请求向安全器件发送第二秘钥派生请求,安全器件可以根据第二秘钥派生请求生成第二安全秘钥。
基于本申请第一方面第八种可能的实现方式,若如本申请第一方面的第四种可能的实现方式,目标TA发送的第一安全秘钥派生请求中包括第一口令,安全器件可以根据第一口令生成第一安全秘钥,那么,在本申请第一方面的第九种可能的实现方式中,目标TA发送的第二秘钥派生请求可以包括第二口令,安全器件可以根据第二口令生成第二安全秘钥。若第一口令和第二口令不同,安全器件生成的第一安全秘钥和第二安全秘钥不同;若第一口令和第二口令相同,安全器件生成的第一安全秘钥和第二安全秘钥相同,也就是说,有利于进一步提高安全秘钥的安全性。
基于本申请第一方面第五种可能的实现方式至第七种可能的实现方式中任一种可能的实现方式,第二安全秘钥为安全器件派生的,引入安全器件参与加密过程,可能导致口令验证时长增加,为了提高口令验证的效率,在本申请第一方面第八种可能的实现方式中,目标TA在获取到安全器件生成的第一安全秘钥后,目标TA可以利用哈希算法计算第一口令的散列值或第一口令和携带于口令设置结果中的随机字符串的散列值,该哈希算法可以为MD5、SHA1、SHA224、SHA256、SHA384、SHA512中的一个或多个,目标TA可以根据该散列值得到第一索引,按照第一索引将第一安全秘钥保存在TEE的存储介质中,例如TEE的安全内存或缓存(buffer)中;目标TA接收到口令验证请求后,可以计算第二口令的散列值或第二口令和携带于口令验证请求中的随机字符串的散列值,目标TA可以根据该散列值得到第二索引,按照第二索引从TEE的存储介质中读取第二安全秘钥。若第二口令与第一口令相同,那么第二索引与第一索引相同,目标TA从TEE的存储介质中获取到的第二安全秘钥为保存的第一安全秘钥,从而使得第二密文与第一密文相同;若第二口令与第一口令不同,那么第二索引与第一索引不同,目标TA无法从TEE的存储介质中获取之前保存的第一安全秘钥,那么即使第二安全秘钥被窃取,也有利于保证第一密文的安全。目标TA可以将第一安全秘钥保存在缓存中,具体的,保存的形式可以为数组或链表等。
基于本申请第一方面第八种可能的实现方式,第一安全秘钥被保存在TEE的存储介质后,可能被篡改,或者在计算机系统重启后,保存在TEE的安全内存或缓存中的第一安全秘钥会丢失,因此,若目标TA响应于口令验证请求,按照第二索引无法从TEE的存储介质中读取第二安全秘钥(比如存储内容为空),目标TA可以向安全器件获取第二安全秘钥;或者,若目标TA利用第二安全秘钥得到的第二密文与第一密文不同,在本申请第一方面第九种可能的实现方式中,目标TA可以向安全器件发送秘钥派生请求,获取安全器件派生的第三安全秘钥,利用第三安全秘钥再次对第二口令进行加密得到第三密文,根据第三密文向目标CA发送口令验证结果。
基于本申请第一方面第九种可能的实现方式,若目标TA得到的第三密文与第一密文相同,在本申请第一方面第十种可能的实现方式中,目标TA可以判定第二口令与第一口令相同,即为标准口令,可以根据第二口令的散列值确定第三索引,按照第三索引将第三安全秘钥存储在TEE的存储介质中。
在上述方法实施例中,目标TA的功能也可以由TEE操作系统(例如TEE操作系统的某个功能模块)实现。
从功能模块的角度,本领域技术人员可以根据上述方法实施例对目标TA进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个功能模块中。上述集成的功能模块既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
示例性的,根据第一方面和第一方面的各个实现方式提供的方案,以采用集成的方式划分各个功能单元的情况下,本申请实施例第二方面提供一种信息处理装置,信息处理装置部署在可信执行环境TEE操作系统上,TEE操作系统部署在计算机系统的TEE内,TEE内还部署有安全器件,计算机系统上还部署有富执行环境REE,REE内部署有REE操作系统,REE操作系统上部署有一个或多个客户端应用程序CA,该信息处理装置可以包括:接收模块,用于接收目标CA发送的加密请求,加密请求中包括加密信息;加密模块,用于在接收到加密请求后,利用加密算法对加密信息进行加密得到密文,该加密算法可以为哈希算法,为了提高哈希算法的安全性,目前的哈希算法一般支持设置加密参数,常见的加密参数的类型包括盐值和秘钥;发送模块,用于在得到密文后,向目标CA返回加密结果,该加密结果可以包括得到的密文。
基于本申请第二方面提供的方法,在本申请第二方面第一种可能的实现方式中,接收模块,用于接收目标CA发送的口令设置请求,所述口令设置请求包括第一口令,所述目标CA为所述多个CA中的一个;加密模块,用于响应于所述接收模块接收的口令设置请求,利用第一加密参数对所述第一口令进行加密得到第一密文,所述第一加密参数包括所述安全器件派生的第一安全秘钥;发送模块,用于向所述目标CA发送口令设置结果,所述口令设置结果包括所述第一密文。
基于本申请第二方面第一种可能的实现方式,在本申请第二方面的第二种可能的实现方式中,第一加密参数还可以包括其他参数,例如现有技术中派生设备(比如硬件加解密引擎)派生的根秘钥,或者,包括加密模块在接收模块接收到口令设置请求后生成的随机字符串,或者包括根秘钥和随机字符串。
基于本申请第二方面第一种可能的实现方式或第二种可能的实现方式,在本申请第二方面的第三种可能的实现方式中,加密模块可以响应于口令设置请求向安全器件发送第一安全秘钥派生请求,安全器件可以响应于该第一安全秘钥派生请求生成第一安全秘钥,并将第一安全秘钥发送给加密模块。
为了进一步提高安全秘钥的安全性,安全器件为不同TA生成的安全秘钥一般不同,为此,可以根据TA发送的派生请求中携带的部分信息(例如信息处理装置的标识信息)作为派生参数,利用派生参数生成安全秘钥,派生参数不同,那么生成的安全秘钥也不同,例如安全器件对安全器件的硬件唯一识别号进行哈希加密,派生参数作为哈希算法的秘钥或盐值。为了进一步提高第一安全秘钥的安全性,基于本申请第二方面的第三种可能的实现方式,在本申请第二方面的第四种可能的实现方式中,加密模块发送的第一安全秘钥派生请求中可以包括第一口令,安全器件可以根据第一口令生成第一安全秘钥,口令不同,安全器件生成的安全秘钥不同。
基于本申请第二方面第一种可能的实现方式至第四种可能的实现方式中任意一种可能的实现方式,在本申请第二方面第五种可能的实现方式中,接收模块还用于,在所述发送模块向所述目标CA发送口令设置结果之后,接收所述目标CA发送的口令验证请求,所述口令验证请求包括第二口令;所述加密模块还用于,响应于所述接收模块接收到口令验证请求,利用第二加密参数对所述第二口令进行加密得到第二密文,所述第二加密参数包括所述安全器件派生的第二安全秘钥;所述发送模块还用于,根据所述第二密文向所述目标CA发送口令验证结果。目标CA可以根据口令验证结果确定第二口令与第一口令是否相同,从而确定用户是否通过口令验证。
基于本申请第二方面第五种可能的实现方式,在本申请第二方面的第六种可能的实现方式中,口令验证请求可以包括第一密文,加密模块得到第二密文后,可以对第一密文和第二密文进行比较,根据比较结果向目标CA发送口令验证结果,该口令验证结果可以用于指示第一密文和第二密文是否一致,若一致,则目标CA可以判定第二口令和第一口令一致;若不一致,则目标CA可以判定第二口令和第一口令不一致。
需要说明的是,在本申请第二方面第五种可能的实现方式和本申请第二方面的第六种可能的实现方式中,为了保证与第一口令相同的第二口令能够通过目标CA的验证,若第二口令与第一口令相同,加密模块对第二口令进行加密所采用的加密算法和加密参数,应与对第一口令进行加密所采用的加密算法和加密参数相同。
为此,在一种可能的实现方式中,加密模块可以仅设置有一种加密算法,或者,为了提高安全性,在一种可能的实现方式中,加密模块可以设置多个加密算法,目标CA发送的口令设置请求和口令验证请求中可以携带与目标CA相关或与用户相关的加密信息,例如加密信息可以为目标CA的标识,或者为用户的账户名,相同的加密信息对应于同一加密算法,加密模块可以根据口令设置请求和口令验证请求中的加密信息确定所采用的加密算法。
基于本申请第二方面第五种可能的实现方式或第六种可能的实现方式,若如本申请第二方面的第二种可能的实现方式所限定的,加密模块对第一口令进行加密时所利用的第一加密参数还包括其他参数,那么在本申请第二方面第七种可能的实现方式中,加密模块对第二口令进行加密时所利用的第二加密参数还包括相应的参数。示例性的,若第一加密参数包括派生设备(比如硬件加解密引擎)派生的根秘钥,那么第二加密参数也包括派生设备派生的根秘钥;若第一加密参数还包括加密模块在接收到口令设置请求后生成的随机字符串,那么第二加密参数也包括该随机字符串,例如,口令设置结果和口令验证请求中可以包括该随机字符串,加密模块从口令验证请求中获取该随机字符串。
基于本申请第二方面第五种可能的实现方式至第七种可能的实现方式中任一种可能的实现方式,第二安全秘钥为安全器件派生的,具体的,在本申请第二方面第八种可能的实现方式中,加密模块可以响应于口令验证请求向安全器件发送第二秘钥派生请求,安全器件可以根据第二秘钥派生请求生成第二安全秘钥。
基于本申请第二方面第八种可能的实现方式,若如本申请第二方面的第四种可能的实现方式,加密模块发送的第一安全秘钥派生请求中包括第一口令,安全器件可以根据第一口令生成第一安全秘钥,那么,在本申请第二方面的第九种可能的实现方式中,加密模块发送的第二秘钥派生请求可以包括第二口令,安全器件可以根据第二口令生成第二安全秘钥。若第一口令和第二口令不同,安全器件生成的第一安全秘钥和第二安全秘钥不同;若第一口令和第二口令相同,安全器件生成的第一安全秘钥和第二安全秘钥相同,也就是说,有利于进一步提高安全秘钥的安全性。
基于本申请第二方面第五种可能的实现方式至第七种可能的实现方式中任一种可能的实现方式,第二安全秘钥为安全器件派生的,引入安全器件参与加密过程,可能导致口令验证时长增加,为了提高口令验证的效率,在本申请第二方面第八种可能的实现方式中,加密模块在获取到安全器件生成的第一安全秘钥后,加密模块可以利用哈希算法计算第一口令的散列值或第一口令和携带于口令设置结果中的随机字符串的散列值,该哈希算法可以为MD5、SHA1、SHA224、SHA256、SHA384、SHA512中的一个或多个,加密模块可以根据该散列值得到第一索引,按照第一索引将第一安全秘钥保存在TEE的存储介质中,例如TEE的安全内存或缓存(buffer)中;加密模块在接收模块接收到口令验证请求后,可以计算第二口令的散列值或第二口令和携带于口令验证请求中的随机字符串的散列值,加密模块可以根据该散列值得到第二索引,按照第二索引从TEE的存储介质中读取第二安全秘钥。若第二口令与第一口令相同,那么第二索引与第一索引相同,加密模块从TEE的存储介质中获取到的第二安全秘钥为保存的第一安全秘钥,从而使得第二密文与第一密文相同;若第二口令与第一口令不同,那么第二索引与第一索引不同,加密模块无法从TEE的存储介质中获取之前保存的第一安全秘钥,那么即使第二安全秘钥被窃取,也有利于保证第一密文的安全。加密模块可以将第一安全秘钥保存在缓存中,具体的,保存的形式可以为数组或链表等。
基于本申请第二方面第八种可能的实现方式,第一安全秘钥被保存在TEE的存储介质后,可能被篡改,或者在计算机系统重启后,保存在TEE的安全内存或缓存中的第一安全秘钥会丢失,因此,若加密模块响应于口令验证请求,按照第二索引无法从TEE的存储介质中读取第二安全秘钥(比如存储内容为空),加密模块可以向安全器件获取第二安全秘钥;或者,若加密模块利用第二安全秘钥得到的第二密文与第一密文不同,在本申请第二方面第九种可能的实现方式中,加密模块可以向安全器件发送秘钥派生请求,获取安全器件派生的第三安全秘钥,利用第三安全秘钥再次对第二口令进行加密得到第三密文,发送模块根据第三密文向目标CA发送口令验证结果。
基于本申请第二方面第九种可能的实现方式,若加密模块得到的第三密文与第一密文相同,在本申请第二方面第十种可能的实现方式中,加密模块可以判定第二口令与第一口令相同,即为标准口令,可以根据第二口令的散列值确定第三索引,按照第三索引将第三安全秘钥存储在TEE的存储介质中。
本申请第三方面提供一种计算机设备,该计算机设备包括处理器和存储器,该处理器在运行存储器存储的计算机指令时,执行如本申请实施例第一方面或第一方面的任意一种可能的实现方式中的方法。
本申请第四方面提供一种计算机可读存储介质,该计算机可读存储介质包括指令,当指令在计算机上运行时,使得计算机执行如本申请实施例第一方面或第一方面的任意一种可能的实现方式中的方法。
本申请第五方面提供一种计算机程序产品,该计算机程序产品包括指令,当指令在计算机上运行时,使得计算机执行如本申请实施例第一方面或第一方面的任意一种可能的实现方式中的方法。
本申请第六方面提供一种处理装置,该装置可以为芯片,该装置包括一个或多个模块用于实现本申请实施例第一方面或第一方面的任意一种可能的实现方式中的方法。在一种实现方式下,该装置包括一个或多个处理核以及接口电路,所述一个或多个处理核用于通过所述接口电路读取软件程序以实现前述方法。在另一种实现方式下,该装置包括硬件电路组成的一个或多个模块,该一个或多个模块共同实现前述方法。
由于本申请实施例提供的各装置可用于执行前述对应的实施例方法,因此本申请各装置实施例所能获得到的技术效果可参考前述对应的方法实施例,此处不再赘述。
附图说明
图1是终端设备的一个结构示意图;
图2是本申请信息处理方法一个实施例示意图;
图3A是口令设置界面的一个示意图;
图3B是口令验证界面的一个示意图;
图3C是口令修改界面的一个示意图;
图3D是口令输入错误的提示界面一个示意图;
图4A是本申请口令设置方法一个实施例示意图;
图4B是本申请口令验证方法一个实施例示意图;
图4C是本申请口令修改方法一个实施例示意图;
图5是本申请口令验证方法另一个实施例示意图;
图6是本申请信息处理装置一个实施例示意图;
图7是本申请计算机设备一个实施例示意图。
具体实施方式
本申请实施例提供了一种信息处理方法及装置,本申请实施例方法可以应用于计算机系统,示例性的,该计算机系统可以为终端设备,常见的终端设备例如包括:手机、平板电脑、台式电脑、可穿戴设备(例如智能手表)、智能家庭设备(例如智能音响或智能电视或智慧屏等)、车载智能设备、无人驾驶设备、虚拟现实设备、增强现实设备、混合现实设备、以及人工智能设备等。下面以计算机系统为终端设备为例,结合附图,对本申请的实施例进行描述。
随着移动互联网的发展,智能终端设备的应用越来越广泛。为了提供智能终端设备的丰富功能和可扩展属性,终端设备通常是构建在提供开放式操作环境的富执行环境(rich execution envrironment,REE)之上,REE也被称作一般运行环境,主要包括运行于通用处理器上的富操作系统(rich operating system,Rich OS),或称REE操作系统,和运行在REE操作系统上的客户端应用程序(client application,CA)。但是,开放式的环境为信息泄露和恶意软件传播提供了通道,使终端设备暴露在不断增长的多种形式的攻击之下,导致终端设备的安全问题日益凸显。
为了保护用户隐私和信息安全,全球平台组织提出了可信执行环境(trustedexecution environment,TEE)标准。图1是终端设备的一个结构示意图,参考图1,终端设备构建在REE和TEE之上,TEE是运行于REE之外的独立运行环境,主要包括可信操作系统(trusted operating system,Trusted OS),或称TEE操作系统,和运行在TEE操作系统上的一个或多个可信应用程序(trusted application,TA),图1中以TEE操作系统中运行TA1和TA2为例,以REE操作系统中运行CA1和CA2为例,TEE与REE隔离。运行在TEE操作系统上的每一个TA都是独立的,TA不能未经授权访问另一个TA的安全资源。REE无法直接访问TEE的硬件和软件资源,二者只能通过授权的应用程序编程接口(application programminginterface,API)进行交互,为了简化描述,本申请描述的TEE中的进程(比如TA的进程或TEE操作系统的进程)和REE中的进程(比如CA的进程或REE操作系统的进程)之间的交互,不再强调是通过API实现的。因此TEE能够抵御在REE侧发生的软件攻击。例如,终端设备的部分存储介质(称作TEE的存储介质)被配置为安全属性,只能被TEE中的进程访问;其余存储介质未被配置为安全属性,只能被REE中的进程访问;部署在TEE中的安全器件仅能被TEE中的进程调用。
由于TA的安全性,CA可以通过TEE的API调用TA执行安全服务,例如,CA可以请求TA提供与加密相关的服务。下面对现有技术中TA为CA提供加密服务的方法进行介绍。
TA通常采用哈希函数对CA请求加密的加密信息进行加密,将得到的密文返回至CA。为了提高加密信息的安全性,TA一般在加密过程中引入加密参数,加密参数可以作为哈希函数的盐值或秘钥。加密参数被窃取的难度越高,密文被破解的难度越高,加密信息的安全性越高。由于调用派生设备(比如硬件加解密引擎)派生根秘钥所需的权限等级较高,为了进一步增加由密文破解出加密信息的难度,现有技术中,TA调用派生设备派生终端设备的根秘钥,以根秘钥为哈希函数的盐值或秘钥,对加密信息进行加密得到密文。
快速启动(Fastboot)是一种刷机模式,在fastboot阶段,fastboot组件具有较高权限,通过向fastboot组件注入恶意代码等方式,可以通过fastboot组件调用派生设备派生设备根秘钥,导致设备根秘钥泄露,从而降低密文的破解难度,降低加密信息的安全性。
为了解决上述问题,本申请提供一种信息处理方法,参考图2,以该TEE操作系统中部署的某个TA(称作目标TA)和该REE操作系统中部署的某个CA(称作目标CA)为例,本申请信息处理方法一个实施例可以包括如下步骤:
201、目标TA获取目标CA发送的加密信息;
202、目标TA获取安全器件派生的第一安全秘钥;
在一种可能的实现方式中,目标TA接收到加密信息后,可以向安全器件发送秘钥派生请求。安全器件接收到目标TA发送的秘钥派生请求后,可以利用秘钥派生请求中携带的信息派生秘钥。可选的,为了提高第一安全秘钥的安全性,秘钥派生请求可以包括加密信息,安全器件可以根据加密信息派生第一安全秘钥,例如,安全器件可以将加密信息混入安全器件的硬件唯一识别号中,对混入加密信息的硬件唯一识别号进行加密,得到第一安全秘钥。
203、目标TA利用第一安全秘钥对加密信息进行加密,得到第一密文;
目标TA获取到第一安全秘钥后,可以以第一安全秘钥作为加密算法(比如哈希函数)的一个加密参数,利用该加密算法对加密信息进行加密,得到第一密文。
204、目标TA将第一密文发送给目标CA。
安全器件通常以芯片形式存在于计算机系统中,具体的,一般以单独芯片(eSE)的形式或集成在计算机系统的主处理器(inSE)中的形式设置于计算机系统中。为防止外部恶意解析攻击,保护数据安全,安全器件中一般具有加密解密的逻辑电路,可以为有调用权限的TA派生安全秘钥,示例性的,安全器件可以对安全器件的硬件唯一识别号进行哈希加密得到安全秘钥。调用安全器件派生秘钥所需的权限很高,即使在fastboot阶段,由于安全器件的镜像通常未被加载,fastboot组件难以调用安全器件派生第一安全秘钥,和现有技术相比,TEE利用安全器件派生的第一安全秘钥对加密信息进行加密,有利于增加第一密文被破解的难度,提高加密信息的安全性。
为了提高加密算法的安全性,通常向步骤203所采用的加密算法(或称加密运算)中引入加密参数,引入的加密参数可以作为加密算法的盐值或秘钥,常见的同时支持引入盐值和秘钥的加密算法可以为基于密码的消息认证码(cipher-based messageauthentication code,CMAC)。步骤203中,第一安全秘钥可以作为加密算法的盐值或者秘钥。
在一种可能的实现方式中,为了进一步提高加密信息的安全性,步骤203中,还可以向加密运算中引入其他加密参数,示例性的,加密参数还可以包括根秘钥,或者,包括目标TA生成的随机字符串,或者包括根秘钥和随机字符串。
本申请上述任一实施例可以用于多种应用场景中,例如用于对待保存的信息进行加密,或者,可以应用于口令的处理流程中。
口令的处理流程一般包括口令设置流程、口令验证流程和标准口令修改流程等,口令主要用于身份验证,用于限制访问需保护的文件或应用的界面等内容的用户。以桌面锁屏的口令处理流程为例,口令设置流程中,CA可以获取并保存用户1输入的标准口令,图3A为用户1输入标准口令的用户界面的示意图,用户输入的口令除了是数字,还可以是图形、手势、文字等;口令验证流程中,当用户2需要访问桌面时,CA可以获取用户2输入的待验证口令,图3B为用户2输入待验证口令的用户界面的示意图,之后判断待验证口令和保存的标准口令是否一致,若一致,则判定用户2与用户1为同一用户,显示桌面,参考图3C,若不一致,则不显示桌面,可以提示口令输入错误,参考图3D;标准口令修改流程一般包括口令验证流程和口令设置流程,当CA判定用户输入正确的口令后,方能进入口令设置流程,利用用户输入的新的标准口令替换原标准口令。
为了保证保存的标准口令的安全性,在口令设置流程中,CA通常调用目标TA执行对用户输入的口令进行加密的任务,目标TA可以利用上述任一实施例方法执行该加密任务。示例性的,图4A为本申请口令设置方法一个实施例示意图,参考图4A,本申请口令设置方法一个可能的实施例可以包括如下步骤:
401A、目标CA获取用户1输入的口令1;
当用户1希望为终端设备中的某个内容(比如终端设备的桌面)设置标准口令时,REE中的目标CA,比如锁屏应用程序(screen lock app)可以获取用户1输入的口令1。
402A、目标TA获取目标CA发送的口令1;
目标CA可以向目标TA发送标准口令设置请求,该请求中包括口令1,以请求目标TA对口令1进行加密,得到其签名。请求中还可以包括目标CA的标识等其他信息。
403A、目标TA向安全器件发送秘钥派生请求,包括口令1;
目标TA可以向安全器件发送秘钥派生请求,一种可能的实现方式中,为了提高派生的秘钥的安全性,秘钥派生请求中可以包括口令1。
404A、安全器件利用口令1派生秘钥1;
安全器件接收到目标TA发送的秘钥派生请求后,可以利用秘钥派生请求中的信息(以口令1为例)和安全器件的硬件唯一识别号派生秘钥1,在实际应用中,秘钥派生请求中还可以包括目标TA的标识等其他信息。
405A、目标TA获取安全器件返回的秘钥1;
406A、目标TA获取派生设备派生的根秘钥;
具体的,目标TA可以向派生设备发送根秘钥派生请求,派生设备可以根据根秘钥派生请求派生根秘钥,并将派生的根秘钥返回至目标TA,目标TA可以获取到派生设备返回的根秘钥。
407A、目标TA获取随机数1;
例如,目标TA可以利用目标TA中的随机数生成器获取随机数1。
408A、目标TA利用秘钥1、根秘钥和随机数1对口令1进行加密,得到签名1;
采用的加密算法为单向函数,例如哈希函数(如CMAC)。本申请实施例中,可以将目标TA对口令加密后得到的密文称作签名。在一些实施例中,对口令1进行加密所用的加密参数还可以包括目标CA发送的请求中口令1以外的其他信息,比如目标CA的标识等。
409A、目标TA将签名1和随机数1发送给目标CA;
例如,目标TA可以通过传递(handle)信息将签名1和随机数1发送给目标CA。
410A、目标CA保存签名1和随机数1。
目标TA可以对目标CA发送的请求进行反馈,反馈的信息可以包括签名1和随机数1,此外,还可以包括目标CA的标识等。
之后,目标CA可以向用户1输出提示信息,提示用户1已成功将口令1设置为访问该内容(比如桌面)的标准口令。
不限定以下三个过程之间的先后顺序,只要在步骤408A之前完成即可:目标TA调用秘钥1的过程(即步骤403A至步骤405A)、调用根秘钥的过程(即步骤406A)以及生成随机数1的过程(即步骤407A)。
在一些实施例中,可以不执行调用根秘钥的过程,目标TA利用秘钥1和生成的随机数对口令1进行加密;或者,不执行生成随机数1的过程,目标TA利用秘钥1和根秘钥对口令1进行加密;或者不执行调用根秘钥的过程和生成随机数1的过程,目标TA利用秘钥1对口令1进行加密。
在口令验证流程中,目标TA需要利用与口令设置流程中相同的加密算法对目标CA发送的待验证口令进行加密得到签名2。之后,目标TA可以将签名2反馈给目标CA,由目标CA比较签名2和保存的签名1是否一致,从而判断获取到的待验证口令是否正确;或者,目标CA发送的口令验证请求可以包括签名1,目标TA可以在得到签名2后,比较签名2和目标CA发送的签名1是否一致,并将比较结果反馈给目标CA,供目标CA判断获取到的待验证口令是否正确。示例性的,参考图4B,本申请口令验证方法一个可能的实施例可以包括如下步骤:
401B、目标CA获取用户2输入的口令2;
用户1为终端设备中的某个内容(比如终端设备的桌面)设置标准口令后(即步骤411A完成后),当用户2希望访问终端设备的桌面时,目标CA,比如锁屏应用,可以获取用户2输入的口令2。
402B、目标TA获取目标CA发送的口令2、签名1和随机数1;
目标CA可以向目标TA发送口令验证请求,该请求中包括口令2,还包括保存的签名1和随机数1,以请求目标TA利用签名1和随机数1对口令2进行验证。
403B、目标TA向安全器件发送安全秘钥派生请求,包括口令2;
目标TA可以向安全器件发送秘钥派生请求,为了提高派生的秘钥的安全性,若口令设置流程的步骤403A中,秘钥派生请求中包括口令1,那么为了保持一致,步骤403B中的安全秘钥派生请求也包括口令2。
404B、安全器件利用口令2派生秘钥2;
安全器件接收到目标TA发送的秘钥派生请求后,可以利用秘钥派生请求中的信息(以口令2为例)和安全器件的硬件唯一识别号派生秘钥2,在实际应用中,秘钥派生请求中还可以包括目标TA的标识等其他信息。
405B、目标TA获取安全器件返回的秘钥2;
406B、目标TA获取派生设备派生的根秘钥;
407B、目标TA利用秘钥2、根秘钥和随机数1对口令2进行加密,得到签名2;
在图4A对应的流程中,若目标TA对口令1进行加密所用的加密参数还可以包括目标CA发送的请求中口令1以外的其他信息,比如目标CA的标识等,那么步骤407B中,目标TA采用的加密参数还包括相应的信息,比如目标CA的标识等。
408B、目标TA对签名1和签名2进行比较,得到比较结果;
目标TA可以对签名1和签名2进行比较,得到比较结果,该比较结果可以表示签名1和签名2是否一致。
409B、目标TA将比较结果发送给目标CA;
410B、目标CA根据比较结果向用户2输出相应内容。
示例性的,若目标CA为锁屏应用,若比较结果表明签名1和签名2一致,则目标CA可以在屏幕显示桌面;若比较结果表明签名1和签名2不一致,则目标CA可以显示桌面以外的其他界面,比如提示口令输入错误的界面。
在标准口令修改流程中,可以按照图4B对应实施例步骤执行口令验证流程,若步骤411B得到的比较结果表示签名1和签名2一致,步骤412B中目标CA可以向用户2输出新的标准口令的输入界面,之后,可以按照图4A对应的步骤执行口令设置流程,设置新的标准口令,目标CA可以将保存的旧的标准口令的签名删除。具体过程可以参考上述相应实施例步骤,此处不再赘述。
或者,一种可能的实现方式中,目标CA可以将获取到的用于验证身份的口令和新的标准口令一起发给目标TA,以节约流程,提高效率。在口令设置流程中,若标准口令被加密保存,那么在标准口令修改流程中的口令验证流程中,目标TA需要利用相同的加密算法对目标CA发送的待验证口令进行加密。示例性的,参考图4C,标准口令修改流程可以包括如下步骤:
401C、目标CA获取用户3输入的口令3;
用户3为终端设备中的某个内容(比如终端设备的桌面)设置标准口令后(即步骤411A完成后),当用户3希望修改标准口令,以便在下次访问终端设备的桌面时使用新的标准口令通过目标CA的口令验证,此时,目标CA,比如锁屏应用,可以获取用户3输入的待验证口令,称作口令3,和用户3输入的新的标准口令,称作口令4。
402C、目标TA获取目标CA发送的口令3、签名1、随机数1和口令4;
目标CA可以向目标TA发送标准口令修改请求,该请求中包括待验证的口令3,还包括保存的签名1、随机数1和用作新的标准口令的口令4。
403C、目标TA向安全器件发送安全秘钥派生请求,包括口令3;
目标TA可以向安全器件发送秘钥派生请求,为了提高派生的秘钥的安全性,若口令设置流程的步骤403A中,秘钥派生请求中包括口令1,那么为了保持一致,步骤403C中的安全秘钥派生请求也包括口令3。
404C、安全器件利用口令3派生秘钥3;
安全器件接收到目标TA发送的秘钥派生请求后,可以利用秘钥派生请求中的信息(比如口令3)和安全器件的硬件唯一识别号派生秘钥3,秘钥派生请求中还可以包括目标TA的标识等其他信息。
405C、目标TA获取安全器件返回的秘钥3;
406C、目标TA获取派生设备派生的根秘钥;
407C、目标TA利用秘钥3、根秘钥和随机数1对口令3进行加密,得到签名3;
在图4A对应的流程中,若目标TA对口令1进行加密所用的加密参数还可以包括目标CA发送的请求中口令1以外的其他信息,比如目标CA的标识等,那么步骤407C中,目标TA采用的加密参数还包括相应的信息,比如目标CA的标识等。
408C、目标TA判断签名1和签名3是否一致,若一致,则执行步骤411C,若不一致,则执行步骤409C;
409C、目标TA通知目标CA签名3未通过验证;
若签名1和签名3不一致,目标TA可以向目标CA发送表示签名3未通过验证的信息。
410C、目标CA向用户3输出错误提示;
若目标CA接收到签名3未通过验证的信息,目标CA可以拒绝将签名3设置为新的标准口令,可以向用户显示口令输入错误的界面。
411C、目标TA向安全器件发送秘钥派生请求,包括口令4;
412C、安全器件利用口令4派生秘钥4;
413C、目标TA获取安全器件返回的秘钥4;
414C、目标TA获取派生设备派生的根秘钥;
415C、目标TA获取随机数2;
416C、目标TA利用秘钥4、根秘钥和随机数2对口令4进行加密,得到签名4;
417C、目标TA将签名4和随机数2发送给目标CA;
418C、目标CA保存签名4和随机数2;
之后,目标CA可以向用户3输出提示信息,提示用户3已成功将口令4设置为访问该内容(比如桌面)的标准口令。
步骤408C之后,目标TA要么执行步骤409C和步骤410C,要么执行步骤411C至步骤418C,因此在图4C中,将步骤409C和步骤410C设置在同一个虚线框内,将步骤411C至步骤418C设置在同一个虚线框内。
可选的,由于获取安全器件派生的秘钥的效率较低,为了提高效率,可以将第一安全秘钥存储在安全内存中,目标TA对获取到的口令加密时,可以从安全内存中获取第一安全秘钥。
为了提高第一安全秘钥的安全性,在一种可能的实现方式中,可以利用标准口令的散列值作为索引存储第一安全秘钥,目标TA获取到待加密的口令时,可以以该口令的散列值为索引在安全内存中查找第一安全秘钥。
存储第一安全秘钥的过程中所用的标准口令和第一安全秘钥可以为在口令设置流程中获取到的;或者,可以为在口令验证流程中获取到的,具体的,若获取到的待验证口令通过验证,那么该口令为标准口令,安全器件派生的秘钥为秘钥1。
在一种可能的实现方式中,在口令验证流程或上述口令修改流程的口令验证子流程中,目标TA获取到待验证口令时,可以以该口令的散列值为索引在安全内存中查找第一安全秘钥;若对不同的标准口令的加密过程采用的第一安全秘钥相同,在一种可能的实现方式中,在上述口令修改流程的标准口令设置子流程中,也可以以获取到的待验证口令的散列值为索引在安全内存中查找第一安全秘钥。
这样,用户输入的口令与标准口令一致时,目标TA利用获取到的口令的散列值作为索引可以查找到第一安全秘钥,利用第一安全秘钥对获取到的口令进行加密验证,有利于使得服务用户快速的通过验证。
示例性的,参考图5,本申请口令验证方法另一个实施例可以包括如下步骤:
501、目标TA获取目标CA发送的口令验证请求,包括待验证口令和标准签名;
502、目标TA计算待验证口令的散列值;
503、目标TA判断安全内存中在该散列值为索引的地址是否存储安全秘钥,若是,则执行步骤504,若否,则执行步骤505;
504、目标TA利用安全内存中的安全秘钥对待验证口令进行加密,得到待验证签名;
505、目标TA向安全器件获取安全秘钥;
506、目标TA利用安全器件反馈的安全秘钥对待验证口令进行加密,得到待验证签名;
507、若待验证签名和标准签名一致,则目标TA利用待验证口令的散列值为索引将安全器件反馈的安全秘钥存储在安全内存中;
若待验证签名和标准签名不一致,则目标TA不执行利用待验证口令的散列值将安全秘钥存储在安全内存中的操作。
508、目标TA将待验证签名和标准签名的比较结果返回至目标CA。
基于执行步骤504,目标TA可以执行步骤508;基于执行步骤507,目标TA可以执行步骤508。
若待验证签名和标准签名一致,目标TA可以先执行步骤507,之后再执行步骤508;或者,目标TA也可以先执行步骤508,之后再执行步骤507;或者,目标TA可以并行执行步骤507和步骤508。
步骤504至步骤506可以参考前述本申请信息处理方法任一实施例的相应步骤进行理解,此处不再赘述。
在本申请一些实施例中,目标TA可以仅在口令设置流程中将标准口令的散列值将安全秘钥存储在安全内存中,此时,在口令验证方法实施例中可以不执行标准507。
在一种可能的实现方式中,基于步骤504,且待验证签名与标准签名不一致,可能安全内存中的安全秘钥被改动,此时,为了保证正确的口令能够验证成功,目标TA可以执行步骤505至步骤508。
上述主要从计算机系统中的目标TA的角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述目标TA,为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。上述目标TA也可以替换为TEE操作系统中的某个功能模块,将TEE中能够实现上述目标TA实现的功能的模块称作信息处理装置,该信息处理装置部署在可信执行环境TEE操作系统上,所述TEE操作系统部署在计算机系统的TEE内,所述TEE内还部署有安全器件,所述计算机系统上还部署有富执行环境REE,所述REE内部署有REE操作系统,所述REE操作系统上部署有一个或多个客户端应用程序CA。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的功能,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
从功能模块的角度,本领域技术人员可以根据上述方法实施例对信息处理模块进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个功能模块中。上述集成的功能模块既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
例如,以采用集成的方式划分各个功能单元的情况下,图6示出了一种信息处理装置的结构示意图。如图6所示,本申请信息处理装置600的一个实施例可以包括接收模块601、加密模块602和发送模块603,其中,接收模块601,用于获取目标CA发送的加密请求,该加密请求包括加密信息;加密模块602用于利用第一加密参数对加密信息进行加密,得到第一密文,第一加密参数包括安全器件派生的第一安全秘钥;发送模块603用于向目标CA发送加密结果,加密结果包括第一密文。
在一种可能的实现方式中,加密请求可以为口令设置请求,加密信息为第一口令,加密结果为口令设置结果。
在一种可能的实现方式中,所述接收模块601还用于,在所述发送模块603向所述目标CA发送口令设置结果之后,接收所述目标CA发送的口令验证请求,所述口令验证请求包括第二口令;所述加密模块602还用于,响应于所述接收模块601接收到口令验证请求,利用第二加密参数对所述第二口令进行加密得到第二密文,所述第二加密参数包括所述安全器件派生的第二安全秘钥;所述发送模块603还用于,根据所述第二密文向所述目标CA发送口令验证结果。
在一种可能的实现方式中,所述口令验证请求还包括所述第一密文,所述口令验证结果用于指示所述第一密文与所述第二密文是否一致。
在一种可能的实现方式中,所述第一加密参数还包括随机字符串,所述随机字符串为所述加密模块响应于所述口令设置请求生成的;所述口令设置结果、所述口令验证请求和所述第二加密参数还包括所述随机字符串。
在一种可能的实现方式中,所述第二安全秘钥为所述安全器件响应于所述加密模块602发送的第二秘钥派生请求生成的秘钥,所述第二秘钥派生请求为所述加密模块602响应于所述口令验证请求发送的。
在一种可能的实现方式中,所述第一安全秘钥由所述加密模块602按照第一索引保存在所述TEE的存储介质中,所述第一索引由所述加密模块602根据所述第一口令的散列值得到;所述第二安全秘钥由所述加密模块602响应于所述口令验证请求按照第二索引在所述TEE的存储介质中读取,所述第二索引由所述加密模块602根据所述第二口令的散列值得到。
在一种可能的实现方式中,所述第一安全秘钥为所述安全器件响应于所述加密模块602发送的第一安全秘钥派生请求生成的秘钥,所述第一安全秘钥派生请求为所述加密模块602响应于所述口令设置请求发送的。
在一种可能的实现方式中,所述第一安全秘钥派生请求包括所述第一口令,所述第一安全秘钥与所述第一口令相关。
由于本申请实施例提供的各装置可用于执行前述对应的实施例方法,因此本申请各装置实施例所能获得到的技术效果可参考前述对应的方法实施例,此处不再赘述。
上述各模块可以指特定应用集成电路(application-specific integratedcircuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。图7为计算机设备的硬件结构示意图,在一个简单的实施例中,本领域的技术人员可以想到上述信息处理装置可以采用图7所示的形式。
该计算机设备可以包括:处理器射频(radio frequency,RF)电路710、存储器720、输入单元730、显示单元740、传感器750、音频电路760、无线保真(wireless fidelity,WiFi)模块770、处理器780、以及电源790等部件。
本领域技术人员可以理解,图7中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图7对计算机设备的各个构成部件进行具体的介绍:
RF电路710可用于收发信息或通话过程中,信号的接收和发送,特别地,将网络侧设备的下行信息接收后,给处理器780处理;另外,将设计上行的数据发送给网络侧设备。
通常,RF电路710包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,LNA)、双工器等。
此外,RF电路710还可以通过无线通信与网络和其他设备通信。
上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system of mobile communication,GSM)、通用分组无线服务(general packetradio service,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器720可用于存储软件程序以及模块,处理器780通过运行存储在存储器720的软件程序以及模块,从而执行计算机设备的各种功能应用以及数据处理。
存储器720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元730可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。
具体地,输入单元730可包括触控面板731以及其他输入设备732。触控面板731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板731上或在触控面板731附近的操作),并根据预先设定的程式驱动相应的连接装置。除了触控面板731,输入单元730还可以包括其他输入设备732。具体地,其他输入设备732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元740可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种菜单。显示单元740可包括显示面板741,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板741。进一步的,触控面板731可覆盖显示面板741,当触控面板731检测到在其上或附近的触摸操作后,传送给处理器780以确定触摸事件的类型,随后处理器780根据触摸事件的类型在显示面板741上提供相应的视觉输出。虽然在图7中,触控面板731与显示面板741是作为两个独立的部件来实现计算机设备的输入和输入功能,但是在某些实施例中,可以将触控面板731与显示面板741集成而实现计算机设备的输入和输出功能。
计算机设备还可包括至少一种传感器750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板741的亮度,接近传感器可在计算机设备移动到耳边时,关闭显示面板741和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别计算机设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于计算机设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
扬声器761和传声器762可提供用户与计算机设备之间的音频接口。音频电路760可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器761转换为声音信号输出;另一方面,传声器762将收集的声音信号转换为电信号,由音频电路760接收后转换为音频数据,再将音频数据输出处理器780处理后,经RF电路710以发送给比如另一设备,或者将音频数据输出至存储器720以便进一步处理。
WiFi属于短距离无线传输技术,计算机设备通过WiFi模块770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了WiFi模块770,但是可以理解的是,其并不属于计算机设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器780是计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器720内的软件程序和/或模块,以及调用存储在存储器720内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。处理器780可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。虽然图中仅仅示出了一个处理器,该装置可以包括多个处理器或者处理器包括多个处理单元。具体的,处理器780可以是一个单核处理器,也可以是一个多核或众核处理器。该处理器780可以是ARM架构处理器。可选的,处理器780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器780中。
计算机设备还包括给各个部件供电的电源790(比如电池),优选的,电源790可以通过电源管理系统与处理器780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,计算机设备还可以包括摄像头、蓝牙模块等,在此不再赘述。
本申请实施例提供的计算机设备可以为手机、平板电脑、台式电脑、可穿戴设备(例如智能手表)、智能家庭设备(例如智能音响或智能电视)、车载智能设备、无人驾驶设备、虚拟现实设备、增强现实设备、混合现实设备、以及人工智能设备等。
上述实施例,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机执行指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。在本申请实施例中,“多个”指两个或两个以上。
本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的各实施例中,为了方面理解,进行了多种举例说明。然而,这些例子仅仅是一些举例,并不意味着是实现本申请的最佳实现方式。
以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (18)
1.一种信息处理方法,其特征在于,应用于计算机系统,所述计算机系统上部署有富执行环境REE和可信执行环境TEE,所述REE内部署有REE操作系统,所述REE操作系统上部署有一个或多个客户端应用程序CA,所述TEE内部署有安全器件和TEE操作系统,所述TEE操作系统上部署有一个或多个可信应用程序TA,所述方法包括:
目标TA接收目标CA发送的口令设置请求,所述口令设置请求包括第一口令,所述目标TA为所述一个或多个TA中的一个,所述目标CA为所述一个或多个CA中的一个;
所述目标TA利用第一加密参数对所述第一口令进行加密得到第一密文,所述第一加密参数包括所述安全器件派生的第一安全秘钥;
所述目标TA向所述目标CA发送口令设置结果,所述口令设置结果包括所述第一密文。
2.根据权利要求1所述的方法,其特征在于,所述目标TA向所述目标CA发送口令设置结果之后,所述方法还包括:
所述目标TA接收所述目标CA发送的口令验证请求,所述口令验证请求包括第二口令;
所述目标TA利用第二加密参数对所述第二口令进行加密得到第二密文,所述第二加密参数包括所述安全器件派生的第二安全秘钥;
所述目标TA根据所述第二密文向所述目标CA发送口令验证结果。
3.根据权利要求2所述的方法,其特征在于,所述口令验证请求还包括所述第一密文,所述口令验证结果用于指示所述第一密文与所述第二密文是否一致。
4.根据权利要求2所述的方法,其特征在于,所述第一加密参数还包括随机字符串,所述随机字符串为所述目标TA响应于所述口令设置请求生成的,所述口令设置结果、所述口令验证请求和所述第二加密参数还包括所述随机字符串。
5.根据权利要求2至4中任一项所述的方法,其特征在于,所述第二安全秘钥为所述安全器件响应于所述目标TA发送的第二秘钥派生请求生成的秘钥,所述第二秘钥派生请求为所述目标TA响应于所述口令验证请求发送的。
6.根据权利要求2至4中任一项所述的方法,其特征在于,所述第一安全秘钥由所述目标TA按照第一索引保存在所述TEE的存储介质中,所述第一索引由所述目标TA根据所述第一口令的散列值得到;
所述第二安全秘钥是所述目标TA响应于所述口令验证请求按照第二索引在所述TEE的存储介质中读取的,所述第二索引由所述目标TA根据所述第二口令的散列值得到。
7.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一安全秘钥为所述安全器件响应于所述目标TA发送的第一安全秘钥派生请求生成的,所述第一安全秘钥派生请求为所述目标TA响应于所述口令设置请求发送的。
8.根据权利要求7所述的方法,其特征在于,所述第一安全秘钥派生请求包括所述第一口令,所述第一安全秘钥与所述第一口令相关。
9.一种信息处理装置,其特征在于,所述信息处理装置部署在可信执行环境TEE操作系统上,所述TEE操作系统部署在计算机系统的TEE内,所述TEE内还部署有安全器件,所述计算机系统上还部署有富执行环境REE,所述REE内部署有REE操作系统,所述REE操作系统上部署有一个或多个客户端应用程序CA,所述信息处理装置包括:
接收模块,用于接收目标CA发送的口令设置请求,所述口令设置请求包括第一口令,所述目标CA为所述一个或多个CA中的一个;
加密模块,用于利用第一加密参数对所述第一口令进行加密得到第一密文,所述第一加密参数包括所述安全器件派生的第一安全秘钥;
发送模块,用于向所述目标CA发送口令设置结果,所述口令设置结果包括所述第一密文。
10.根据权利要求9所述的信息处理装置,其特征在于,所述接收模块还用于,在所述发送模块向所述目标CA发送口令设置结果之后,接收所述目标CA发送的口令验证请求,所述口令验证请求包括第二口令;
所述加密模块还用于,利用第二加密参数对所述第二口令进行加密得到第二密文,所述第二加密参数包括所述安全器件派生的第二安全秘钥;
所述发送模块还用于,根据所述第二密文向所述目标CA发送口令验证结果。
11.根据权利要求10所述的信息处理装置,其特征在于,所述口令验证请求还包括所述第一密文,所述口令验证结果用于指示所述第一密文与所述第二密文是否一致。
12.根据权利要求10所述的信息处理装置,其特征在于,所述第一加密参数还包括随机字符串,所述随机字符串为所述加密模块响应于所述口令设置请求生成的;所述口令设置结果、所述口令验证请求和所述第二加密参数还包括所述随机字符串。
13.根据权利要求10至12中任一项所述的信息处理装置,其特征在于,所述第二安全秘钥为所述安全器件响应于所述加密模块发送的第二秘钥派生请求生成的秘钥,所述第二秘钥派生请求为所述加密模块响应于所述口令验证请求发送的。
14.根据权利要求10至12中任一项所述的信息处理装置,其特征在于,所述第一安全秘钥由所述加密模块按照第一索引保存在所述TEE的存储介质中,所述第一索引由所述加密模块根据所述第一口令的散列值得到;
所述第二安全秘钥是所述加密模块响应于所述口令验证请求按照第二索引在所述TEE的存储介质中读取的,所述第二索引由所述加密模块根据所述第二口令的散列值得到。
15.根据权利要求9至12中任一项所述的信息处理装置,其特征在于,所述第一安全秘钥为所述安全器件响应于所述加密模块发送的第一安全秘钥派生请求生成的秘钥,所述第一安全秘钥派生请求为所述加密模块响应于所述口令设置请求发送的。
16.根据权利要求15所述的信息处理装置,其特征在于,所述第一安全秘钥派生请求包括所述第一口令,所述第一安全秘钥与所述第一口令相关。
17.一种计算机设备,其特征在于,包括处理器和存储器,所述处理器在运行所述存储器存储的计算机指令时,执行如权利要求1至8中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至8中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910877079.9A CN112596802B (zh) | 2019-09-17 | 2019-09-17 | 一种信息处理方法及装置 |
PCT/CN2020/109782 WO2021052086A1 (zh) | 2019-09-17 | 2020-08-18 | 一种信息处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910877079.9A CN112596802B (zh) | 2019-09-17 | 2019-09-17 | 一种信息处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112596802A CN112596802A (zh) | 2021-04-02 |
CN112596802B true CN112596802B (zh) | 2022-07-12 |
Family
ID=74883862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910877079.9A Active CN112596802B (zh) | 2019-09-17 | 2019-09-17 | 一种信息处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112596802B (zh) |
WO (1) | WO2021052086A1 (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11972034B1 (en) * | 2020-10-29 | 2024-04-30 | Amazon Technologies, Inc. | Hardware-assisted obscuring of cache access patterns |
US11620238B1 (en) | 2021-02-25 | 2023-04-04 | Amazon Technologies, Inc. | Hardware blinding of memory access with epoch transitions |
WO2022251987A1 (zh) * | 2021-05-29 | 2022-12-08 | 华为技术有限公司 | 一种数据加解密方法和装置 |
CN113268353A (zh) * | 2021-06-11 | 2021-08-17 | 海光信息技术股份有限公司 | 一种提供可信内存的方法、装置、处理器芯片和电子设备 |
CN113486375B (zh) * | 2021-07-16 | 2024-04-19 | 青岛海尔科技有限公司 | 设备信息的存储方法和装置、存储介质及电子装置 |
EP4369653A1 (en) * | 2021-08-03 | 2024-05-15 | Huawei Technologies Co., Ltd. | Information processing method and apparatus, and device |
CN113553204B (zh) * | 2021-09-16 | 2021-12-28 | 支付宝(杭州)信息技术有限公司 | 一种数据传输方法及装置 |
CN115017495B (zh) * | 2021-11-09 | 2023-08-08 | 荣耀终端有限公司 | 定时校验方法、电子设备和可读存储介质 |
CN117234351A (zh) * | 2021-11-18 | 2023-12-15 | 荣耀终端有限公司 | 触控处理方法、终端设备以及存储介质 |
CN115017497B (zh) * | 2021-11-24 | 2023-04-18 | 荣耀终端有限公司 | 信息处理方法、装置及存储介质 |
CN113821835B (zh) * | 2021-11-24 | 2022-02-08 | 飞腾信息技术有限公司 | 密钥管理方法、密钥管理装置和计算设备 |
US11755496B1 (en) | 2021-12-10 | 2023-09-12 | Amazon Technologies, Inc. | Memory de-duplication using physical memory aliases |
CN114598541B (zh) * | 2022-03-18 | 2024-03-29 | 维沃移动通信有限公司 | 一种安全评估方法及装置、电子设备和可读存储介质 |
CN114826689B (zh) * | 2022-03-31 | 2024-01-12 | 北京极感科技有限公司 | 信息录入方法、安全认证方法和电子设备 |
CN115174125A (zh) * | 2022-09-07 | 2022-10-11 | 北京笔新互联网科技有限公司 | 可信执行环境中可信真随机数的获取方法及装置 |
CN117353920B (zh) * | 2023-12-04 | 2024-03-01 | 飞腾信息技术有限公司 | 一种密钥派生方法、处理器和相关设备 |
CN117375804B (zh) * | 2023-12-05 | 2024-02-23 | 飞腾信息技术有限公司 | 一种密钥派生方法、相关设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978920A (zh) * | 2016-07-28 | 2016-09-28 | 恒宝股份有限公司 | 一种访问可信应用的方法、ca及ta |
CN106980794A (zh) * | 2017-04-01 | 2017-07-25 | 北京元心科技有限公司 | 基于TrustZone的文件加解密方法、装置及终端设备 |
CN106980793A (zh) * | 2017-04-01 | 2017-07-25 | 北京元心科技有限公司 | 基于TrustZone的通用口令存储及读取方法、装置及终端设备 |
CN108768655A (zh) * | 2018-04-13 | 2018-11-06 | 北京握奇智能科技有限公司 | 动态口令生成方法和系统 |
CN109150548A (zh) * | 2015-12-01 | 2019-01-04 | 神州融安科技(北京)有限公司 | 一种数字证书签名、验签方法及系统、数字证书系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2759955A1 (en) * | 2013-01-28 | 2014-07-30 | ST-Ericsson SA | Secure backup and restore of protected storage |
US20170337390A1 (en) * | 2016-05-18 | 2017-11-23 | Qualcomm Incorporated | Data protection at factory reset |
DE102017213010A1 (de) * | 2017-07-28 | 2019-01-31 | Audi Ag | Gesamtvorrichtung mit einer Authentifizierungsanordnung und Verfahren zur Authentifizierung |
-
2019
- 2019-09-17 CN CN201910877079.9A patent/CN112596802B/zh active Active
-
2020
- 2020-08-18 WO PCT/CN2020/109782 patent/WO2021052086A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109150548A (zh) * | 2015-12-01 | 2019-01-04 | 神州融安科技(北京)有限公司 | 一种数字证书签名、验签方法及系统、数字证书系统 |
CN105978920A (zh) * | 2016-07-28 | 2016-09-28 | 恒宝股份有限公司 | 一种访问可信应用的方法、ca及ta |
CN106980794A (zh) * | 2017-04-01 | 2017-07-25 | 北京元心科技有限公司 | 基于TrustZone的文件加解密方法、装置及终端设备 |
CN106980793A (zh) * | 2017-04-01 | 2017-07-25 | 北京元心科技有限公司 | 基于TrustZone的通用口令存储及读取方法、装置及终端设备 |
CN108768655A (zh) * | 2018-04-13 | 2018-11-06 | 北京握奇智能科技有限公司 | 动态口令生成方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112596802A (zh) | 2021-04-02 |
WO2021052086A1 (zh) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112596802B (zh) | 一种信息处理方法及装置 | |
CN112733107B (zh) | 一种信息验证的方法、相关装置、设备以及存储介质 | |
US11297055B2 (en) | Multifactor contextual authentication and entropy from device or device input or gesture authentication | |
EP3704613B1 (en) | Provisioning trusted execution environment(s) based on chain of trust including platform | |
EP3605989B1 (en) | Information sending method, information receiving method, apparatus, and system | |
US11669465B1 (en) | Secure storage of data through a multifaceted security scheme | |
CN109600223B (zh) | 验证方法、激活方法、装置、设备及存储介质 | |
WO2018157858A1 (zh) | 信息存储方法、装置及计算机可读存储介质 | |
US9762396B2 (en) | Device theft protection associating a device identifier and a user identifier | |
CN111737366B (zh) | 区块链的隐私数据处理方法、装置、设备以及存储介质 | |
EP3704614B1 (en) | Provisioning trusted execution environment based on chain of trust including platform | |
WO2017065992A1 (en) | Multi-factor user authentication framework using asymmetric key | |
CN111324895A (zh) | 用于客户端设备的信任服务 | |
CN108200078B (zh) | 签名认证工具的下载安装方法及终端设备 | |
CN111563251B (zh) | 一种终端设备中私密信息的加密方法和相关装置 | |
CN111475832B (zh) | 一种数据管理的方法以及相关装置 | |
CN115001841A (zh) | 一种身份认证方法、装置及存储介质 | |
CN112632573A (zh) | 智能合约执行方法、装置、系统、存储介质及电子设备 | |
CN108737341B (zh) | 业务处理方法、终端及服务器 | |
CN114389825B (zh) | 一种基于区块链的数据通信方法和相关装置 | |
CN114785845B (zh) | 会话的建立方法、装置、存储介质及电子装置 | |
CN114861207A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |