CN107995230A - 一种下载方法及终端 - Google Patents

一种下载方法及终端 Download PDF

Info

Publication number
CN107995230A
CN107995230A CN201610944665.7A CN201610944665A CN107995230A CN 107995230 A CN107995230 A CN 107995230A CN 201610944665 A CN201610944665 A CN 201610944665A CN 107995230 A CN107995230 A CN 107995230A
Authority
CN
China
Prior art keywords
data
tee
ree
key
instruction
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.)
Granted
Application number
CN201610944665.7A
Other languages
English (en)
Other versions
CN107995230B (zh
Inventor
刘辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Communications Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Communications Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201610944665.7A priority Critical patent/CN107995230B/zh
Publication of CN107995230A publication Critical patent/CN107995230A/zh
Application granted granted Critical
Publication of CN107995230B publication Critical patent/CN107995230B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种下载方法,所述应用于终端,所述终端支持富执行环境(REE)和可信执行环境(TEE),所述方法包括:在所述REE中接收服务器发送的下载命令;所述下载命令包含可信应用的第一数据;通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。

Description

一种下载方法及终端
技术领域
本发明涉及可信应用技术,尤其涉及一种下载方法及终端。
背景技术
随着智能手机软硬件技术的高速发展,用户使用智能手机的频率在显著提高。智能手机给用户带来便利的同时,开放的手机操作系统(如安卓(Android))环境也暴露出越来越多的安全问题。因此提升开放手机操作系统环境的安全性成为了一个亟待解决的问题,尤其是针对高安全应用,比如移动支付、企业应用、内容版权管理等,安全更是重中之重。
基于此,产生了可信执行环境(TEE,Trusted Execution Environment)。TEE是设备上与富执行环境(REE,Rich Execution Environment)((REE,Rich ExecutionEnvironment)并存的运行环境,TEE提供隔离的执行环境。可信应用(TA,TrustedApplication)运行在TEE中,以保证应用的安全性。
在设备上安全、有效地部署TA也是整个安全生态链上非常重要的一环。
然而,目前当TA下载到设备中后,不能再单独下载其他TA,这样就不能安全、有效地在设备上部署TA。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种下载方法及终端。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种下载方法,所述应用于终端,所述终端支持REE和TEE,所述方法包括:
在所述REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;
通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;
在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
上述方案中,所述对所述第三数据进行存储,包括:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
上述方案中,所述在所述TEE中对所述第二数据进行安全处理,包括:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
上述方案中,所述方法还包括:
在所述TEE中,从所述TEE中的第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器。
上述方案中,所述方法还包括:
在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载TA;
通过所述数据通道将所述第一指令传输至所述TEE中;
在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;
对所述第三数据进行解安全处理,得到所述第二数据;加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
上述方案中,所述通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据,包括:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取TA数据;
通过所述数据通道将所述第一指令传输至所述REE中;
在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;
通过所述数据通道将读取的所述第三数据传输至所述TEE中。
上述方案中,所述对所述第三数据进行解安全处理,包括:
在所述TEE中,使用第三密钥对所述第三数据进行签名验证,验证通过后得到加密的第二数据;
使用第四密钥对加密的第二数据进行解密。
本发明实施例还提供了一种终端,所述终端支持REE和TEE,所述终端包括:
第一操作单元,用于在所述REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;以及通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
第二操作单元,用于在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;以及在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
上述方案中,所述第二操作单元,具体用于:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
上述方案中,所述第二操作单元,具体用于:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
上述方案中,所述第二操作单元,还用于在所述TEE中,从所述TEE中的第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器。
上述方案中,所述第一操作单元,还用于:在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载TA;以及通过所述数据通道将所述第一指令传输至所述TEE中;
所述第二操作单元,还用于在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;对所述第三数据进行解安全处理,得到所述第二数据;以及加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
上述方案中,所述第二操作单元,具体用于:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取TA数据;以及通过所述数据通道将所述第一指令传输至所述REE中;
所述第一操作单元,还用于在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;以及通过所述数据通道将读取的所述第三数据传输至所述TEE中。
上述方案中,所述第二操作单元,具体用于:
在所述TEE中,使用第三密钥对所述第三数据进行签名验证,验证通过后得到加密的第二数据;
使用第四密钥对加密的第二数据进行解密。
本发明实施例提供的下载方法及终端,终端支持REE和TEE,在所述REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储,通过REE的代理作用,实现服务器与TEE的安全交互,可实现TA的动态下载,从而提高了下载效率,提升了用户体验。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为TEE与REE关系示意图;
图2为相关技术中TA通过预置的方式下载到手机中示意图;
图3为相关技术中通过FOTA技术下载TA中设备交互示意图;
图4为本发明实施例一下载的方法流程示意图;
图5为本发明实施例二终端结构示意图;
图6为本发明实施例三系统结构示意图;
图7为本发明实施例三TA下载过程中各模块的交互示意图;
图8为本发明实施例三TA存储过程中各模块的交互示意图;
图9为本发明实施例三TA加载过程中各模块的交互示意图;
图10为本发明实施例三安全机制示意图;
图11为本发明实施例三存储机制意图。
具体实施方式
下面结合附图及实施例对本发明再作进一步详细的描述。
TEE提供隔离的执行环境。如图1所示,这种隔离的执行环境是基于ARM Trustzone硬件隔离技术实现的。正是由于TEE具有独立的执行空间,因此比REE的安全级别更高。这里,REE还可以称为普通执行环境,比如Android等。
TA是运行在TEE中的应用,硬件隔离技术可以保证TA不受下载到REE中的应用(App,Application)的影响。TEE和TA的使用可以有效地提升应用的安全性,但同时,安全、有效地部署TA也是整个安全生态链上重要的一环。
现有在手机设备上部署TA的方案主要有以下两种:
第一种,如图2所示,TA通过预置的方式下载到手机系统中,即在手机生产环节部署TA。由于TA是在手机生产环节部署的,所以用户在使用过程中,是无法再下载其他TA的。
第二种,如图3所示,利用现有的空中下载软件升级(FOTA,Firmware Over-The-Air)技术下载TA。具体地,FOTA服务器通过网络,为具有连网功能的设备提供固件升级服务。针对REE,如Android系统,FOTA技术可以进行增量更新,即可以进行App的增量下载。而针对TEE,FOTA技术只能更新整个TEE镜像文件,因此,当需要额外下载TA时,不能只下载TA,而是需要下载更新整个TEE镜像文件。更新TEE镜像文件后,系统需要重新启动来运行可信执行环境加载TA。
通过FOTA技术下载TA,不支持TA的增量下载,如果要进行增量下载,需要下载更新整个TEE镜像文件,如此,下载TA所需的时间长,且下载效率低。另外通过FOTA技术下载TA后,由于是更新了整个TEE镜像文件,所以系统需要重新启动,从而使得用户体验较差。
从上面的描述中可以看出,上述两种方式中,都不能再单独下载TA,进行TA的增量,不能安全、有效地在设备上部署TA。
基于此,在本发明的各种实施例中:在REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
实施例一
本发明实施例提供一种下载方法,具体来说是一种TA的下载方法,应用于终端。该终端支持REE和TEE。其中,所述TEE提供隔离的执行的环境,具有独立的执行空间,可以采用基于ARM Trustzone硬件隔离技术实现。
REE提供普通的操作系统运行,TEE提供安全操作系统运行,由安全操作系统加载并运行TA。
这里,所述普通的操作系统是指开放的操作系统,比如Linux、或Andriod等。
图4为本发明实施例一下载的方法流程示意图。如图4所示,该方法包括以下步骤:
步骤401:在所述REE中接收服务器发送的下载命令;
这里,所述下载命令包含TA的第一数据。
步骤402:通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
步骤403:在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;
步骤404:在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
这里,所述在所述TEE中对所述第二数据进行安全处理,得到第三数据,具体包括:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
其中,实际应用时,为了安全性,可以将第一密钥(加密密钥)和第二密钥(签名密钥)存储在安全度高的区域(比如eFuse区或者回环保护分区(RPMB,Replay ProtectMemory Block)等)。
这里,eFuse是指编程熔丝,使用该技术能确保该区域只能写入1次数据,通常用于保护关键数据。
基于此,在一实施例中,该方法还可以包括:
在所述TEE中从第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器(安全度高的区域)。
所述对所述第三数据进行存储,具体包括:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
其中,目前TA的存储方案是将TA存储在TEE中,这就需要TEE实现文件系统,从而增加了TEE操作系统实现的复杂性。而在本发明实施例中,将所述第三数据存储至所述REE中的第一非易失性存储器中,将TA加密存储在REE中,这样REE和TEE可以共享REE的文件系统,从而可以有效地降低TEE系统功能的复杂性。
当将TA存储至所述第一非易失性存储器后,在TEE中生成下载响应;
通过所述数据通道将所述下载响应传输至所述REE中;
在所述REE中,将所述下载响应发送给所述服务器。
实际应用时,所述第一非易失性存储器可以是:文件系统的/system分区。
当将所述TA存储至所述REE中的第一非易失性存储器后,可以通过REE中的App来实现TA在TEE的加载。
基于此,在一实施例中,该方法还可以包括:
在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载TA;
通过所述数据通道将所述第一指令传输至所述TEE中;
在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;
对所述第三数据进行解安全处理,得到所述第二数据;加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
其中,所述通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据,具体包括:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取TA数据;
通过所述数据通道将所述第一指令传输至所述REE中;
在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;
通过所述数据通道将读取的所述第三数据传输至所述TEE中。
所述对所述第三数据进行解安全处理,具体包括:
在所述TEE中,使用第三密钥对所述第三数据进行签名验证,签名验证通过后得到加密的第二数据;
使用第四密钥对加密的第二数据进行解密。
这里,实际应用时,根据加密时所采用加密算法,第一密钥与第四密钥可以相同,也可以不同。具体来说,如果采用的加密算法是对称加密算法,那么第一密钥与第四密钥相同;如果采用的加密算法是非对称加密算法,则第一密钥与第四密钥不同。
对于第二密钥和第三密钥,由于这两个密钥是用于数字签名/验证的,所以一般来讲是不同的。
相应地,第三密钥和第四密钥也可以存储在所述第二非易失性存储器中。那么,在对第三数据进行签名验证以及解密之前,先从所述第二非易失性存储器中读取第三密钥和第四密钥,再使用第三密钥对所述第三数据进行签名验证,签名验证通过后得到加密的第二数据;并使用第四密钥对加密的第二数据进行解密。
实际应用时,实时本发明实施例的方案,需要额外增加服务器(可以称为远程服务器),当在TEE中运行TA后,所述服务器可以基于应用安全策略,来确定是否删除运行的TA,当确定需要删除运行的TA时,需要向终端发送删除命令,以删除对应的TA。
基于此,在一实施例中,该方法还可以包括:
在所述REE中接收所述服务器发送的第一删除命令;
通过所述数据通道将所述第一删除命令传输至所述TEE中;
在所述TEE中对所述删除命令进行安全验证,并在验证通过后响应所述删除命令,在所述TEE中删除对应的TA,并生成第二删除命令;
通过所述数据通道将所述第二删除命令传输至所述REE中;
在REE中,响应所述第二删除命令,从所述第一非易失性存储器中删除对应的TA数据。
当然,实际应用时,所述服务器还可以具有其他功能,比如:TA生命周期状态管理、应用数据个人化等等。
本发明实施例提供的下载方法,终端在REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储,通过REE的代理作用,实现服务器与TEE的安全交互,可实现TA的动态下载,从而提高了下载效率,提升了用户体验。
另外,TA下载后,在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载TA;通过所述数据通道将所述第一指令传输至所述TEE中;在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;对所述第三数据进行解安全处理,得到所述第二数据;加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话,利用REE可在TEE中动态加载TA,由于并没有改变TEE的镜像文件,只是加载TA,不需要重新启动终端,如此,进一步提升了用户体验。
通过所述数据通道将所述第三数据传输至所述REE中;在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中,将TA数据存储至REE中,REE和TEE可以共享REE的文件系统,如此,有效地降低了TEE系统功能的复杂度。
而且,在所述TEE中,使用第一密钥对所述第二数据进行加密;并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据,使用TEE的加密机制保护TA的存储,提升了TA存储的安全性。
实施例二
为实现本发明实施例的方法,本实施例提供一种终端,该终端支持REE和TEE。其中,所述TEE提供隔离的执行的环境,具有独立的执行空间,可以采用基于ARM Trustzone硬件隔离技术实现。
REE提供普通的操作系统运行,TEE提供安全操作系统运行,由安全操作系统加载并运行TA。
这里,所述普通的操作系统是指开放的操作系统,比如Linux、或Andriod等。
图5为本发明实施例二终端结构示意图。如图5所示,该终端包括:
第一操作单元51,用于在所述REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;以及通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
第二操作单元52,用于在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;以及在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
其中,所述第二操作单元52,具体用于:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
这里,实际应用时,为了安全性,可以将第一密钥(加密密钥)和第二密钥(签名密钥)存储在安全度高的区域(比如eFuse区或者RPMB等)。
其中,eFuse是指编程熔丝,使用该技术能确保该区域只能写入1次数据,通常用于保护关键数据。
基于此,在一实施例中,所述第二操作单元52,还用于在所述TEE中,从所述TEE中的第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器(安全度高的区域)。
所述第二操作单元52,具体用于:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
其中,目前TA的存储方案是将TA存储在TEE中,这就需要TEE实现文件系统,从而增加了TEE操作系统实现的复杂性。而在本发明实施例中,将所述第三数据存储至所述REE中的第一非易失性存储器中,将TA加密存储在REE中,这样REE和TEE可以共享REE的文件系统,从而可以有效地降低TEE系统功能的复杂性。
当将所述TA存储至所述第一非易失性存储器后,所述第二操作单元52在TEE中生成下载响应;并通过所述数据通道将所述下载响应传输至所述REE中;
在所述REE中,所述第一操作单元51将所述下载响应发送给所述服务器。
实际应用时,所述第一非易失性存储器可以是:文件系统的/system分区。
当将所述TA存储至所述REE中的第一非易失性存储器后,可以通过REE中的App来实现TA在TEE的加载。
基于此,在一实施例中,所述第一操作单元51,还用于:在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载TA;以及通过所述数据通道将所述第一指令传输至所述TEE中;
所述第二操作单元,还用于在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;对所述第三数据进行解安全处理,得到所述第二数据;以及加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
其中,所述第二操作单元52,具体用于:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取TA数据;以及通过所述数据通道将所述第一指令传输至所述REE中;
所述第一操作单元51,还用于在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;以及通过所述数据通道将读取的所述第三数据传输至所述TEE中。
所述对所述第三数据进行解安全处理,具体包括:
在所述TEE中,所述第二操作单元52使用第三密钥对所述第三数据进行签名验证,签名验证通过后得到加密的第二数据;
所述第二操作单元52使用第四密钥对加密的第二数据进行解密。
这里,实际应用时,根据加密时所采用加密算法,第一密钥与第四密钥可以相同,也可以不同。具体来说,如果采用的加密算法是对称加密算法,那么第一密钥与第四密钥相同;如果采用的加密算法是非对称加密算法,则第一密钥与第四密钥不同。
对于第二密钥和第三密钥,由于这两个密钥是用于数字签名/验证的,所以一般来讲是不同的。
相应地,第三密钥和第四密钥也可以存储在所述第二非易失性存储器中。那么,在对第三数据进行签名验证以及解密之前,所述第二操作单元52先从所述第二非易失性存储器中读取第三密钥和第四密钥,再使用第三密钥对所述第三数据进行签名验证,签名验证通过后得到加密的第二数据;并使用第四密钥对加密的第二数据进行解密。
实际应用时,实时本发明实施例的方案,需要额外增加服务器(可以称为远程服务器),当在TEE中运行TA后,所述服务器可以基于应用安全策略,来确定是否删除运行的TA,当确定需要删除运行的TA时,需要向终端发送删除命令,以删除对应的TA。
基于此,在一实施例中,所述第一操作单元51,还用于在所述REE中接收所述服务器发送的第一删除命令;通过所述数据通道将所述第一删除命令传输至所述TEE中;以及在REE中,响应所述第二删除命令,从所述第一非易失性存储器中删除对应的TA数据;
所述第二操作单元52,还用于在所述TEE中对所述删除命令进行安全验证,并在验证通过后响应所述删除命令,在所述TEE中删除对应的TA,并生成第二删除命令;通过所述数据通道将所述第二删除命令传输至所述REE中。
当然,实际应用时,所述服务器还可以具有其他功能,比如:TA生命周期状态管理、应用数据个人化等等。
实际应用时,所述第一操作单元51及第二操作单元52可由终端中的中央处理器(CPU,Central Processing Unit)、微处理器(MCU,Micro Control Unit)、数字信号处理器(DSP,Digital Signal Processor)或可编程逻辑阵列(FPGA,Field-Programmable GateArray)实现。
本发明实施例提供的方案,所述第一操作单元51在REE中接收服务器发送的下载命令;所述下载命令包含TA的第一数据;通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;所述第二操作单元52在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储,通过REE的代理作用,实现服务器与TEE的安全交互,可实现TA的动态下载,从而提高了下载效率,提升了用户体验。
另外,TA下载后,在所述REE中,所述第一操作单元51生成第一指令;所述第一指令用于在所述TEE中加载TA;通过所述数据通道将所述第一指令传输至所述TEE中;在所述TEE中,所述第二操作单元52响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;对所述第三数据进行解安全处理,得到所述第二数据;加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话,利用REE可在TEE中动态加载TA,由于并没有改变TEE的镜像文件,只是加载TA,不需要重新启动终端,如此,进一步提升了用户体验。
通过所述数据通道将所述第三数据传输至所述REE中;在所述REE中,所述第一操作单元51将所述第三数据存储至所述REE中的第一非易失性存储器中,将TA数据存储至REE中,REE和TEE可以共享REE的文件系统,如此,有效地降低了TEE系统功能的复杂度。
而且,在所述TEE中,所述第二操作单元52使用第一密钥对所述第二数据进行加密;并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据,使用TEE的加密机制保护TA的存储,提升了TA存储的安全性。
实施例三
在实施例一、二的基础上,本实施例以手机为例,详细描述TA的下载、存储及加载过程。
图6为实施本发明实施例的系统结构示意图。如图6所示,该系统包括:TEE可信服务管理(TSM,Trusted Service Management)服务器(远程服务器)及手机,而终端支持REE和TEE。其中,在REE中,包括:TEE代理、TEE通信模块、TEE存储模块及文件系统(比如Andriod文件系统)。在TEE中,包括TEE核心处理模块和TA管理模块(Admin TA)。
这里,REE提供Andriod运行,REE提供TEE操作系统(OS)运行。
下面描述各模块的功能。其中,
1)远程服务器负责管理TA,包括应用下载、删除,应用数据个人化,应用生命周期状态管理,实施安全策略等。
其中,安全策略可以根据需要来制定。比如可以根据TA的生命周期等。
2)TEE代理负责处理TEE与远程服务器之间的消息,具体地,将远程服务器指令传递给TEE,将TEE执行结果返回给远程服务器。
3)TEE存储模块是预置在手机的REE中的系统服务,具有高权限,可访问REE文件系统的/system分区。TEE存储模块负责接收TEE核心处理模块命令,以存储TA。
4)TEE核心处理模块是TEE的系统功能模块;实现REE与TEE之间的安全交互。
5)Admin TA是预置在TEE中的一个TEE,负责处理远程服务器的命令,应用安全策略,进行TA的下载、加载、删除等。
图7为本实施例TA下载过程中各模块的交互示意图。在图7中,表示参与下载过程的各模块。结合图6和7,本实施例TA下载的过程,主要包括以下步骤:
步骤701:在REE中,远程服务器与TEE代理建立连接,之后实施应用安全策略,发起下载TA命令,传输TA数据到TEE代理;
步骤702:TEE代理收到命令和数据后,调用TEE通信模块,以建立与TEE核心处理模块的会话,将命令和数据传送到TEE核心处理模块;
这里,TEE通信模块与TEE核心处理模块的会话建立后,表明REE与TEE之间的数据通道已建立。
步骤703:TEE核心处理模块将下载命令和TA数据传递给Admin TA;
步骤704:Admin TA对下载命令进行安全验证,并对TA数据解密;
这里,工厂安区生产环境预置TEE的相关密钥,同时将相关密钥通过安全方法传输给远程服务器。这样,远程服务器使用密钥加密待下载的TA数据,使用签名密钥计算加密TA的签名;然后再发送给TEE代理。
相应地,Admin TA使用签名密钥验证加密TA的签名,验证通过,使用加解密密钥解密TA数据。
步骤705:Admin TA调用TEE核心处理模块的可信存储接口存储TA数据,以进行TA数据的安全存储。
这里,当Admin TA调用TEE核心处理模块存储TA数据后,会通过TEE核心处理模块及TEE通信模块给TEE代理发送执行结果;TEE代理收到执行结果后,向远程服务器发送执行结果。
图8为本实施例TA安全存储过程中各模块的交互示意图。在图8中,表示参与存储过程的各模块。结合图6和8,本实施例TA存储的过程,主要包括以下步骤:
步骤801:被Admin TA调用后,TEE核心处理模块使用TEE存储的密钥加密TA数据,发起存储TA命令;
这里,命令中携带加密的TA数据。
其中,TEE核心处理模块使用存储在TEE高安区(eFuse或RPMB区)的密钥加密TA数据,使用存储在TEE高安区(eFuse或RPMB区)的签名密钥对加密TA数据进行签名,并生成存储TA命令。
步骤802:TEE通信模块收到存储TA命令后,将命令传输给TEE存储模块;
步骤803:TEE存储模块接收到TEE核心处理模块传输的命令后,将签名后的加密TA数据存储到/system分区;
步骤804:TEE存储模块将执行结果通过TEE通信模块返回给TEE核心处理模块;
步骤805:TEE核心处理模块将执行结果发送给Admin TA。
图9为本实施例TA安全加载过程中各模块的交互示意图。在图9中,表示参与存储过程的各模块。结合图6和9,本实施例TA加载的过程,主要包括以下步骤:
步骤901:REE中,App调用TEE通信模块,向TEE核心处理模块发送请求,调用TA;
步骤902:TEE核心处理模块处理请求,通过TEE通信模块,向TEE存储模块发送读取请求;
步骤903:TEE存储模块收到请求后,从REE/system分区中读取TA数据;
步骤904:TEE存储模块通过TEE通信模块,将读取的TA数据发送给TEE核心处理模块;
步骤905:TEE核心处理模块收到TA数据后,验证TA数据的签名,验证成功后解密TA数据,加载TA数据到TEE内核空间运行;
步骤906:TEE核心处理模块将普通执行环境App的命令传递给运行的TA,以使App与TA建立会话。
综上所述,本发明实施例提供的安全机制,如图10所示,主要包括以下几点:
1)工厂安区生产环境预置可信执行环境相关密钥,同时将相关密钥通过安全方法传输给远程服务器;
2)远程服务器使用加解密密钥加密待下载的TA数据,使用签名密钥计算加密TA数据的签名;
3)Admin TA使用签名密钥验证加密TA数据的签名,验证通过后,使用加解密密钥解密TA数据;
4)TEE核心处理模块存储TA数据时,使用存储在高安区(eFuse或RPMB)加密密钥加密TA数据,并使用存储签名密钥对密文进行签名;
5)TEE核心处理模块加载TA时,验证TA数据签名,验证通过后,解密TA数据,然后再在TEE内核空间运行TA。
从1)至3)点可以看出,远程服务器与Admin TA之间可以认为建立了安全通道。
如图11所述,本发明实施例的存储机制包括:
TEE存储模块是预置系统服务,具有访问/system分区的权限,生产时随手机镜像文件一起下载到手机上;
TEE核心处理模块与TEE存储模块定义TA数据存储接口,通过该接口,TEE核心处理模块调用TEE存储模块访问/system分区;
TA数据存储在REE的/system分区,普通应用没有权限访问该分区。
现有的TA数据存储方法是将TA数据存储在TEE中,这就需要TEE实现文件系统,从而增加了TEE系统实现的复杂性。而在本发明实施例中,如图11所示,将TA数据加密存储在REE,通过共享REE的文件系统,可有效降低可信执行环境复杂性。
从上面的描述中可以看出,采用本发明实施例的方案后,可以带来以下效果:
1、支持TA的动态下载,提高了下载效率。
2、TA下载后,可动态加载TA,不需要重启手机,缩短了时间,从而提升了用户体验。
3、使用REE存储TA数据,降低了TEE的系统功能复杂度;使用TEE加密机制保护TA数据的存储,提升TA数据存储的安全性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (14)

1.一种下载方法,其特征在于,所述应用于终端,所述终端支持富执行环境REE和可信执行环境TEE,所述方法包括:
在所述REE中接收服务器发送的下载命令;所述下载命令包含可信应用的第一数据;
通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;
在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
2.根据权利要求1所述的方法,其特征在于,所述对所述第三数据进行存储,包括:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
3.根据权利要求1所述的方法,其特征在于,所述在所述TEE中对所述第二数据进行安全处理,包括:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述TEE中,从所述TEE中的第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载可信应用;
通过所述数据通道将所述第一指令传输至所述TEE中;
在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;
对所述第三数据进行解安全处理,得到所述第二数据;加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
6.根据权利要求5所述的方法,其特征在于,所述通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据,包括:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取可信应用数据;
通过所述数据通道将所述第一指令传输至所述REE中;
在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;
通过所述数据通道将读取的所述第三数据传输至所述TEE中。
7.根据权利要求5所述的方法,其特征在于,所述对所述第三数据进行解安全处理,包括:
在所述TEE中,使用第三密钥对所述第三数据进行签名验证,验证通过后得到加密的第二数据;
使用第四密钥对加密的第二数据进行解密。
8.一种终端,其特征在于,所述终端支持REE和TEE,所述终端包括:
第一操作单元,用于在所述REE中接收服务器发送的下载命令;所述下载命令包含可信应用的第一数据;以及通过所述REE与TEE之间的数据通道将所述下载命令传输至所述TEE中;
第二操作单元,用于在所述TEE中对所述下载命令进行安全验证,并在验证通过后对所述第一数据进行解密,得到第二数据;以及在所述TEE中对所述第二数据进行安全处理,得到第三数据;并对所述第三数据进行存储。
9.根据权利要求8所述的终端,其特征在于,所述第二操作单元,具体用于:
通过所述数据通道将所述第三数据传输至所述REE中;
在所述REE中,将所述第三数据存储至所述REE中的第一非易失性存储器中。
10.根据权利要求8所述的终端,其特征在于,所述第二操作单元,具体用于:
在所述TEE中,使用第一密钥对所述第二数据进行加密;
并使用第二密钥对加密后的第二数据进行签名,得到所述第三数据。
11.根据权利要求10所述的终端,其特征在于,所述第二操作单元,还用于在所述TEE中,从所述TEE中的第二非易失性存储器中读取所述第一密钥和第二密钥;所述第二非易失性存储器为只读存储器或者验证通过后可访问的存储器。
12.根据权利要求9所述的终端,其特征在于,所述第一操作单元,还用于:在所述REE中,生成第一指令;所述第一指令用于在所述TEE中加载可信应用;以及通过所述数据通道将所述第一指令传输至所述TEE中;
所述第二操作单元,还用于在所述TEE中,响应所述第一指令,通过所述数据通道,从所述第一非易失性存储器中获取所述第三数据;对所述第三数据进行解安全处理,得到所述第二数据;以及加载所述第二数据至所述TEE对应的内核空间运行,以在所述REE与TEE中建立对应的会话。
13.根据权利要求12所述的终端,其特征在于,所述第二操作单元,具体用于:
在所述TEE中生成第一请求;所述第一请求用于从所述REE中获取可信应用数据;以及通过所述数据通道将所述第一指令传输至所述REE中;
所述第一操作单元,还用于在REE中,根据所述第一请求,从所述第一非易失性存储器中读取所述第三数据;以及通过所述数据通道将读取的所述第三数据传输至所述TEE中。
14.根据权利要求12所述的终端,其特征在于,所述第二操作单元,具体用于:
在所述TEE中,使用第三密钥对所述第三数据进行签名验证,验证通过后得到加密的第二数据;
使用第四密钥对加密的第二数据进行解密。
CN201610944665.7A 2016-10-26 2016-10-26 一种下载方法及终端 Active CN107995230B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610944665.7A CN107995230B (zh) 2016-10-26 2016-10-26 一种下载方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610944665.7A CN107995230B (zh) 2016-10-26 2016-10-26 一种下载方法及终端

Publications (2)

Publication Number Publication Date
CN107995230A true CN107995230A (zh) 2018-05-04
CN107995230B CN107995230B (zh) 2019-10-18

Family

ID=62029037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610944665.7A Active CN107995230B (zh) 2016-10-26 2016-10-26 一种下载方法及终端

Country Status (1)

Country Link
CN (1) CN107995230B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460400A (zh) * 2020-03-31 2020-07-28 腾讯科技(深圳)有限公司 一种数据处理方法、装置及计算机可读存储介质
CN111722894A (zh) * 2019-03-21 2020-09-29 成都鼎桥通信技术有限公司 应用处理方法、装置及电子设备
CN113192237A (zh) * 2020-01-10 2021-07-30 阿里巴巴集团控股有限公司 支持tee和ree的物联网设备以及实现tee和ree间通信的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1742247A (zh) * 2003-02-03 2006-03-01 诺基亚有限公司 用于加密的应用程序安装的结构
CN104010044A (zh) * 2014-06-12 2014-08-27 北京握奇数据系统有限公司 基于可信执行环境技术的应用受限安装方法、管理器和终端
US20150270960A1 (en) * 2014-03-20 2015-09-24 Oracle International Corporation System and method for deriving secrets from a master key bound to an application on a device
CN105446713A (zh) * 2014-08-13 2016-03-30 阿里巴巴集团控股有限公司 安全存储方法及设备
CN105590051A (zh) * 2015-11-18 2016-05-18 中国银联股份有限公司 用于可信执行环境的可信应用生成及安装方法
CN105843653A (zh) * 2016-04-12 2016-08-10 恒宝股份有限公司 一种安全应用配置方法及装置
CN105978917A (zh) * 2016-07-19 2016-09-28 恒宝股份有限公司 一种用于可信应用安全认证的系统和方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1742247A (zh) * 2003-02-03 2006-03-01 诺基亚有限公司 用于加密的应用程序安装的结构
US20150270960A1 (en) * 2014-03-20 2015-09-24 Oracle International Corporation System and method for deriving secrets from a master key bound to an application on a device
CN104010044A (zh) * 2014-06-12 2014-08-27 北京握奇数据系统有限公司 基于可信执行环境技术的应用受限安装方法、管理器和终端
CN105446713A (zh) * 2014-08-13 2016-03-30 阿里巴巴集团控股有限公司 安全存储方法及设备
CN105590051A (zh) * 2015-11-18 2016-05-18 中国银联股份有限公司 用于可信执行环境的可信应用生成及安装方法
CN105843653A (zh) * 2016-04-12 2016-08-10 恒宝股份有限公司 一种安全应用配置方法及装置
CN105978917A (zh) * 2016-07-19 2016-09-28 恒宝股份有限公司 一种用于可信应用安全认证的系统和方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111722894A (zh) * 2019-03-21 2020-09-29 成都鼎桥通信技术有限公司 应用处理方法、装置及电子设备
CN111722894B (zh) * 2019-03-21 2023-04-18 成都鼎桥通信技术有限公司 应用处理方法、装置及电子设备
CN113192237A (zh) * 2020-01-10 2021-07-30 阿里巴巴集团控股有限公司 支持tee和ree的物联网设备以及实现tee和ree间通信的方法
CN113192237B (zh) * 2020-01-10 2023-04-18 阿里巴巴集团控股有限公司 支持tee和ree的物联网设备以及实现tee和ree间通信的方法
CN111460400A (zh) * 2020-03-31 2020-07-28 腾讯科技(深圳)有限公司 一种数据处理方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN107995230B (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
EP3937424B1 (en) Blockchain data processing methods and apparatuses based on cloud computing
EP3387813B1 (en) Mobile device having trusted execution environment
EP2988470B1 (en) Automatic purposed-application creation
EP3121752B1 (en) Mobile payment device and method
CN105378747B (zh) 一触式设备个性化
CN103843006B (zh) 用于向用户终端配备操作系统的方法和设备
US8417964B2 (en) Software module management device and program
WO2019218919A1 (zh) 区块链场景下的私钥管理方法、装置及系统
EP3780484B1 (en) Cryptographic operation and working key creation method and cryptographic service platform and device
CN103988464A (zh) 利用全球平台规范对发行者安全域进行密钥管理的系统和方法
CN105612715A (zh) 具有可配置访问控制的安全处理单元
CN109614769A (zh) 按照参考平台清单和数据封装的安全操作系统启动
CN111310213A (zh) 一种业务数据保护方法、装置、设备及可读存储介质
CN111274611A (zh) 数据脱敏方法、装置及计算机可读存储介质
CN107196907A (zh) 一种安卓so文件的保护方法及装置
WO2019071650A1 (zh) 一种安全元件中的应用的升级方法及相关设备
CN107995230B (zh) 一种下载方法及终端
US20200145395A1 (en) System and method for generating and managing a key package
CN105187410A (zh) 一种应用的自升级方法及其系统
CN109150811A (zh) 一种实现可信会话的方法及装置、计算设备
CN110532761A (zh) 一种更新虚拟机密码的方法及装置
EP2689367B1 (en) Data protection using distributed security key
KR101473656B1 (ko) 모바일 데이터 보안 장치 및 방법
EP3975015B1 (en) Applet package sending method and device and computer readable medium
CN109117625A (zh) Ai软件系统安全状态的确定方法及装置

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