CN114510734A - 数据访问控制方法、装置及计算机可读存储介质 - Google Patents
数据访问控制方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114510734A CN114510734A CN202210165021.3A CN202210165021A CN114510734A CN 114510734 A CN114510734 A CN 114510734A CN 202210165021 A CN202210165021 A CN 202210165021A CN 114510734 A CN114510734 A CN 114510734A
- Authority
- CN
- China
- Prior art keywords
- data
- key
- access
- public key
- root
- 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
Links
Images
Classifications
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供了一种数据访问控制方法、装置及计算机可读存储介质。该方法包括:基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。通过本发明,实现了细粒度、高可靠性、高保护强度的数据访问控制。
Description
技术领域
本发明实施例涉及通信领域,具体而言,涉及一种数据访问控制方法、装置及计算机可读存储介质。
背景技术
目前,为了控制对数据的访问,往往通过数据加解密实现数据的访问控制,常用的加密方式包括对称加密和非对称加密等。
在大数据时代,数据流转与使用空前频繁,相关技术中,通过数据加解密实现访问控制的技术方案不适于基于数据加解密的访问控制需求,体现在以下3个方面:
(1)无法实现细粒度数据加密:相关技术中基于全量数据加密技术实现访问控制,无法对用户权限进行细粒度加解密保护。
(2)单个用户权限过大:如果用户拥有公钥,拥有对所有数据的使用权限,用户可以解密所有数据。如果用户没有公钥,不具备任何数据的使用权限,用户即无法解密数据。在一套密钥加密全量数据的方案下,用户权限过大,数据泄露风险加剧。
(3)密钥丢失密文无法恢复:相关技术中,通过数据加解密实现访问控制的技术方案往往只有一套公私钥,丢失密钥后,数据无法恢复,产生严重的数据安全事件。需要一套基于群密钥的数据加密方法,解决此密钥丢失问题。
综上,面对相关技术中的数据访问控制方案所存在的无法实现细粒度数据加密、单个用户权限过大、密钥丢失密文无法恢复等问题,需要提供一种全新的数据访问控制方案。
发明内容
本发明实施例提供了一种数据访问控制方法、装置及计算机可读存储介质,以至少解决相关技术中无法实现细粒度数据加密、单个用户权限过大、密钥丢失密文无法恢复的问题中的至少之一。
根据本发明的一个实施例,提供了一种数据访问控制方法,包括:基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
在至少一个示例性实施例中,基于原始数据的访问权限集合生成根私钥和第一根公钥包括:将所述原始数据的身份标识和所述访问权限集合中的所述n个权限要素连接得到字符串,并基于所述字符串应用杂凑算法生成所述根私钥;基于所述根私钥应用非对称加密算法生成所述第一根公钥。
在至少一个示例性实施例中,所述原始数据的所述身份标识包括所述原始数据的摘要值。
在至少一个示例性实施例中,基于所述根私钥执行数据加密得到所述原始数据对应的加密数据包括:采用所述根私钥加密第一对称密钥得到对称密钥密文,采用所述第一对称密钥加密所述原始数据得到数据密文,并采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文;记录所述对称密钥密文、所述数据密文和所述数据摘要密文作为所述原始数据对应的所述加密数据。
在至少一个示例性实施例中,采用所述第一对称密钥加密所述原始数据得到数据密文包括:应用对称加密算法、采用所述第一对称密钥加密所述原始数据得到所述数据密文;采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文:应用对称加密算法、采用所述第一对称密钥加密所述原始数据的所述摘要值得到所述数据摘要密文。
在至少一个示例性实施例中,所述原始数据的所述摘要值是基于所述原始数据应用杂凑算法生成的。
在至少一个示例性实施例中,将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥包括:根据拉格朗日插值算法构造密钥切分多项式,其中,所述密钥切分多项式包括所述第一根公钥和n个单项式;生成n个随机数带入所述密钥切分多项式作为所述n个单项式的参数,并基于所述密钥切分多项式生成所述密钥切分多项式的n个取值作为所述n个访问公钥。
在至少一个示例性实施例中,所述密钥切分多项式基于预设阈值构造,其中,所述预设阈值是基于所述密钥切分多项式切分出来的所述访问公钥恢复出所述第一根公钥所需的访问公钥的最小数量。
在至少一个示例性实施例中,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权包括:基于携带的所述访问公钥进行密钥恢复,得到第二根公钥;采用所述第二根公钥解密所述对称密钥密文得到第二对称密钥;采用所述第二对称密钥解密所述数据密文和所述数据摘要密文,分别得到解密数据和第一解密摘要值;基于所述解密数据应用杂凑算法生成所述解密数据的第二解密摘要值;在所述第一解密摘要值与所述第二解密摘要值相等的情况下,确定所述数据访问鉴权通过。
在至少一个示例性实施例中,基于携带的所述访问公钥进行密钥恢复,得到第二根公钥包括:根据拉格朗日插值算法构造密钥恢复算法;将携带的所述访问公钥带入所述密钥恢复算法,得到所述第二根公钥。
根据本发明的另一个实施例,提供了一种数据访问控制装置,包括:根密钥生成模块,用于基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;数据加密模块,用于基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;访问公钥生成及分发模块,用于将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;访问鉴权模块,用于在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,由于加密使用的根私钥以及根公钥都是基于原始数据的访问权限集合生成,因此实现了细粒度加解密访问控制;由于将根公钥切分成与访问权限集合中的所有权限要素一一对应的访问公钥,并将访问公钥按照用户满足的权限要素进行分发,避免了公钥集中在一人之手权限过大、丢失后无法恢复数据的问题;基于所述加密数据和携带的所述访问公钥进行数据访问鉴权,能够实现数据加解密的细粒度管控,大幅缩小数据暴露量,大幅提升隐私数据保护强度。因此,该方案可以解决相关技术中无法实现细粒度数据加密、单个用户权限过大、密钥丢失密文无法恢复的问题中的一个或多个,实现了细粒度、高可靠性、高保护强度的数据访问控制。
附图说明
图1是根据本发明实施例的采用SM4算法生成数据加密与解密密钥的示意图;
图2是根据本发明实施例的采用SM2算法生成密钥的加密密钥与解密密钥的示意图;
图3是根据本发明实施例的数据加密过程的流程图;
图4是根据本发明实施例的数据解密过程的流程图;
图5是本发明实施例的一种数据访问控制方法的服务器的硬件结构框图;
图6是根据本发明实施例的数据访问控制方法的流程图;
图7是根据本发明实施例的数据访问控制装置的结构框图;
图8是根据本发明实施例的数据访问控制系统结构图;
图9是根据本发明实施例的数据的身份标识的生成过程示意图;
图10是根据本发明实施例的数据权限集合的示意图;
图11是根据本发明实施例的根私钥生成过程示意图;
图12是根据本发明实施例的根公钥生成过程示意图;
图13是根据本发明实施例的加密数据包构建过程示意图;
图14是根据本发明实施例的访问令牌与权限集合关系的示意图;
图15是根据本发明实施例的访问令牌分发的示意图;
图16是根据本发明实施例的数据域和用户域的示意图;
图17是根据本发明实施例的用户受权的示意图;
图18是根据本发明实施例的数据受权的示意图;
图19是根据本发明实施例的访问控制系统的架构示意图。
具体实施方式
目前的通过数据加解密实现访问控制的技术方案,一般是包括以下几个步骤:
(1)生成数据加解密密钥。图1是根据本发明实施例的采用SM4算法生成数据加密与解密密钥的示意图,如图1所示,采用国家密码局发布的对称加密算法SM4,生成用于加密与解密数据的对称密钥。此算法生成的加密密与解密密钥相同。
(2)生成密钥加密密钥与解密密钥。图2是根据本发明实施例的采用SM2算法生成密钥的加密密钥与解密密钥的示意图,如图2所示,采用国家密码局发布的非对称加密算法SM2,生成用于加密与解密密钥的非对称密钥对。此算法生成一个公钥、一个私钥,一般私钥用于加密数据,公钥用于解密数据。
(3)数据加密。图3是根据本发明实施例的数据加密过程的流程图,如图3所示,该数据加密过程包括2个子过程,过程1是采用SM4算法、对称密钥,加密明文,得到密文。过程2是采用SM2算法、私钥加密用于加密数据的对称密钥。
(4)数据解密。图4是根据本发明实施例的数据解密过程的流程图,如图4所示,该数据揭秘过程包括2个子过程,过程1是采用SM2算法、公钥解密用于解密数据的对称密钥。过程2是采用SM4算法、对称密钥,解密数据,得到明文。
目前,在大数据时代,数据流转与使用空前频繁,上述通过数据加解密实现访问控制的技术方案不适于基于数据加解密的访问控制需求,体现在以下3个方面:
(1)无法实现细粒度数据加密问题:上述通过数据加解密实现访问控制的技术方案是基于全量数据加密技术实现的访问控制方法,无法对用户权限进行细粒度加解密保护,需要一套基于数据特征的细粒度数据加密方法,解决细粒度数据加密问题。
(2)单个用户权限过大问题:如果用户拥有公钥,拥有对所有数据的使用权限,用户可以解密所有数据。如果用户没有公钥,不具备任何数据的使用权限,用户即无法解密数据。在这种一套密钥加密全量数据的方案下,用户权限过大,数据泄露风险加剧,需要一套基于身份标识的数据加密方法,解决用户权限过大的问题。
(3)密钥丢失密文无法恢复问题:该通过数据加解密实现访问控制的技术方案只有一套公私钥,丢失密钥后,数据无法恢复。在只有一套公私钥的情况下,若丢失了数据密钥或密钥加密密钥,则会导致密文数据无法恢复,产生严重的数据安全事件,需要一套基于群密钥的数据加密方法,解决此密钥丢失问题。
本发明以下实施例提出了一种数据访问控制方案,以至少解决相关技术中无法实现细粒度数据加密、单个用户权限过大、密钥丢失密文无法恢复的问题中的至少之一。
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在服务器、计算机终端或者类似的运算装置中执行。以运行在服务器上为例,图5是本发明实施例的一种数据访问控制方法的服务器的硬件结构框图。如图5所示,服务器可以包括一个或多个(图5中仅示出一个)处理器502(处理器502可以包括但不限于中央处理器CPU、微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器504,其中,上述服务器还可以包括用于通信功能的传输设备506以及输入输出设备508。本领域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述服务器的结构造成限定。例如,服务器还可包括比图1中所示更多或者更少的组件,或者具有与图5所示不同的配置。
存储器504可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据访问控制方法对应的计算机程序,处理器502通过运行存储在存储器504内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器504可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器504可进一步包括相对于处理器502远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置506用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器的通信供应商提供的有线或无线网络。
在本实施例中提供了一种可以运行在运算装置上的数据访问控制方法,图6是根据本发明实施例的数据访问控制方法的流程图,如图6所示,该流程包括如下步骤:
步骤S602,基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数。
在至少一个示例性实施例中,步骤S602基于原始数据的访问权限集合生成根私钥和第一根公钥包括:将所述原始数据的身份标识和所述访问权限集合中的所述n个权限要素连接得到字符串,并基于所述字符串应用杂凑算法生成所述根私钥;基于所述根私钥应用非对称加密算法生成所述第一根公钥。在至少一个示例性实施例中,所述原始数据的所述身份标识可以包括所述原始数据的摘要值。这里,杂凑算法可以为SM3杂凑算法;非对称加密算法可以为SM2非对称加密算法。在至少一个示例性实施例中,所述原始数据的所述摘要值是基于所述原始数据应用杂凑算法生成的,这里,杂凑算法可以为SM3杂凑算法。
步骤S604-1,基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据。
在至少一个示例性实施例中,步骤S604-1基于所述根私钥执行数据加密得到所述原始数据对应的加密数据可以包括:采用所述根私钥加密第一对称密钥得到对称密钥密文,采用所述第一对称密钥加密所述原始数据得到数据密文,并采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文;记录所述对称密钥密文、所述数据密文和所述数据摘要密文作为所述原始数据对应的所述加密数据。
在至少一个示例性实施例中,采用所述第一对称密钥加密所述原始数据得到数据密文可以包括:应用对称加密算法、采用所述第一对称密钥加密所述原始数据得到所述数据密文;采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文:应用对称加密算法、采用所述第一对称密钥加密所述原始数据的所述摘要值得到所述数据摘要密文。这里,对称加密算法可以为SM4对称加密算法。
在至少一个示例性实施例中,所述原始数据的所述摘要值是基于所述原始数据应用杂凑算法生成的,这里,杂凑算法可以为SM3杂凑算法。
步骤S604-2,将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户。
在至少一个示例性实施例中,将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥包括:根据拉格朗日插值算法构造密钥切分多项式,其中,所述密钥切分多项式包括所述第一根公钥和n个单项式;生成n个随机数带入所述密钥切分多项式作为所述n个单项式的参数,并基于所述密钥切分多项式生成所述密钥切分多项式的n个取值作为所述n个访问公钥。
在至少一个示例性实施例中,所述密钥切分多项式基于预设阈值构造,其中,所述预设阈值是基于所述密钥切分多项式切分出来的所述访问公钥恢复出所述第一根公钥所需的访问公钥的最小数量,换句话说,只要提供了不少于预设阈值的数量的访问公钥,理论上即可恢复出根公钥。
需要注意的是,步骤S604-1和步骤S604-2的执行是互相独立的,无依赖关系,二者之间没有必然的执行顺序,即可以先执行步骤S604-1,然后再执行步骤S604-2,也可以先执行步骤S604-2,然后再执行步骤S604-1,或者同时执行步骤S604-1和S604-2。
步骤S606,在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
在至少一个示例性实施例中,步骤S606基于所述加密数据和携带的所述访问公钥进行数据访问鉴权可以包括:
基于携带的所述访问公钥进行密钥恢复,得到第二根公钥,在至少一个示例性实施例中,基于携带的所述访问公钥进行密钥恢复,得到第二根公钥可以包括:根据拉格朗日插值算法构造密钥恢复算法;将携带的所述访问公钥带入所述密钥恢复算法,得到所述第二根公钥;
采用所述第二根公钥解密所述对称密钥密文得到第二对称密钥;
采用所述第二对称密钥解密所述数据密文和所述数据摘要密文,分别得到解密数据和第一解密摘要值;
基于所述解密数据应用杂凑算法生成所述解密数据的第二解密摘要值;
在所述第一解密摘要值与所述第二解密摘要值相等的情况下,确定所述数据访问鉴权通过。
通过上述步骤,由于加密使用的根私钥以及根公钥都是基于原始数据的访问权限集合生成,因此实现了细粒度加解密访问控制;由于将根公钥切分成与访问权限集合中的所有权限要素一一对应的访问公钥,并将访问公钥按照用户满足的权限要素进行分发,避免了公钥集中在一人之手权限过大、丢失后无法恢复数据的问题;基于所述加密数据和携带的所述访问公钥进行数据访问鉴权,能够实现数据加解密的细粒度管控,大幅缩小数据暴露量,大幅提升隐私数据保护强度。因此,该方案可以解决相关技术中无法实现细粒度数据加密、单个用户权限过大、密钥丢失密文无法恢复的问题中的一个或多个,实现了细粒度、高可靠性、高保护强度的数据访问控制。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据访问控制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本发明实施例的数据访问控制装置的结构框图,如图7所示,该装置包括:
根密钥生成模块72,用于基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;
数据加密模块74,用于基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;
访问公钥生成及分发模块76,用于将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;
访问鉴权模块78,用于在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在本实施例中,上述计算机可读存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;
S2,基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;
S3,在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在一个示例性实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;
S2,基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;
S3,在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
以下通过示例性实施例详细描述该数据访问控制方案,该数据访问控制方案基于属性特征,能够满足用户使用加密技术实现数据细粒度访问控制的诉求。
图8是根据本发明实施例的数据访问控制系统结构图,以下结合图8描述总体技术方案的实现过程。
数据访问控制系统由数据管理、数据身份标识、数据权限集合、根密钥、访问令牌、用户权限集合、鉴定访问令牌模块组成。
数据管理是指需要进行访问控制保护的数据。
数据身份标识,系统采用SM3杂凑算法生成数据的摘要值。SM3杂凑算法是现代密码学的基本工具,它能够将任意长度的消息压缩成固定长度的摘要。杂凑值又称为杂凑码、消息摘要、数字指纹。通常密码杂凑算法被非正式地称为杂凑算法。杂凑算法的重要性是能够赋予每个消息唯一的数字指纹,即使更改该消息的一个字母,对应的杂凑值也会变成截然不同的指纹,杂凑算法在现代密码学中有这极其重要的作用,它最常用的用处是用在数字签名、数据完整性保护中,杂凑算法是数字签名的核心技术,通常用公钥算法如SM2进行数字签名时,一般不是对消息直接签名,而是对消息的杂凑值进行签名,这样即可以减少计算量,提高效率,也可以破坏数字签名算法的某些代数结构,保障其安全性。杂凑算法还是很许多密码算法安全的基本条件,它可以用来设计消息认证码以及众多可证明安全协议,还广泛应用于口令保护协议、电子支付协议、广播认证协议等密码协议中。采用SM3算法,可以将不等长度的数据加密生成固定长度的摘要数据,一提高后续加密操作效率。二保护原文确保未经受权的系统管理员无法查看数据。三密切跟踪数据,当原文发生变化时需要重新生成摘要值。
数据权限集合,为数据赋予可以访问的权利特征。如有权使用数据的部门、人员、操作类型、时间等要素,并且可以定义这些要素之间的是或(or)、与(and)、非(not)的关系。
根密钥,以数据摘要为根私钥,采用SM2算法生成数据访问根公钥。椭圆曲线公钥密码算法(elliptic curve cryptography,简称为ECC)简称为SM2,是我国公钥密码算法标准,SM2算法的主要内容包括3部分:数字签名算法、密钥交换协议、公钥加密算法。
数据加密,生成数据摘要、加密密钥,采用加密算法,构建加密数据。
访问令牌,构建密钥切片多项式,将根公钥,按数据权限集合中权限的数量切分成多个访问公钥,将访问公钥发送至用户,作为用户访问令牌。
用户权限集合,为用户赋予可以使用哪些数据的相关权限属性。
鉴定访问令牌,用户请求某数据时,将用户所持有的访问令牌发送至数据访问控制系统,数据访问控制系统,汇聚访问令牌,恢复根公钥,解密数据,若解密成功,则用户具有访问权限,否则用户不具有访问权限。
以下对上述系统技术方案的各实现步骤进行详细的说明。
1、数据身份标识生成过程
图9是根据本发明实施例的数据的身份标识的生成过程示意图,如图9所示,身份标识模块采用国密算法SM3生成数据的摘要值H(D),将数据摘要值H(D)作为数据的身份标识。
2、数据权限集合定义过程
图10是根据本发明实施例的数据权限集合的示意图,如图10所示,数据权限集合模块,由图10中叶子节点,构成了数据权限集合特征。
权限集合Q的数学表达:Q{{A科室、B科室}、{A、B、C、D}、{增加、删除、修改}、{周五}},用一个表达式将权限集合内的要素进行连接,该表达式使用逻辑表达式来实现,包括if,else,与,或,非。
明确的通过集合的方式,定义数据权限,解决相关技术下,权限定义主观性强且随意的问题。
3、根密钥生成过程
图11是根据本发明实施例的根私钥生成过程示意图,如图11所示,根密钥模块,将数据身份标识与数据权限集合内要素连接(用逗号等特殊字符作为连接符),采用SM3杂凑算法生成连接后内容的摘要值,将该摘要值作为根私钥Kroot-pri。
图12是根据本发明实施例的根公钥生成过程示意图,如图12所示,采用SM2非对称密钥算法、根私钥Kroot-pri,生成根公钥Kroot-pub。
到此,形成了用于访问控制的根密钥对(Kroot-pri,Kroot-pub)。
4、数据加密过程
图13是根据本发明实施例的加密数据包构建过程示意图,如图13所示,构建加密数据包过程包括:
(1)生成16字符的随机数,作为对称密钥K。
(2)采用根私钥Kroot-pri,加密对称密钥K,得到对称密钥密文E(Kroot-pri,K)。
(3)采用摘要算法SM3,生成明文数据D的数据摘要值H(D)。
(4)采用对称加密算法SM4、对称密钥K,加密数据摘要H(D),得到数据摘要密文E(K,H)。SM4分组密码算法简称为SM4算法,SM4算法是一个迭代分组密码算法,由解密算法和密钥扩展算法组成,SM4分组密码算法采用非平衡Feistel结构,分组长度为128b,密钥长度为128b。加密算法与密钥扩展算法均采用32轮非线性迭代结构,加密运算和和解密运算的算法结构相同,解密运算轮密钥使用顺序与加密运行相反。
(5)采用对称加密算法SM4,对称密钥K,加密数据D,得到数据密文E(K,D)。
(6)将E(Kroot-pri,K)与E(K,H)与E(K,D)联合,作为加密后数据。
5、访问令牌生成过程
访问令牌模块,构建密钥切分多项式,将根公钥按数据权限集合数量切分成多个访问公钥,将访问公钥发送至有权限的用户,作为用户访问令牌。该过程主要分为以下几个处理步骤:
(1)构造密钥切分多项式
采用拉格朗日插值算法,构造密钥拆分多项式。
F(T)=(pub_root+X1T1+X2T2+X3T3+XnTn)mod(p)
其中:
pub_root是需要切片的根公钥;
X是多项式参数,在生成访问令牌时,由系统产生随机数作为多项式参数;
T是访问令牌,即要生成的值;
P是大素数,且P要大于根公钥pub_root;
n是权限要素的数量,将根公钥拆分成n份。
(2)生成访问令牌
根据密钥切分多项式,产生访问令牌。
系统产生n个随机数,作为参数X的值,经过多项式运行后,产生n个F(T)值。
即:(X1,F(T1),X2,F(T2),X3,F(T3),Xn,F(Tn))
(3)定义访问令牌与权限集合关系
图14是根据本发明实施例的访问令牌与权限集合关系的示意图,将根公钥拆分成多个访问令牌后,建立访问令牌与数据权限集合中要素的对应关系。
(5)访问令牌分发
图15是根据本发明实施例的访问令牌分发的示意图,用户权限集合模块,系统管理人员,将访问令牌与用户进行绑定,完成用户权限受权。
6、访问令牌鉴权过程
鉴定访问令牌模块,用户向系统请求某数据,将用户的访问令牌片断发送至系统,系统构造密钥恢复算法,生成根公钥,鉴定用户权限。该过程主要分为以下几个处理步骤:
(1)构造密钥恢复算法
根据拉格朗日插值法,构造密钥恢复算法。
其中:
yi是密钥拆分多项式中F(xi);
t是用户所发送的访问令牌的个数,t小于或等于n;
i是遍历数;
j是遍历数;
i,j<t;
此公式中的素数p与密钥拆分多项中的p值相等。
F(x)是待计算生成的根公钥。
(2)生成根公钥
用户将令牌发送到系统后,系统运行密钥恢复算法,其中x、yi、p均是已知值,F(x)是待计算生成的结果,即根公钥。
(3)权限鉴别
得到加密数据后,根据加密后的组合进行截取得到:对称密钥密文E(Kroot-pri,K)、摘要数据密文E(K,H)、数据密文E(K,D)。数据权限鉴别过程如下:
(3.1)采用根公钥,恢复对称密钥密文,得到对称密钥。
(3.2)采用对称密钥,恢复数据摘要密文得到数据摘要HA。
(3.3)采用对称密钥,恢复数据密文得到数据明文。
(3.4)采用摘要SM3算法,计算数据明文,得到新的摘要值HA。
(3.5)比较HA==HA,如果相等说明,具有权限、解密成功,且数据未被篡改。如果比较失败说明,没有权限、解密失败,或数据被篡改。
综上,该数据访问控制方案包括以下过程:首先,提取数据属性特征,如生产制造类、生产制造部等属性;其次,根据数据属性特征,构造多个访问令牌。然后,持有达到限定数量访问令牌的用户,才能解密数据。该方案实现了基于加解密技术的细粒度数据访问控制,解决了以下3项关键问题:(1)采用属性基理论,基于数据特征生成密钥,解决细粒度数据加密问题。(2)采用身份标识密钥,基于主体标识与客体标识,解决单密钥情况下,解决权限过大问题。(3)采用群密钥理论,基于令牌生成与令牌鉴别,解决密钥丢失后的密文恢复问题。
以下通过一个具体实例,说明该数据访问控制方案的具体应用。该实例中,将该数据访问控制方案应用到某商业银行数据安全防护项目,该商业银行包括综合办公室、运营财务部、个人金融部、公司业务部、风险管理部等多个部门,这些部门产生了大量数据,统一存储在企业私有云中,如何控制对这些数据的使用权限,确保企业重要数据安全,是企业安全管理必须要解决问题。
在本项目中,采用基于属性的访问控制理论、属性基加密方法,将企业数据与企业用户分为数据域与用户域两个域。图16是根据本发明实施例的数据域和用户域的示意图,为用户域和数据域中的每个要素,打上权限集合标签。图17是根据本发明实施例的用户受权的示意图,图18是根据本发明实施例的数据受权的示意图。将每项数据权限标签,均加密成数据访问令牌。将每项用户权限标签,均加密成用户访问令牌。
然后在用户访问数据时,检查用户的权限集合标签与数据的权限标签是否一致(通过前述访问令牌鉴权过程确定一致性)。当数据权限集合标签完全包含在用户权限集合标签范围内时,认为用户具有访问权限。当数据权限集合标签不完全包含在用户权限标签范围内时,认为用户不具有访问权限,从而达到灵活是控制数据访问权限的目的。
图19是根据本发明实施例的访问控制系统的架构示意图,以下基于图19详细描述系统中各个模块的实施过程。
1、数据管理
数据身份标识,采用SM3杂凑算法生成目标数据的摘要值,作为数据身份标识。
数据与数据身份标识对照表,在数据身份标识与原始数据之间建立关联映射关系,在系统中保存关联映射记录。
数据权限管理,为数据赋予可以访问的权利特征。如有权使用数据的部门、人员、操作类型、时间等要素。
2、访问控制令牌管理
根密钥对,以数据身份标识和数据权限集合内的要素相连,之后进行SM3杂凑,生成根私钥,采用SM2算法生成数据访问根公钥。
访问控制令牌,按最小权限集阈值数量,构建密钥切片多项式,将根公钥,按数据权限集合中权限的数量切分成多个访问公钥。
令牌分发,用户根据系统赋予的权限,获取访问控制令牌。
最小权限集阈值,设置恢复访问控制令牌时,需要的最少令牌数。
3、用户访问控制权限管理
用户管理,支持以自定义方式维护用户,支持从LDAP系统中导入用户。
用户权限集合,为用户赋予使用数据的相关权限特征,如用户的部门、姓名、员工号等属性。
用户令牌获取,系统自动根据赋予用户的权限,从访问控制令牌管理模块获取相应访问控制令牌。
4、访问控制权限鉴别管理
汇聚访问令牌,用户在使用系统数据前,将访问控制令牌发送至访问控制系统。访问控制系统,采用密钥恢复算法计算密钥访问数据的根公钥。
鉴定访问令牌,访问控制系统将恢复的根公钥与系统中存储的根公钥进行比对(通过前述访问令牌鉴权过程确定一致性),若一致则表明用户具有访问控制权限,解密数据,返回明文数据。若不一致,否则表明用户不具备数据的访问控制权限,返回信息:您无权访问此数据。
综上,本发明实施例提供的基于属性特征的数据访问控制方案,满足用户使用密码技术实现数据细粒度访问控制的诉求,基于数据属性特征的细粒度管理,让用户可以将数据属性和用户属性进行灵活的匹配,从而实现了细粒度加解密访问控制;基于拉格朗日线性插值算法实现的密钥分发与密钥恢复,解决了单密钥系统,密钥丢失后,无法恢复数据的重大数据安全风险;通过数据加解密的细粒度管控,大幅缩小数据暴露量,大幅提升隐私数据保护强度。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种数据访问控制方法,其特征在于,包括:
基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;
基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;
在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
2.根据权利要求1所述的方法,其特征在于,基于原始数据的访问权限集合生成根私钥和第一根公钥包括:
将所述原始数据的身份标识和所述访问权限集合中的所述n个权限要素连接得到字符串,并基于所述字符串应用杂凑算法生成所述根私钥;
基于所述根私钥应用非对称加密算法生成所述第一根公钥。
3.根据权利要求2所述的方法,其特征在于,所述原始数据的所述身份标识包括所述原始数据的摘要值。
4.根据权利要求1所述的方法,其特征在于,基于所述根私钥执行数据加密得到所述原始数据对应的加密数据包括:
采用所述根私钥加密第一对称密钥得到对称密钥密文,采用所述第一对称密钥加密所述原始数据得到数据密文,并采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文;
记录所述对称密钥密文、所述数据密文和所述数据摘要密文作为所述原始数据对应的所述加密数据。
5.根据权利要求4所述的方法,其特征在于,
采用所述第一对称密钥加密所述原始数据得到数据密文包括:应用对称加密算法、采用所述第一对称密钥加密所述原始数据得到所述数据密文;
采用所述第一对称密钥加密所述原始数据的摘要值得到数据摘要密文:应用对称加密算法、采用所述第一对称密钥加密所述原始数据的所述摘要值得到所述数据摘要密文。
6.根据权利要求3-5中任一项所述的方法,其特征在于,所述原始数据的所述摘要值是基于所述原始数据应用杂凑算法生成的。
7.根据权利要求1所述的方法,其特征在于,将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥包括:
根据拉格朗日插值算法构造密钥切分多项式,其中,所述密钥切分多项式包括所述第一根公钥和n个单项式;
生成n个随机数带入所述密钥切分多项式作为所述n个单项式的参数,并基于所述密钥切分多项式生成所述密钥切分多项式的n个取值作为所述n个访问公钥。
8.根据权利要求7所述的方法,其特征在于,
所述密钥切分多项式基于预设阈值构造,其中,所述预设阈值是基于所述密钥切分多项式切分出来的所述访问公钥恢复出所述第一根公钥所需的访问公钥的最小数量。
9.根据权利要求4所述的方法,其特征在于,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权包括:
基于携带的所述访问公钥进行密钥恢复,得到第二根公钥;
采用所述第二根公钥解密所述对称密钥密文得到第二对称密钥;
采用所述第二对称密钥解密所述数据密文和所述数据摘要密文,分别得到解密数据和第一解密摘要值;
基于所述解密数据应用杂凑算法生成所述解密数据的第二解密摘要值;
在所述第一解密摘要值与所述第二解密摘要值相等的情况下,确定所述数据访问鉴权通过。
10.根据权利要求9所述的方法,其特征在于,基于携带的所述访问公钥进行密钥恢复,得到第二根公钥包括:
根据拉格朗日插值算法构造密钥恢复算法;
将携带的所述访问公钥带入所述密钥恢复算法,得到所述第二根公钥。
11.一种数据访问控制装置,其特征在于,包括:
根密钥生成模块,用于基于原始数据的访问权限集合生成根私钥和第一根公钥,其中,所述访问权限集合包括n个权限要素,n为正整数;
数据加密模块,用于基于所述根私钥执行数据加密处理得到所述原始数据对应的加密数据;
访问公钥生成及分发模块,用于将所述第一根公钥切分成与所述n个权限要素一一对应的n个访问公钥,并按照用户满足的权限要素将对应的访问公钥分发给所述用户;
访问鉴权模块,用于在接收到携带访问公钥的数据访问请求的情况下,基于所述加密数据和携带的所述访问公钥进行数据访问鉴权。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至10任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210165021.3A CN114510734B (zh) | 2022-02-22 | 2022-02-22 | 数据访问控制方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210165021.3A CN114510734B (zh) | 2022-02-22 | 2022-02-22 | 数据访问控制方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114510734A true CN114510734A (zh) | 2022-05-17 |
CN114510734B CN114510734B (zh) | 2023-10-20 |
Family
ID=81553729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210165021.3A Active CN114510734B (zh) | 2022-02-22 | 2022-02-22 | 数据访问控制方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114510734B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117633849A (zh) * | 2024-01-26 | 2024-03-01 | 枣庄矿业集团新安煤业有限公司 | 一种煤矿经营全流程智能管控方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111740988A (zh) * | 2020-06-19 | 2020-10-02 | 武汉大学 | 云存储数据加密方法、系统和存储介质 |
CN113381856A (zh) * | 2021-07-07 | 2021-09-10 | 北京明朝万达科技股份有限公司 | 数字签名及验签方法、系统、装置及存储介质 |
CN113438205A (zh) * | 2021-05-31 | 2021-09-24 | 东软集团股份有限公司 | 区块链数据访问控制方法、节点以及系统 |
CN113645195A (zh) * | 2021-07-17 | 2021-11-12 | 中国人民解放军战略支援部队信息工程大学 | 基于cp-abe和sm4的密文访问控制系统及方法 |
CN113761583A (zh) * | 2021-09-30 | 2021-12-07 | 西安理工大学 | 在区块链上的基于属性的访问控制方法 |
CN114065265A (zh) * | 2021-11-29 | 2022-02-18 | 重庆邮电大学 | 基于区块链技术的细粒度云存储访问控制方法、系统及设备 |
-
2022
- 2022-02-22 CN CN202210165021.3A patent/CN114510734B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111740988A (zh) * | 2020-06-19 | 2020-10-02 | 武汉大学 | 云存储数据加密方法、系统和存储介质 |
CN113438205A (zh) * | 2021-05-31 | 2021-09-24 | 东软集团股份有限公司 | 区块链数据访问控制方法、节点以及系统 |
CN113381856A (zh) * | 2021-07-07 | 2021-09-10 | 北京明朝万达科技股份有限公司 | 数字签名及验签方法、系统、装置及存储介质 |
CN113645195A (zh) * | 2021-07-17 | 2021-11-12 | 中国人民解放军战略支援部队信息工程大学 | 基于cp-abe和sm4的密文访问控制系统及方法 |
CN113761583A (zh) * | 2021-09-30 | 2021-12-07 | 西安理工大学 | 在区块链上的基于属性的访问控制方法 |
CN114065265A (zh) * | 2021-11-29 | 2022-02-18 | 重庆邮电大学 | 基于区块链技术的细粒度云存储访问控制方法、系统及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117633849A (zh) * | 2024-01-26 | 2024-03-01 | 枣庄矿业集团新安煤业有限公司 | 一种煤矿经营全流程智能管控方法及系统 |
CN117633849B (zh) * | 2024-01-26 | 2024-04-12 | 枣庄矿业集团新安煤业有限公司 | 一种煤矿经营全流程智能管控方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114510734B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111130757B (zh) | 一种基于区块链的多云cp-abe访问控制方法 | |
WO2020259635A1 (zh) | 一种区块链数据共享方法及装置 | |
US10673626B2 (en) | Threshold secret share authentication proof and secure blockchain voting with hardware security modules | |
US20200084027A1 (en) | Systems and methods for encryption of data on a blockchain | |
Nabeel et al. | Privacy preserving policy-based content sharing in public clouds | |
US10880100B2 (en) | Apparatus and method for certificate enrollment | |
Shyamambika et al. | Attaining integrity, secured data sharing and removal of misbehaving client in the public cloud using an external agent and secure encryption technique | |
CN114499894B (zh) | 区块链网络中的文件存储、读取方法及存储读取系统 | |
Kumar et al. | TPA auditing to enhance the privacy and security in cloud systems | |
WO2021098152A1 (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
Gao et al. | An efficient certificateless public auditing scheme in cloud storage | |
CN114510734B (zh) | 数据访问控制方法、装置及计算机可读存储介质 | |
Zhang et al. | Data security in cloud storage | |
Ramprasath et al. | Protected data sharing using attribute based encryption for remote data checking in cloud environment | |
CN112187767A (zh) | 基于区块链的多方合同共识系统、方法及介质 | |
CN115842663A (zh) | 一种ip地址保护申请管理方法及系统 | |
Kumar et al. | Hash based approach for providing privacy and integrity in cloud data storage using digital signatures | |
CN114866244A (zh) | 基于密文分组链接加密的可控匿名认证方法、系统及装置 | |
CN114553557A (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
Kulkarni et al. | A Study on Data Security in Cloud Computing: Traditional Cryptography to the Quantum Age Cryptography | |
Nicholas et al. | Enhancing trust in cloud computing using MD5 hashing algorithm and RSA encryption standard | |
Contiu | Applied Cryptographic Access Control for Untrusted Cloud Storage | |
Kirupanithi et al. | Hierarchical deterministic protocol for the defragmentation of identity in a blockchain-based framework | |
WO2023198036A1 (zh) | 一种密钥生成方法、装置及设备 | |
Aisikaer et al. | Toward Secure and Timesaving Data Sharing: Cloud Encryption of RSA-co-ABE |
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 |