CN111835687A - 基于区块链的安全协同***及安全协同方法 - Google Patents

基于区块链的安全协同***及安全协同方法 Download PDF

Info

Publication number
CN111835687A
CN111835687A CN201910320339.2A CN201910320339A CN111835687A CN 111835687 A CN111835687 A CN 111835687A CN 201910320339 A CN201910320339 A CN 201910320339A CN 111835687 A CN111835687 A CN 111835687A
Authority
CN
China
Prior art keywords
data
instruction
driving
security
block chain
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
CN201910320339.2A
Other languages
English (en)
Other versions
CN111835687B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910320339.2A priority Critical patent/CN111835687B/zh
Publication of CN111835687A publication Critical patent/CN111835687A/zh
Application granted granted Critical
Publication of CN111835687B publication Critical patent/CN111835687B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Alarm Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及区块链技术领域,公开一种基于区块链的安全协同***及安全协同方法。所述安全协同***用于客户端,包括:指令获取装置,用于获取数据操作指令;驱动装置,用于驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及结果接收装置,用于响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。无论安全协同***是否处于连网状态,本发明均可采用去中心化的处理方式,在保证安全流通的基础上,获取数据联盟网络***的安全协同操作。

Description

基于区块链的安全协同***及安全协同方法
技术领域
本发明涉及区块链技术领域,具体地涉及一种基于区块链的安全协同***及安全协同方法。
背景技术
每个企业都有自己的数据资产,彼此的数据都各自存储且各自定义。企业之间的数据就像一个个孤岛,没有进行连接和互动,这造成巨大的资源浪费。有一些企业尝试合作,但常常受困于数据隐私泄漏、数据使用中被恶意修改、数据被盗取等问题,导致合作难于开展。
发明内容
本发明实施例的目的是提供一种用于客户端的基于区块链的安全协同***及安全协同方法,无论其是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,获取数据联盟网络***的安全协同操作。
为了实现上述目的,本发明实施例提供一种基于区块链的安全协同***,用于客户端,包括:指令获取装置,用于获取数据操作指令;驱动装置,用于驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及结果接收装置,用于响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
可选的,所述数据联盟网络***包括:数据提供***及数据使用***,所述数据操作指令包括:来自所述数据提供***的数据上传指令;来自所述数据使用***的数据申请指令;或者来自所述数据使用***的查询指令,所述查询指令为查询多个数据的聚合结果的指令,其中,所述多个数据来自一个或多个本地数据库中的多个表。
可选的,在所述数据操作指令为来自所述数据提供***的数据上传指令的情况下,所述驱动装置包括:第一驱动模块,用于驱动所述数据提供***执行以下操作:对待上传的数据进行加密;计算加密的数据对应的所述指纹信息;以及发布所述加密的数据的元信息与相应的所述指纹信息到所述区块链,和/或发布所述加密的数据的元信息到平台,其中,所述元信息包括描述信息及存储位置。
可选的,在所述数据操作指令为来自所述数据提供***的数据申请指令的情况下,所述驱动装置包括:第二驱动模块,用于驱动所述数据提供***执行以下操作:对所申请的数据进行授权;以及将所述授权的数据的指纹信息及所述数据使用***的权限信息上传至区块链。
可选的,在所述数据操作指令为来自所述数据使用***的查询指令的情况下,所述数据联盟网络***还包括安全计算***,所述驱动装置包括:第三驱动模块,用于驱动所述数据提供***提供多个第一密钥;以及第四驱动模块,用于驱动所述安全计算***执行以下操作:采用所述多个第一密钥对所述多个数据进行解密;以及基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
可选的,所述驱动装置还包括:第五驱动模块,用于驱动所述数据使用***提供第二密钥,所述第三驱动模块还用于驱动所述安全计算***对所述聚合结果进行加密。
相应地,本发明实施例还提供一种基于区块链的安全协同方法,用于客户端,包括:获取数据操作指令;驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
可选的,所述数据联盟网络***包括:数据提供***及数据使用***,所述数据操作指令包括:来自所述数据提供***的数据上传指令;来自所述数据使用***的数据申请指令;或者来自所述数据使用***的查询指令,所述查询指令为查询多个数据的聚合结果的指令,其中,所述多个数据来自一个或多个本地数据库中的多个表。
可选的,在所述数据操作指令为来自所述数据提供***的数据上传指令的情况下,所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:驱动所述数据提供***执行以下操作:对待上传的数据进行加密;计算加密的数据对应的所述指纹信息;以及发布所述加密的数据的元信息与相应的所述指纹信息到所述区块链,和/或发布所述加密的数据的元信息到平台,其中,所述元信息包括描述信息及存储位置。
可选的,在所述数据操作指令为来自所述数据提供***的数据申请指令的情况下,所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:驱动所述数据提供***执行以下操作:对所申请的数据进行授权;以及将所述授权的数据的指纹信息及所述数据使用***的权限信息上传至区块链。
可选的,在所述数据操作指令为来自所述数据使用***的查询指令的情况下,所述数据联盟网络***还包括安全计算***,
可选的,所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:驱动所述数据提供***提供多个第一密钥;以及驱动所述安全计算***执行以下操作:采用所述多个第一密钥对所述多个数据进行解密;以及基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
可选的,所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作还包括:驱动所述数据使用***提供第二密钥;以及驱动所述安全计算***对所述聚合结果进行加密。
相应地,本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得客户端执行所述的基于区块链的安全协同方法。
通过上述技术方案,本发明创造性地在获取数据操作指令的情况下,驱动数据联盟网络***,执行与所述数据操作指令相应的操作,然后,在数据联盟网络***执行相应的安全协同操作并获取相应的操作结果的情况下,获取数据联盟网络***返回的安全协同结果,从而可实现其无论是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,获取数据联盟网络***的安全协同操作。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是本发明一实施例提供的数据联盟网络***的结构图;
图2是本发明一实施例提供的基于区块链的安全协同***的结构图;
图3是本发明一实施例提供的驱动装置的结构图;
图4是本发明一实施例提供的数据提供***的结构图;
图5是本发明一实施例提供的数据使用***的结构图;
图6是本发明一实施例提供的安全计算***的结构图;
图7是本发明一实施例提供的基于区块链的安全协同过程的交互示意图;
图8是本发明一实施例提供的基于区块链的安全协同过程的流程图;以及
图9是本发明一实施例提供的基于区块链的安全协同方法的流程图。
附图标记说明
1 数据提供*** 2 平台
3 安全计算*** 4 数据使用***
5 指令获取装置 6 驱动装置
7 结果接收装置 10 存储器
20 元数据管理服务器 30 区块链
40 Spark SGX安全计算*** 50 本地数据库
60 查询指令接收装置 61 第一驱动装置
62 第二驱动装置 63 第三驱动装置
64 第四驱动装置 65 第五驱动装置
70 生成装置 71 第一加密装置
72 第一指纹信息计算装置 73 发布装置
80 指纹获取装置 90 发送装置
100 任务提交服务模块 110 钱包
120 远程管理和密钥注入工具 130 引擎工具
140 聚合结果接收装置 150 信息接收装置
160 访问装置 170 第二指纹信息计算装置
180 比较装置 190 聚合结果获取装置
200 第二上传装置 300 数据联盟网络***
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
在本发明中主要涉及区块链网络和数据联盟网络2个大网络。所述区块链网络主要用于提供智能合约和账本管理,其中,智能合约包括数据存证合约、权限控制合约以及元数据管理合约;账本管理主要用来管理数据流通的参与者的账户和余额。同时基于所述区块链网络,引入确权方,例如各地的互联网法院等,当数据交易过程中发生法律纠纷的时候,确权方可以基于区块链上的存证信息进行公证和确权。如图1所示,所述数据联盟网络***300 包括:数据提供***1、平台2、安全计算***3和数据使用***4等,各类角色共同组建一个数据联盟网络,实现数据的安全流通。
所述数据联盟网络***300的整体架构如图1所示,下面针对各类角色的主要功能进行介绍:对于数据提供***1(或数据提供方),提供数据,通过区块链进行对外发布;以及数据访问授权管理。对于数据使用***4(或数据使用方),编写模型,以实现数据访问逻辑。对于安全计算***3,提供计算框架,例如将Spark、TensorFlow大数据分析和机器学***台2(或平台提供方),提供各类智能合约;维护底层区块链等;以及提供模型调度框架管理与部署等。
本发明的技术方案是建立在通过区块链进行数据存证和发布,以及通过区块链进行权限管理的基础上进行的。所述通过区块链进行数据存证和发布,以及通过区块链进行权限管理的内容将于下文进行详细描述。本发明只保证数据的绝对安全,而不解决用户模型的安全,其中,所述数据的绝对安全需要符合如下两个要求:(1)原始数据无法被查询,查询的结果只能是聚合结果,例如,求和(sum)、求平均(avg)、统计(count)、取最大(max) 或取最小(min)等;(2)数据可以随时被数据提供方修改和删除,但是一旦发布的数据,除非全部删除,否则不能中途进行编辑,因为此时的数据已经被上传至区块链网络。
在详细阐述本发明的技术方案之前,概括性地介绍一下联合查询的概念。所述联合查询是指一个用户通过一段sql或者算法模型在多个地域的数据仓进行查询,然后计算得到一个聚合的结果。例如,要计算一个用户的信用等级,就会实现一个算法,即综合考虑这个用户的饮食消费记录(假设A 公司拥有此数据)和穿着消费记录(假设B公司拥有此数据)等,最终根据饮食消费记录及穿着消费记录等数据确定该用户处于一个什么等级的信用。最终所确定的该用户的信用等级即为联合查询的聚合结果。
图2是本发明实施例提供的基于区块链的安全协同***的结构图。如图 2所示,本发明提供的所述安全协同***可包括:指令获取装置5,用于获取数据操作指令;驱动装置6,用于驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及结果接收装置7,用于响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
其中,所述数据操作指令可包括:来自所述数据提供***的数据上传指令;来自所述数据使用***的数据申请指令;或者来自所述数据使用***的查询指令,所述查询指令为查询多个数据的聚合结果的指令,其中,所述多个数据来自一个或多个本地数据库中的多个表。
下面分别就上述三种情况对用于客户端的基于区块链的安全协同***进行详细地说明,并且在下述各个实施例中所涉及到的多个数据为来自一个或多个本地数据库中的多个表中的数据。
实施例一
在所述数据操作指令为来自所述数据提供***的数据上传指令的情况下,如图3所示,所述驱动装置6可包括:第一驱动模块61,用于驱动所述数据提供***执行以下操作:对待上传的数据进行加密;计算加密的数据对应的所述指纹信息;以及发布所述加密的数据的元信息(meta)与相应的所述指纹信息到所述区块链,和/或发布所述加密的数据的元信息到平台,其中,所述元信息包括描述信息及存储位置。
相应地,如图4所示,所述数据提供***1可包括:第一加密装置71,用于利用多个第一密钥分别对待上传的多个数据进行加密;第一指纹信息计算装置72,用于计算加密数据的多个表对应的第一指纹信息;以及发布装置 73,用于将所述多个表的元信息与相应的所述第一指纹信息发布到所述区块链,和/或将所述多个表的元信息发布到平台。或者,直接通过客户端将所述多个表的元信息与相应的所述第一指纹信息发布到所述区块链,和/或将所述多个表的元信息发布到平台。
具体地,首先,数据提供***1可将数据上传指令输入客户端;然后,客户端处的安全协同***中的指令获取装置5获取该数据上传指令;接着,客户端处的安全协同***中的驱动装置6中的第一驱动模块61驱动数据提供***1执行以下操作:通过第一加密装置71利用多个第一密钥分别对待上传的多个数据进行加密;通过第一指纹信息计算装置72计算加密数据的多个表对应的第一指纹信息;以及通过发布装置73将所述多个表的元信息与相应的所述第一指纹信息发布到所述区块链,和/或将所述多个表的元信息发布到平台。其中,所述平台可部署在客户端,作为安全协同***中的结果接收装置7,用于展示与所述多个数据对应的多个表的元信息,以便数据使用方进行查看。也就是说,客户端处的安全协同***中的结果接收装置7获取上传数据的元信息。
在将所述多个表的元信息与所述第一指纹信息发布到所述区块链的同时,所述区块链用于生成相应交易ID,并将该交易ID发送至所述平台;所述平台还用于,关联所述交易ID与所述数据提供***的身份ID,以确认所述多个数据分别归属于所述数据提供***中的相应的数据提供装置。
本实施例采用区块链与数据联盟网络***实现所述多个数据的安全协同操作,以获取关于该多个数据的元信息,无论其是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,实现多个数据的安全上传。
实施例二
在所述数据操作指令为来自所述数据提供***的数据申请指令的情况下,如图3所示,所述驱动装置6还可包括:第二驱动模块62,用于驱动所述数据提供***执行以下操作:对所申请的数据进行授权;以及将所述授权的数据的指纹信息及所述数据使用***的权限信息上传至区块链。
相应地,所述数据提供***1还可包括:权限授权装置,用于授予数据使用***4具有使用其所申请的多个数据的权限;以及第一上传装置,用于将所授权数据的多个表的第一指纹信息及所述数据使用***的权限信息上传至区块链。
具体地,首先,数据使用***4或查询用户可将数据申请指令输入客户端;然后,客户端处的安全协同***中的指令获取装置5获取该数据申请指令;接着,客户端处的安全协同***中的驱动装置6中的第二驱动模块62 驱动数据提供***1执行以下操作:通过权限授权装置对数据使用***4所要申请的多个数据进行授权,以使得数据使用***4具备使用所述多个数据的权限;以及通过第一上传装置将已授权数据的多个表的第一指纹信息及所述数据使用***的权限信息上传至区块链。最后,客户端处的安全协同***中的结果接收装置7获取关于数据申请的流程信息。
本实施例采用区块链与数据联盟网络***实现所述多个数据的安全协同操作,以获取关于数据申请的流程信息,无论其是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,实现多个数据的安全申请。
实施例三
在所述数据操作指令为来自所述数据使用***的查询指令的情况下,如图3所示,所述驱动装置6还可包括:第三驱动模块63,用于驱动所述数据提供***提供多个第一密钥;以及第四驱动模块64,用于驱动所述安全计算***执行以下操作:采用所述多个第一密钥对所述多个数据进行解密;以及基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
相应地,所述数据提供***还可包括:第一密钥产生装置,用于产生多个第一密钥,以用于对所述多个数据进行解密。如图6所示,所述安全计算***3可包括:聚合结果获取装置190,该聚合结果获取装置190可包括:解密模块,用于采用所述多个第一密钥对所述多个数据进行解密;以及聚合结果获取模块,用于基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
在优选实施例中,所述聚合结果获取装置190可包括:接收模块,接收所述数据提供***提供的多个第一密钥;解密模块,用于利用所述多个第一密钥对所述多个表中的数据进行解密;筛选模块,用于基于所述查询指令从所述多个表中筛选出所述多个数据;以及聚合结果获取模块,用于基于所述查询指令,对解密的所述多个数据进行安全计算,以获取与所述查询指令相应的聚合结果,并将该聚合结果返回至安全协同***中的结果接收装置。
具体地,首先,数据使用***4或查询用户可将查询指令输入客户端;然后,客户端处的安全协同***中的指令获取装置5获取该查询指令;接着,客户端处的安全协同***中的驱动装置6中的第三驱动模块63驱动所述数据提供***1提供多个第一密钥;然后,所述第四驱动模块64驱动所述安全计算***执行以下操作:通过接收模块接收与所述多个表对应的多个第一密钥;通过解密模块利用所述多个第一密钥对所述多个数据进行解密;通过筛选模块基于所述查询指令从所述多个表中筛选出多个数据;再通过聚合结果获取模块基于所述多个数据进行计算,以获得与所述查询指令相应的聚合结果。例如,在查询指令为年龄大于60岁的人数(sum指令)的情况下,分别利用多个第一密钥对所访问的多个表中的数据进行解密,从中筛选出年龄大于60岁的人的相关数据,统计相关数据之和以获取sum值。
因此,访问所述多个表均是在安全计算***中进行,并且所述多个数据是加密的,需要使用数据使用***注入的第一密钥进行解密,由此,可使得数据使用***(例如查询用户)等无法直接查询到数据,从而保证数据本身的绝对安全。
本实施例采用区块链与数据联盟网络***实现所述多个数据的安全协同计算,以获取关于该多个数据的聚合结果,从而无论其是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,实现多个数据的安全协同计算。
实施例四
如果数据提供***提供的多个数据未被篡改,则所述数据所属的表对应的第二指纹信息与区块链上相应的第一指纹信息必然一致;如果所述多个数据被恶意篡改,则所述数据所属的表对应的第二指纹信息与区块链上相应的第一指纹信息记录会不一致,由此,为了防止在多个数据被篡改的情况下,数据使用***仍然通过该数据获得错误的查询结果,可在实施例三的基础上,可对数据联盟网络***300中的所述数据使用***4和安全计算***3 进行优化。
所述数据使用***4还可包括:查询指令接收装置60,用于接收查询指令;指纹获取装置80,用于基于所接收的针对所述多个数据的查询指令,从所述区块链获取与所述多个数据相应的多个表的第一指纹信息,如图5所示。并且,所述数据使用***4还可包括:生成装置70,用于对所述查询指令进行解析,以生成所述多个数据所在的多个表的元信息(包括描述信息及存储位置)及相应的执行计划;以及发送装置90,用于发送所述执行计划及所述多个表对应的所述第一指纹信息以便于安全计算***对多个本地数据库中的所述多个表进行访问,如图5所示。
相应地,图3所示,所述驱动装置6还可包括:第五驱动模块65,用于驱动所述数据使用***执行以下操作:在接收到针对所述多个数据的查询指令的情况下,通过生成装置70对所述查询指令进行解析,以生成所述多个数据所在的多个表的元信息(包括描述信息及存储位置)及相应的sql执行计划;通过指纹获取装置80基于所生成的多个表的描述信息,从所述区块链获取与所述多个表的第一指纹信息;通过发送装置90将所述执行计划及所述多个表对应的所述第一指纹信息发送至所述安全计算***3。
相应的,如图6所示,所述安全计算***3还可包括:信息接收装置150,用于接收关于查询查询指令的执行计划及来自所述区块链的与所述多个表对应的第一指纹信息,其中,所述查询指令为查询来自多个本地数据库中的多个表中的多个数据的聚合结果的指令,所述执行计划包括所述多个表的元信息,该元信息包括描述信息及存储位置;以及访问装置160,用于基于所述执行计划及所述多个表的存储位置访问所述多个数据,如图4所示。
并且,如图6所示,所述安全计算***3还可包括:第二指纹信息计算装置170,用于计算所述数据提供***所提供的多个数据相应的多个表的第二指纹信息;比较装置180,用于将所述第二指纹信息与所述第一指纹信息一一比较,所述聚合结果获取装置190,用于在所述第二指纹信息与所述第一指纹信息对应一致的情况下,基于所述查询指令,对所述多个数据进行安全协同计算,以获取与所述查询指令相应的聚合结果,将所述聚合结果返回至结果接收装置和/或所述数据使用***。
相应地,所述第四驱动模块64还用于驱动所述安全计算***3执行以下操作:基于所述执行计划及所述多个表的存储位置访问所述多个数据;计算所述多个数据所属的多个表的第二指纹信息,并进行指纹验证,将所述第二指纹信息与所述第一指纹信息一一比较;在指纹验证成功(两种指纹信息完全一致)的情况下,基于所述执行计划,对所述多个数据进行安全协同计算,从而获取与所述查询指令相应的聚合结果;将所述聚合结果返回至结果接收装置7和/或所述数据使用***4。
上述指纹认证的目的是防止多个数据被恶意篡改,从而保证查询结果的准确性。
实施例五
为了保证数据在流通过程中的安全性,在实施例三和实施例四的基础上进行优化,经数据提供***及数据使用***对安全计算***进行环境认证,在环境认证成功之后,再经由安全计算***对多个数据进行计算。
所述安全计算***3中的所述聚合结果获取装置190还可包括:通知模块,用于在所述第二指纹信息与所述第一指纹信息对应一致的情况下,通知数据提供***及数据使用***进行环境认证。
相应的,所述数据使用***还可包括:第一环境认证装置,用于接收环境认证的通知,并进行所述环境认证。所述数据提供***还可包括:第二环境认证装置,用于接收环境认证的通知,并进行所述环境认证。
在所述数据使用***和所述数据提供***均对环境认证成功的情况下,通过第四驱动模块64驱动所述安全计算***对多个数据进行安全协同计算。具体过程详见实施例三的描述,于此不再赘述。
经过数据提供方及数据查询方双方进行环境认证,可在更大程度上保证安全计算***中的原始数据的安全性。
实施例六
为了保证聚合结果的安全性,在实施例三至实施例五的基础上进一步优化,对聚合结果进行加密,仅允许具备查询权限的用户进行查看。
所述安全计算***3中的接收模块还用于接收所述数据使用***提供的第二密钥。所述安全计算***3还可包括:第二加密装置,用于利用所述第二密钥对所述聚合结果进行加密。由此,加密的聚合结果仅允许具备查询权限的用户进行查看,保证查询结果不被窃取。
并且,所述安全计算***3还可包括:第二上传装置200,用于将所述聚合结果上传,如图6所示。具体地,所述第二上传装置200可将加密的聚合结果上传至结果接收装置7和/或查询用户的存储空间。相应的,所述数据使用***4还可包括:聚合结果接收装置140,用于接收所述聚合结果,如图5所示。所述查询用户可利用所述第二密钥对所述聚合结果进行解密,从而可获得解密的查询结果。
通过第四驱动模块64驱动所述安全计算***对集合结果进行加密与上传。具体地,通过第二密钥接收装置接收所述数据使用***提供的第二密钥;通过第二加密装置利用所述第二密钥对所述聚合结果进行加密;通过第二上传装置200将所述聚合结果上传。相应地,所述结果接收装置7可获得加密的聚合结果。
在本发明的上述各个实施例中,所述第一密钥及所述第二密钥均可为非对称密钥或对称密钥。考虑到相应***的组建难易度及成本的高低,优选地,所述第一密钥及所述第二密钥可为对称密钥。其中,所述第一密钥和所述第二密钥是通过远程管理和密钥注入工具(RA/Entool)120产生的,如图7所示。
所述安全计算***SparkSGX支持安全隔离域,所述安全隔离域是指基于TEE(Trusted Execution Environment)技术(例如TPM或者Intel SGX技术),将接触到原始数据的所有流程都发生在安全计算环境,该安全计算环境是公开可验证的,是从硬件到操作***以及用户代码都是可以验证安全的,目前使用较为广泛。当然,所述安全计算***也不限于支持上述安全隔离域,还可支持或兼容支持多方安全计算(MPC)方案,所述MPC方案是指基于密码学,在数据进行联合计算的过程中,不是使用原始数据,而是使用加密后的数据进行计算,最后将计算的结果进行解密,获得计算的真实结果。这一类算法包括支持两方的加密电路-不经意传输(GC-OT)以及支持多方的同态加密算法等。
当然,本发明中的安全计算***SparkSGX既可以部署在数据拥有***中,也可以部署在平台,但是在访问数据的时候,都是安全计算环境中进行,并且需要等待数据提供***注入数据的解密密钥。因此可以保证数据本身安全。
具体而言,如图7和图8所示,现以数据使用***4和安全计算***3 (该安全计算***3可为Spark SGX安全计算***40)之间的交互过程为例对基于查询指令的安全协同计算的过程进行详细地解释和说明。
基于查询指令的安全协同计算的过程的详细步骤如下:
步骤S501,所述数据使用***对查询用户的权限进行验证。
如图7所示,数据使用***4连接平台2上的元数据管理服务器20并获得数据提供***具备权限的元(meta)信息,接着,所述元数据管理服务器20从区块链30获得查询用户的权限信息,以确认查询用户具备权限的 meta信息。其中,所述平台2上的所有组件可通过引擎工具(Docker)130 实现快速部署。
步骤S502,所述数据使用***接收查询用户输入的sql查询指令。
步骤S503,所述数据使用***对所述sql查询指令进行解析,以生成相应的执行计划及第二密钥,其中,所述执行计划包括所述多个表的元信息,该元信息包括描述信息及存储位置。
在接收到所述查询指令的情况下,通过driver节点对所述查询指令进行解析,以生成所述多个数据所在的多个表的元信息(包括描述信息及存储位置)及相应的sql执行计划,并在生成相应的sql执行计划之后,过滤仅有单行数据的表所对应的查询指令,防止原始数据被直接查询。在优选实施例中还可生成一个与所述查询指令相关联的对称密钥,即第二密钥,接着,发送所述第二密钥至所述安全计算***,该安全计算***可利用该第二密钥对所查询的多个数据的聚合结果进行加密,从而加密的聚合结果仅允许具备查询权限的用户进行查看,保证查询结果的安全性。
步骤S504,所述数据使用***基于所述多个表的描述信息,获取来自所述区块链的所述多个数据对应的第一指纹信息。
如图7所示,基于所述多个表对应的meta信息,所述数据使用***4 通过钱包(MBWallet)110连接区块链30,并从区块链30查询表的指纹信息,其中,所述多个表包括所述多个数据。
步骤S505,所述数据使用***发送所述执行计划、所述多个表对应的所述第一指纹信息、所述第二密钥及访问方式至所述安全计算***。
具体的,通过图7所示的任务提交服务模块(Submit Service)100将所述执行计划、所述多个表对应的所述第一指纹信息及所述第二密钥发送至 SparkSGX中的worker节点,以便于该安全计算***对多个本地数据库中的所述多个表进行访问。在优选实施例中,在发送所述执行计划、所述第一指纹信息及所述第二密钥的同时,还发送所述多个表的访问方式至worker节点,以便于该安全计算***基于所接收的所述执行计划及所述多个表的存储位置,以所述访问方式访问所述多个本地数据库中的所述多个表。
其中,所述访问方式可包括通过对象存储***或网络文件***等访问方式;以及所述本地数据库可以在数据提供***(也称为数据提供方)或数据使用***(也可称为数据使用方)。
步骤S506,基于所述执行计划及所述多个表的存储位置,所述安全计算***以所述访问方式访问所述多个本地数据库中的所述多个表。
如图7所示,在Spark SGX安全计算***40在接收到所述执行计划、所述多个表对应的所述第一指纹信息及所述多个表的访问方式的情况下,会立刻启动worker节点,并且该worker节点基于所述执行计划及所述多个表的存储位置,以所述访问方式访问所述多个本地数据库中的所述多个表。其中,所述多个本地数据库50中的多个表中的数据均是加密的。
步骤S507,所述安全计算***计算所述多个表对应的第二指纹信息。
步骤S508,所述安全计算***将所述第二指纹信息与所述第一指纹信息一一比较。
步骤S509,在所述第二指纹信息与所述第一指纹信息对应一致的情况下,所述安全计算***通知数据提供***和所述数据使用***进行环境认证。
在所述第二指纹信息与所述第一指纹信息对应一致的情况下,所述安全计算***通知所述数据提供***及所述数据使用***进行SGX环境认证。
步骤S510,所述数据提供***和所述数据使用***进行环境认证。
所述数据提供***及所述数据使用***均进行SGX环境认证。
步骤S511,在所述数据使用***环境认证成功的情况下,传输第二密钥。
如图7所示,在所述数据使用***对环境认证成功的情况下,所述数据使用***4中的远程管理和密钥注入工具(RA/Entool)120向所述安全计算***传输所述第二密钥,其中,所述第二密钥可为对称密钥。
步骤S512,在所述数据提供***环境认证成功的情况下,所述安全计算***接收数据提供***提供的与所述多个表一一对应的多个第一密钥。
步骤S513,所述安全计算***利用所述多个第一密钥对所述多个表中的数据进行解密。
步骤S514,基于所述执行计划从所述多个表中筛选出所述多个数据。
步骤S515,基于所述多个数据进行计算以获得所述聚合结果。
步骤S516,利用所述第二密钥对所述聚合结果进行加密。
步骤S517,将加密的聚合结果上传到所述数据使用***。
将加密的聚合结果上传到所述数据提供***及数据使用***的存储空间。
步骤S518,存储所述加密的聚合结果。
可通过图7所述的存储器10对所述加密的聚合结果进行存储。
在查询指令所涉及的本地数据库由多个数据使用***(或多个数据提供方)提供的情况下,多个数据使用***中的每一者所做的操作与上述数据使用***所做的操作完全类似,于此不再赘述。
上述过程可在数据不被篡改的情况下通过安全计算***获取聚合结果,一方面可使原始数据在安全计算***中由数据提供方进行控制,另一方面可使得原始数据无法直接被查询,从而保证数据的绝对安全。
上述各个实施例中的基于区块链的安全协同***应用于客户端,该客户端可以单独部署到一体机,然后将一体机部署到需求方,由此,即使在断网状态下,仍可通过该客户端实现数据联盟网络***的安全协同操作。
综上所述,本发明创造性地在获取数据操作指令的情况下,驱动数据联盟网络***,执行与所述数据操作指令相应的操作,然后,在数据联盟网络***执行相应的安全协同操作并获取相应的操作结果的情况下,获取数据联盟网络***返回的安全协同结果,从而可实现其无论是否处于连网状态,均可采用去中心化的处理方式,在保证安全流通的基础上,获取数据联盟网络***的安全协同操作。
相应地,如图9所示,本发明实施例还提供一种基于区块链的安全协同方法,用于客户端,包括如下步骤:步骤S901,获取数据操作指令;步骤 S902,驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及步骤S903,响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
有关本发明提供的基于区块链的安全协同方法的具体细节及益处可参阅上述针对基于区块链的安全协同***的描述,于此不再赘述。
相应地,本发明实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得客户端执行所述的基于区块链的安全协同方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/ 输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现目标信息存储。目标信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的目标信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (13)

1.一种基于区块链的安全协同***,用于客户端,其特征在于,包括:
指令获取装置,用于获取数据操作指令;
驱动装置,用于驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及
结果接收装置,用于响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
2.根据权利要求1所述的安全协同***,其特征在于,所述数据联盟网络***包括:数据提供***及数据使用***,
所述数据操作指令包括:
来自所述数据提供***的数据上传指令;
来自所述数据使用***的数据申请指令;或者
来自所述数据使用***的查询指令,所述查询指令为查询多个数据的聚合结果的指令,其中,所述多个数据来自一个或多个本地数据库中的多个表。
3.根据权利要求2所述的安全协同***,其特征在于,在所述数据操作指令为来自所述数据提供***的数据上传指令的情况下,
所述驱动装置包括:第一驱动模块,用于驱动所述数据提供***执行以下操作:
对待上传的数据进行加密;
计算加密的数据对应的所述指纹信息;以及
发布所述加密的数据的元信息与相应的所述指纹信息到所述区块链,和/或发布所述加密的数据的元信息到平台,
其中,所述元信息包括描述信息及存储位置。
4.根据权利要求2所述的安全协同***,其特征在于,在所述数据操作指令为来自所述数据提供***的数据申请指令的情况下,
所述驱动装置包括:第二驱动模块,用于驱动所述数据提供***执行以下操作:
对所申请的数据进行授权;以及
将所述授权的数据的指纹信息及所述数据使用***的权限信息上传至区块链。
5.根据权利要求2所述的安全协同***,其特征在于,在所述数据操作指令为来自所述数据使用***的查询指令的情况下,所述数据联盟网络***还包括安全计算***,
所述驱动装置包括:
第三驱动模块,用于驱动所述数据提供***提供多个第一密钥;以及
第四驱动模块,用于驱动所述安全计算***执行以下操作:
采用所述多个第一密钥对所述多个数据进行解密;以及
基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
6.根据权利要求1所述的安全协同***,其特征在于,所述驱动装置还包括:
第五驱动模块,用于驱动所述数据使用***提供第二密钥,
所述第四驱动模块还用于驱动所述安全计算***对所述聚合结果进行加密。
7.一种基于区块链的安全协同方法,用于客户端,其特征在于,包括:
获取数据操作指令;
驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作;以及
响应于所述数据联盟网络***执行的与所述数据操作指令相应的操作,接收与所述数据操作指令相应的操作结果,以获取基于所述数据联盟网络***的安全协同结果。
8.根据权利要求7所述的安全协同方法,其特征在于,所述数据联盟网络***包括:数据提供***及数据使用***,
所述数据操作指令包括:
来自所述数据提供***的数据上传指令;
来自所述数据使用***的数据申请指令;或者
来自所述数据使用***的查询指令,所述查询指令为查询多个数据的聚合结果的指令,其中,所述多个数据来自一个或多个本地数据库中的多个表。
9.根据权利要求8所述的安全协同方法,其特征在于,在所述数据操作指令为来自所述数据提供***的数据上传指令的情况下,
所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:驱动所述数据提供***执行以下操作:
对待上传的数据进行加密;
计算加密的数据对应的所述指纹信息;以及
发布所述加密的数据的元信息与相应的所述指纹信息到所述区块链,和/或发布所述加密的数据的元信息到平台,
其中,所述元信息包括描述信息及存储位置。
10.根据权利要求8所述的安全协同方法,其特征在于,在所述数据操作指令为来自所述数据提供***的数据申请指令的情况下,
所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:驱动所述数据提供***执行以下操作:
对所申请的数据进行授权;以及
将所述授权的数据的指纹信息及所述数据使用***的权限信息上传至区块链。
11.根据权利要求8所述的安全协同***,其特征在于,在所述数据操作指令为来自所述数据使用***的查询指令的情况下,所述数据联盟网络***还包括安全计算***,
所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作包括:
驱动所述数据提供***提供多个第一密钥;以及
驱动所述安全计算***执行以下操作:
采用所述多个第一密钥对所述多个数据进行解密;以及
基于所述查询指令对解密的多个数据进行计算,以获取与所述查询指令相应的聚合结果。
12.根据权利要求7所述的安全协同方法,其特征在于,所述驱动数据联盟网络***,基于区块链执行与所述数据操作指令相应的操作还包括:
驱动所述数据使用***提供第二密钥;以及
驱动所述安全计算***对所述聚合结果进行加密。
13.一种机器可读存储介质,其特征在于,该机器可读存储介质上存储有指令,该指令用于使得客户端执行根据权利要求7-12中任一项权利要求所述的基于区块链的安全协同方法。
CN201910320339.2A 2019-04-19 2019-04-19 基于区块链的安全协同***及安全协同方法 Active CN111835687B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910320339.2A CN111835687B (zh) 2019-04-19 2019-04-19 基于区块链的安全协同***及安全协同方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910320339.2A CN111835687B (zh) 2019-04-19 2019-04-19 基于区块链的安全协同***及安全协同方法

Publications (2)

Publication Number Publication Date
CN111835687A true CN111835687A (zh) 2020-10-27
CN111835687B CN111835687B (zh) 2022-08-23

Family

ID=72911794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910320339.2A Active CN111835687B (zh) 2019-04-19 2019-04-19 基于区块链的安全协同***及安全协同方法

Country Status (1)

Country Link
CN (1) CN111835687B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112966022A (zh) * 2021-03-10 2021-06-15 安徽航天信息科技有限公司 一种数据交易平台的信息查询方法、装置及***
CN114915640A (zh) * 2022-05-06 2022-08-16 中国科学技术大学先进技术研究院 数据安全交互方法、***、装置、设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108092982A (zh) * 2017-12-22 2018-05-29 广东工业大学 一种基于联盟链的数据存储方法及***
CN109218291A (zh) * 2018-08-14 2019-01-15 海南高灯科技有限公司 一种基于区块链的数据流转方法、***及相关设备
CN109347941A (zh) * 2018-10-10 2019-02-15 南京简诺特智能科技有限公司 一种基于区块链的数据共享平台及其实现方法
CN109492419A (zh) * 2018-11-27 2019-03-19 众安信息技术服务有限公司 用于获取区块链中的数据的方法、装置及存储介质
CN109547488A (zh) * 2018-12-29 2019-03-29 杭州趣链科技有限公司 一种基于联盟区块链的可信数据计算及交换***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108092982A (zh) * 2017-12-22 2018-05-29 广东工业大学 一种基于联盟链的数据存储方法及***
CN109218291A (zh) * 2018-08-14 2019-01-15 海南高灯科技有限公司 一种基于区块链的数据流转方法、***及相关设备
CN109347941A (zh) * 2018-10-10 2019-02-15 南京简诺特智能科技有限公司 一种基于区块链的数据共享平台及其实现方法
CN109492419A (zh) * 2018-11-27 2019-03-19 众安信息技术服务有限公司 用于获取区块链中的数据的方法、装置及存储介质
CN109547488A (zh) * 2018-12-29 2019-03-29 杭州趣链科技有限公司 一种基于联盟区块链的可信数据计算及交换***

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112966022A (zh) * 2021-03-10 2021-06-15 安徽航天信息科技有限公司 一种数据交易平台的信息查询方法、装置及***
CN112966022B (zh) * 2021-03-10 2024-04-05 安徽航天信息科技有限公司 一种数据交易平台的信息查询方法、装置及***
CN114915640A (zh) * 2022-05-06 2022-08-16 中国科学技术大学先进技术研究院 数据安全交互方法、***、装置、设备及可读存储介质
CN114915640B (zh) * 2022-05-06 2023-12-26 中国科学技术大学先进技术研究院 数据安全交互方法、***、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN111835687B (zh) 2022-08-23

Similar Documents

Publication Publication Date Title
CN110109930B (zh) 基于区块链双链结构的政务数据存储、查询方法及***
US10789373B2 (en) System and method for securely storing and sharing information
US10348700B2 (en) Verifiable trust for data through wrapper composition
KR102144302B1 (ko) 저작권 관리 방법 및 시스템
US10275603B2 (en) Containerless data for trustworthy computing and data services
TWI709314B (zh) 資料處理方法和裝置
US10348693B2 (en) Trustworthy extensible markup language for trustworthy computing and data services
KR102008885B1 (ko) 데이터 관리 및 큐레이션 시스템
US11176282B2 (en) Encrypting data associated with decentralized identifier
CN108667605B (zh) 一种数据加密、解密方法和装置
CN105103119A (zh) 数据安全服务***
JP2012518330A (ja) 高信頼なクラウド・コンピューティングおよびクラウド・サービスのフレームワーク
CN109858259B (zh) 基于HyperLedger Fabric的社区健康服务联盟数据保护和共享方法
CN112861102B (zh) 基于区块链对电子文件的处理方法和***
CN111835687B (zh) 基于区块链的安全协同***及安全协同方法
CN117396869A (zh) 用于使用分布式账本技术进行安全密钥管理的***和方法
CN111008855A (zh) 一种基于改进代理重加密的追溯数据访问控制方法
Guo et al. Using blockchain to control access to cloud data
Sharma et al. Blockchain-based distributed application for multimedia system using Hyperledger Fabric
Kyriakidou et al. Decentralized identity with applications to security and privacy for the internet of things
CN115048672A (zh) 基于区块链的数据审计方法和装置、处理器及电子设备
CN111832032B (zh) 数据流通的方法、***、数据使用***及安全计算***
Tueno et al. Selective access for supply chain management in the cloud
Rech et al. A decentralized service-platform towards cross-domain entitlement handling
Chhabra et al. Blockchain, AI, and Data Protection in Healthcare: A Comparative Analysis of Two Blockchain Data Marketplaces in Relation to Fair Data Processing and the ‘Data Double-Spending’Problem

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