CN114095214A - 一种基于区块链nft技术的加、解密方法及装置、设备及介质 - Google Patents

一种基于区块链nft技术的加、解密方法及装置、设备及介质 Download PDF

Info

Publication number
CN114095214A
CN114095214A CN202111277540.0A CN202111277540A CN114095214A CN 114095214 A CN114095214 A CN 114095214A CN 202111277540 A CN202111277540 A CN 202111277540A CN 114095214 A CN114095214 A CN 114095214A
Authority
CN
China
Prior art keywords
encryption
decryption
nft
node
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
CN202111277540.0A
Other languages
English (en)
Other versions
CN114095214B (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.)
Shanghai Hotline Information Network Co ltd
Original Assignee
Shanghai Hotline Information Network 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 Shanghai Hotline Information Network Co ltd filed Critical Shanghai Hotline Information Network Co ltd
Priority to CN202111277540.0A priority Critical patent/CN114095214B/zh
Publication of CN114095214A publication Critical patent/CN114095214A/zh
Application granted granted Critical
Publication of CN114095214B publication Critical patent/CN114095214B/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/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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/321Cryptographic 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 involving a third party or a trusted authority
    • H04L9/3213Cryptographic 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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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 involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例涉及信息安全技术领域,公开了一种基于区块链NFT技术的加、解密方法及装置、设备及介质。该加密方法包括:请求所述区块链基于符合ERC721协议的共识算法生成N个NFT;其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点;根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥;根据所述N组非对称加密密钥对待加密信息进行签名;将签名后得到的密文通过所述区块链广播出去。本发明实施例通过ERC721的非同质化代币NFT以及椭圆曲线算法生成非对称加密、解密密钥进行加解密,安全性更高,且加解密算法均在本地执行,不依赖服务器分发非对称公钥和私钥,无需占用服务器缓存、数据库资源,同时保密性、拓展性更佳。

Description

一种基于区块链NFT技术的加、解密方法及装置、设备及介质
技术领域
本发明涉及信息安全技术领域,特别涉及一种基于区块链NFT技术的加、解密方法及装置、设备及介质。
背景技术
近年来随着区块链技术的发展,人们已经对其有一定的认知,而作为区块链上价值体现的数字资产也逐渐被人们所认可。公链是区块链发展的前提基础,也是区块链行业未来发展的核心保障。而目前区块链的发展现状是,底层公链的性能尚未发展起来,在其上构建的各类应用严重受限于性能,各种共识算法都有不完美之处。以太坊(Ethereum)是一个建立在区块链技术之上,去中心化应用平台。它允许任何人在平台中建立和使用通过区块链技术运行的去中心化应用。在以太坊上发行最广泛的即是同质化代币-ERC20 Token,作为一种预发行的通用代币,它构建了几乎市面上绝大多数通证经济的基础。而ERC721是以太坊智能合约更加完善的体现,它可以把各种不同特征的事物进行具象化定义,并求得完全非同质的解。
ERC721由Dieter Shirley在2017年9月提出。加密猫是第一个实现了ERC721标准的去中心化应用。目前,ERC721号提议已正式被以太坊作为标准接受。
ERC721的非同质代币NFT(Non-Fungible Token,简称NFT)表示每个NFT都是独一无二的。以加密猫为例,每只猫都被赋予拥有基因,是独一无二的(一只猫就是一个NFTs),猫之间是不能置换的。这种独特性使得某些稀有猫具有收藏价值,也因此受到追捧。而ERC20的同质化代币是可置换的,且可细分为N份(1=10*0.1),而ERC721的Token最小的单位为1,无法再分割。
如果同一个集合的两个物品具有不同的特征,这两个物品是非同质的,而同质是某个部分或数量可以被另一个同等部分或数量所代替。
非同质性其实广泛存在于我们的生活中,如图书馆的每一本书,宠物商店的每一只宠物,歌手所演唱的歌曲,花店里不同的花等等,因此ERC721合约必定有广泛的应用场景。通过这样一个标准,也可建立跨功能的NFTs管理和销售平台(就像有支持ERC20的交易所和钱包一样),使生态更加强大。
传统基于区块链的加密算法,有Raft共识算法等;传统的普通安全加密,有多重签名(Multisign)技术等。但是上述加密方法等加密依赖服务器,通过分发非对称公钥与私钥,占用服务器缓存以及数据库资源,保密性、拓展性不够。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
发明内容
本发明实施例的目的在于提供一种基于区块链NFT技术的加、解密方法及装置、设备及介质,以解决区块链的加密算法依赖服务器,通过分发非对称公钥与私钥,占用服务器缓存以及数据库资源,保密性、拓展性不够的问题。
为解决上述技术问题,第一方面,本发明的实施方式提供了一种基于区块链NFT技术的加密方法,应用于区块链的加密节点,所述方法包括:
请求所述区块链基于符合ERC721协议的共识算法生成N个NFT;其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点;
根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥;
根据所述N组非对称加密密钥对待加密信息进行签名;
将签名后得到的密文通过所述区块链广播出去。
另外,N大于1;
所述根据所述N组非对称加密密钥对待加密信息进行签名,包括:
根据所述N组非对称加密密钥对待加密信息进行多重签名。
另外,所述根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥,包括:
将每个NFT序列化为字节数组;
根据序列化后的NFT的字节数组以及椭圆曲线算法生成各组非对称加密密钥。
另外,所述根据序列化后的NFT的字节数组以及椭圆曲线算法生成所述多组非对称加密密钥,包括:
从所述字节数组中选取k个字节;
利用点乘法计算P=pk×g;其中,P是基准点,p为加密终点,g为椭圆曲线的变动度;k是坐标上的斜率;
计算所述待加密信息的哈希值得到整数z;
根据公式计算S=k-1(z+dA×R)modP;
其中,R为点P到x轴的坐标;k-1是k的模的乘法逆源;A是椭圆曲线的变量,d是不定的参数,dA表示引入有限域上的椭圆曲线;
将(R,S)作为一组非对称加密密钥。
另外,所述将每个NFT序列化为字节数组,包括:
采用RLP方式将每个NFT序列化为字节数组。
第二方面,本发明实施例还提供了一种基于区块链NFT技术的解密方法,应用于区块链的解密节点,所述区块链还包括加密节点,所述解密方法包括:
获取待解密信息;其中,所述待解密信息由所述加密节点采用如前述的加密方法生成;
从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT;
根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥;
根据所述若干组非对称解密密钥对所述待解密信息进行解密。
第三方面,本发明实施例还提供了一种基于区块链NFT技术的加密装置,所述加密装置配置于区块链的加密节点,所述加密装置包括:
NFT获取模块,用于请求所述区块链基于符合ERC721协议的共识算法生成N个NFT;其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点;
加密密钥生成模块,用于根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥;
加密模块,用于根据所述N组非对称加密密钥对待加密信息进行签名;
广播模块,用于将签名后得到的密文通过所述区块链广播出去。
第四方面,本发明实施例还提供了一种基于区块链NFT技术的解密装置,配置于区块链的解密节点,所述区块链还包括加密节点,所述解密装置包括:
待解密信息获取模块,用于获取待解密信息;其中,所述待解密信息由所述加密节点采用如前所述的加密方法生成;
NFT获取模块,用于从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT;
解密密钥生成模块,用于根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥;
解密模块,用于根据所述若干组非对称解密密钥对所述待解密信息进行解密。
第五方面,本发明实施例还提供了一种节点设备,包括:存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如前所述的加密方法和/或如前所述的解密方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的方法。
本发明实施例的加密、解密方法及装置通过区块链先进的ERC721技术产生的独立无二的非同质化代币NFT以及椭圆曲线算法展开成一组或者多组非对称加密或者解密密钥,从而对信息进行加、解密,相较于传统加解密算法而言安全性更高,且加解密算法均在本地执行,不依赖服务器分发非对称公钥和私钥、无需占用服务器缓存、数据库资源,进一步提升保密性、安全性;尤其采用多重因子混合签名技术进行多重签名时,可灵活配置解密级别,拓展性更佳。
附图说明
图1是本发明实施例一提供的基于区块链NFT技术的加密方法的流程示意图;
图2是本发明实施例二提供的基于区块链NFT技术的解密方法的流程示意图;
图3是本发明实施例三提供的基于区块链NFT技术的加密装置的结构示意图;
图4是本发明实施例四提供的基于区块链NFT技术的解密装置的结构示意图;
图5是本发明实施例五提供的加密设备的结构示意图;
图6是本发明实施例六提供的解密设备的结构示意图;。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例一提供的基于区块链NFT技术的加密方法的流程图。本实施例的技术方案可适用于区块链中的任意节点,采用本实施例的基于区块链NFT技术的加密方法的节点可称为加密节点。该方法可以由本发明实施例提供的一种基于区块链NFT技术的加密装置来执行,该装置可以采用软件和/或硬件的方式实现,并配置于区块链节点应用。区块链中的节点可以为任意类型的计算设备。如图1所示,该方法具体包括步骤101至步骤104。
步骤101:请求所述区块链基于符合ERC721协议的共识算法生成N个NFT。
其中,N为非0自然数。所述加密节点指定授权使用每个NFT的解密节点。
ERC全称为Ethereum Request for Comments,即以太坊开发者提交的协议提案。ERC后面的数字是提案编号。ERC721是为NFT(Non-Fungible Token)非同质代币所定义的一种标准,以此标准发行的代币最大的特点为每个代币属性均不相同,独一无二。目前,ERC721已正式成为以太坊网络的代币标准之一。
打算制定以太坊新标准的开发者需在Github上先创建一个EIP(EthereumImprovement Proposal,以太坊改进提案),描述协议内容。经过公开审议后,获得广泛认同的提案会被标准化,列入Gitbub上以太坊代码库的EIPs之中。EIP中有些属于核心层(Core)的改动,有些属于网络层(Networking)的改动;而不涉及修改以太坊本身代码的这部分提议,通常会被归类为ERC。
ERC721简要解释是“Non-Fungible Tokens”,直译为非同质代币,英文简写为"NFT",即每个代币都独一无二。也就是说ERC721的每个Token都拥有独立唯一的Token ID。
根据以太坊区块链技术的智能合约-ERC-20Token合约,展开一个基于ERC721标准的非同质化token。步骤101中加密节点在对待加密信息进行加密时,可通过符合ERC721标准的共识算法DPOS(Delegated Proof of Stake,股份授权证明机制,简称DPOS),向区块链链请求该加密节点的NFT令牌。
加密节点可以请求一个或者多个NFT。基于ERC721智能合约,加密节点在请求NFT时,指定授权使用其所请求的每个NFT的解密节点的信息。具体地,区块链记录有NFT令牌元数据(MetaData),根据ERC721智能合约,NFT令牌元数据中记录有该NFT令牌的所有者(Owner),即加密节点的信息,所有者授权使用该NFT令牌的解密节点的信息等,解密节点可以为区块链中加密节点之外的其他任意节点。
步骤102:根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥。
可选地,根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥可以包括:将每个NFT序列化为字节数组;根据序列化后的NFT的字节数组以及椭圆曲线算法生成各组非对称加密密钥。
其中,将每个NFT序列化为字节数组,可以包括:采用RLP(Recursive LengthPrefix,递归长度前缀编码,简称RLP)方式将所述加密节点的NFT序列化为字节数组。
假如区块链生成并下发给加密节点的一个NFT Token为40字节,通过RLP序列化编码:前缀(0xc0+len(列表总))+列表中各元素项的RLP编码,前缀取值范围是[0xc0,0xf7]。采用RLP方式序列化可使生成的字节数据冗余度低,占用存储空间小。
可选地,根据序列化后的NFT的字节数组以及椭圆曲线算法生成所述一组非对称加密密钥可以包括以下步骤:
S1:从所述字节数组中选取k个字节。
其中,可以选取前20个或者后20个字节,或者按照预设规则指定的任意20个字节。可以理解的是,k的取值可以根据实际需要设置,在此不做具体限制。
S2:利用点乘法计算P=pk×g。
其中,P是基准点,p为加密终点,g为椭圆曲线的变动度;k是坐标上的斜率。
S3:计算所述待加密信息的哈希值得到整数z。
具体地可以采用SHA1计算得到待加密信息的哈希值,待加密信息的哈希值为64字节,可以取其中的20个字节作为整数z。
S4:根据公式计算S=k-1(z+dA×R)modP。
其中,R为点P到x轴的坐标;k-1是k的模的乘法逆源;A是椭圆曲线的变量,d是不定的参数,dA表示引入有限域上的椭圆曲线。S4中的公式是指引入了一个二元n次方程式,与基准P做质数取模,因此加密基准在有限的曲线方程限制下无法被暴力破解。
S5:将(R,S)作为一组非对称加密密钥。
其中,R,S可以分别为前、后20个字节。
S6:针对其余的序列化后的NFT令牌,逐个重复执行S1~S5的生成一组非对称加密密钥的步骤直到得到所有NFT令牌对应的多组非对称加密密钥。其中,每次步骤S1中选取的20个字节可以相同也可以不同。
本实施例的加密密钥生成方法基于NFT技术以及区块链的共识算法(Raft)生成的令牌展开公钥、私钥,不同于传统的质数运算,算法更先进,安全性更高,更容易拓展。
步骤103:根据所述N组非对称加密密钥对待加密信息进行签名。
其中,当加密节点在步骤101中请求一个NFT时,步骤102中对应生成一组非对称加密密钥,然后可以利用一组非对称加密密钥进行签名,实现对待加密信息的加密;当加密节点在步骤101中请求多个NFT时,步骤102中对应生成多组非对称加密密钥,然后可以利用多组非对称加密密钥实现多重签名(Multisign)。具体地,可以对待加密信息的哈希摘要进行签名。多重签名即为多因子混合加密技术。多因子混合加密是多个用户对同一个链信息进行加密签名,可以理解为一个信息地址的多个加密因子。用N把钥匙生成一个多重签名的地址,需要其中M把钥匙才能拥有这个地址上的通证或者数据的权限,N>=M,这就是M/N的多重签名。签名标定的是通证或数据的所属及权限,多重签名预示着资产可由多人支配与管理。以2/3混合加密来说,如果要动用一个地址的数据或者Token,那么需要2个私钥才能进行。需要说明的是,多因子混合加密的加密因子越多,安全级别越高。加密因子的数量可由用户配置,可以随意拓展加密强度,2/3、4/5…n/m,扩展性极佳。
加密节点可以采用多重签名技术进行加密。当加密节点请求了N个NFT token(令牌)时,且每个NFT token都有被授权使用其的解密节点,即不同的解密节点可以使用相同或者不同的NFT token,通过指定解密时需要使用的NFT的个数,即可灵活多样地为不同的解密节点配置对应的解密权限。比如,表一示出了加密结点A的3个token1~3的各自授权使用的解密节点,B~E为解密节点,其中,表格中的“1”表示解密节点拥有对应token的使用权限,“0”表示没有token使用权限。
表一
A B C D E
Token1 1 1 1 0
Token2 1 1 0
Token3 1 1 1 1
由表一可知,解密节点B、D拥有3个token的使用权限,解密节点C拥有2个token的使用权限,而解密节点E仅拥有一个token的使用权限。解密节点拥有使用权限的token数量越多,解密能力越强,反之解密能力越低。
比如,当加密节点A采用3/3多重签名策略进行签名时,只有解密节点B、D拥有加密结点A的密文的解密能力,当加密节点A采用2/3多重签名策略时,节点B、C以及D均拥有解密能力;当节点A采用1/3多重签名策略时,节点B、C、D以及E均拥有解密能力。因此,节点A可以通过用于加密的NFT的总数、解密时需要使用的NFT的个数以及各个解密节点能够使用的NFT的个数来为不同的解密节点设置不同的解密权限。并且,当加密节点需要调整解密权限时,可以通过丢掉任意一个或者多个NFT,并重新请求一个或者多个新的NFT,通过为新的NFT配置授权使用的解密节点,从而实现对解密节点解密权限的调整。由此可见,通过多重签名可以产生多重解密能力级别,可便于为不同的解密节点配置不同的解密能力级别。
步骤104:将签名后得到的密文通过所述区块链广播出去。
区块链中的其他节点均可接收到加密节点广播的密文,并对其进行解密。
本发明实施例通过区块链先进的ERC721技术产生的独立无二的非同质化代币NFT以及椭圆曲线算法展开成一组或者多组非对称加密密钥,从而对待加密信息进行签名实现数据加密,相较于传统加密算法而言安全性更高,且加密算法均在本地执行,不依赖服务器分发非对称公钥和私钥、无需占用服务器缓存、数据库资源,进一步提升保密性、安全性;尤其采用多重因子混合签名技术进行多重签名时,可灵活配置解密级别,拓展性更佳。
图2是本发明实施例二提供的基于区块链NFT技术的解密方法的流程图。本实施例的技术方案可适用于区块链中的任意节点,采用本实施例的基于区块链NFT技术的解密方法的节点可称为解密节点。该方法可以由本发明实施例提供的一种基于区块链NFT技术的解密装置来执行,该装置可以采用软件和/或硬件的方式实现,并配置于区块链节点应用。如图2所示,该方法具体包括步骤201至步骤204。
步骤201:获取待解密信息。
其中,所述待解密信息由所述加密节点采用如实施例一所述的加密方法生成。解密节点可以通过区块链获取到加密节点广播的密文。
步骤202:从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT。
区块链中的每个加密节点拥有区块链基于符合ERC721协议的共识算法生成的N个NFT令牌,每个NFT令牌均是独立无二的。当N大于1时,加密节点可以授权任意解密节点拥有一个或者多个NFT令牌的使用权限。
加密节点A在请求NFT时,首先调用授权(approve),即预先核准解密节点B可以使用加密节点A的NFT令牌。加密节点A的核准信息通过合约加密存储到mapping(uint256=>address)里。然后,当有解密节点B调用加密节点A的NFT令牌的使用权限时(takeOwnership)时,合约会检查解密节点B(即msg.sender)是否得到拥有者(加密节点A)的批准来提取令牌,如果是,则将加密节点A的NFT令牌转移给解密节点B。
其中,NFT令牌声明、流转完全通过算法,用法灵活;日志账本以及数据链既可以上到公共链上,也可以下链指向指定的服务器资源存储备份。可以ZombieOwnership方法构筑智能合约。实现多因子混合密钥结构。节点A声明核准的用户,配置2/3混合结构,请求NFT令牌,并指定令牌若干个使用者。区块链记录令牌元数据(MetaData)。
NFT令牌的展开以及授权可采用以下方法:
event Transfer(address indexed_from,address indexed_to,uint256_tokenId);event Approval(address indexed_owner,address indexed_approved,uint256_tokenId)。
通过重构Transfer事件,使令牌流转触发私有化,即使得核准的节点(即被授权节点)可以获取加密节点的NFT令牌。
区块链通过共享账本实时记录加密节点的每个NFT令牌的使用情况。加密节点可以将其每个NFT令牌分别授权给若干个解密节点使用。加密节点的NFT令牌授权行为以及被授权节点使用令牌的使用行为等均被记录在区块链共享账本中。当解密节点被加密节点授予其NFT令牌使用权之后,该解密节点即可通过区块链获取到该加密加点的对应的NFT令牌。由于区块链自身的高安全性,因此加密节点和解密节点的NTF令牌具有极高的安全性。
步骤203:根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥。
解密节点B再基于NFT令牌以及椭圆曲线算法生成一组或者多组非对称解密密钥对节点A加密的信息进行解密。通过智能合约的增强型机制,结合令牌以及多因子结构,混合加密,极大提高安全性。
步骤203中的若干组非对称解密密钥的生成方法与实施例一的加密密钥的生成方法相同,其中,此处不再赘述。
步骤204:根据所述若干组非对称解密密钥对所述待解密信息进行解密。
同一NFT token对应的加密密钥与解密密钥相同,因此解密节点在展开得到一组或者多组解密密钥后,可以使用与加密密钥相同的解密密钥对密文进行解密,此处不再赘述。
本发明实施例通过区块链先进的ERC721技术产生的独立无二的非同质化代币NFT以及椭圆曲线算法展开成一组或者多组非对称解密密钥,从而对加密信息进行解密,相较于传统加解密算法而言安全性更高,且加解密算法均在本地执行,不依赖服务器分发非对称公钥和私钥、无需占用服务器缓存、数据库资源,进一步提升保密性、安全性;尤其采用多重因子混合签名技术进行多重签名时,可灵活配置解密级别,拓展性更佳。
图3是本发明实施例三提供的一种基于区块链NFT技术的加密装置的结构框图。本发明实施例还提供一种基于区块链NFT技术的加密装置300,配置于区块链中的任意节点,用于执行上述实施例一所提供的基于区块链NFT技术的加密方法。该装置300包括:NFT获取模块301、加密密钥生成模块302、加密模块303以及广播模块304。
NFT获取模块301用于请求所述区块链基于符合ERC721协议的共识算法生成N个NFT。其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点。
加密密钥生成模块302用于根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥。
加密模块303用于根据所述N组非对称加密密钥对待加密信息进行签名。其中,当N大于1时,加密模块303用于根据所述N组非对称加密密钥对待加密信息进行多重签名。
可选地,加密密钥生成模块302包括:序列化子模块以及加密密钥生成子模块。其中,序列化子模块用于将所述N个NFT序列化为字节数组。可选地,序列化子模块用于采用RLP方式将所述N个NFT序列化为字节数组。加密密钥生成子模块用于根据序列化后的NFT的字节数组以及椭圆曲线算法生成所述各组非对称加密密钥。
具体地,加密密钥生成子模块用于从所述字节数组中选取k个字节;利用点乘法计算P=pk×g;其中,P是基准点,p为加密终点,g为椭圆曲线的变动度;k是坐标上的斜率;计算所述待加密信息的哈希值得到整数z;根据公式计算S=k-1(z+dA×R)mod P;其中,R为点P到x轴的坐标;k-1是k的模的乘法逆源;A是椭圆曲线的变量,d是不定的参数,dA表示引入有限域上的椭圆曲线;将(R,S)作为一组非对称加密密钥。
广播模块304,用于将签名后得到的密文通过所述区块链广播出去。
图4是本实施例四提供的一种基于区块链NFT技术的解密装置的结构框图。本发明实施例还提供一种基于区块链NFT技术的解密装置400,配置于区块链中的任意节点,用于执行上述实施例二所提供的基于区块链NFT技术的解密方法。该解密装置400包括:待解密信息获取模块401、NFT获取模块402、解密密钥生成模块403以及解密模块404。
待解密信息获取模块401用于获取待解密信息。其中,所述待解密信息由所述加密节点采用如实施例一所述的加密方法生成。
NFT获取模块402用于从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT。
解密密钥生成模块403用于根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥。
解密模块404用于根据所述若干组非对称解密密钥对所述待解密信息进行解密。
本发明实施例的加密、解密装置通过区块链先进的ERC721技术产生的独立无二的非同质化代币NFT以及椭圆曲线算法展开成一组或者多组非对称加密或者解密密钥,从而对信息进行加、解密,相较于传统加解密算法而言安全性更高,且加解密算法均在本地执行,不依赖服务器分发非对称公钥和私钥、无需占用服务器缓存、数据库资源,进一步提升保密性、安全性;尤其采用多重因子混合签名技术进行多重签名时,可灵活配置解密级别,拓展性更佳。
本发明实施例五还提供一种节点设备,为区块链中的加密节点。如图5所示,该节点设备包括:存储器502、处理器501;
其中,所述存储器502存储有可被所述至少一个处理器501执行的指令,所述指令被所述至少一个处理器501执行以实现前述实施方式所述的基于区块链NFT技术的加密方法。
该加密设备包括一个或多个处理器501以及存储器502,图5中以一个处理器501为例。处理器501、存储器502可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述基于区块链NFT技术的加密方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
一个或者多个模块存储在存储器502中,当被一个或者多个处理器501执行时,执行上述任意方法实施方式中的基于区块链NFT技术的加密方法。
上述设备可执行本发明实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的方法。
本发明实施例六还提供一种节点设备,为区块链中的解密节点。如图6所示,该解密设备包括:存储器602、处理器601;
其中,所述存储器602存储有可被所述至少一个处理器601执行的指令,所述指令被所述至少一个处理器601执行以实现前述实施方式所述的基于区块链NFT技术的解密方法。
该解密设备包括一个或多个处理器601以及存储器602,图6中以一个处理器601为例。处理器601、存储器602可以通过总线或者其他方式连接,图6中以通过总线连接为例。存储器602作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器601通过运行存储在存储器602中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述基于区块链NFT技术的解密方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
一个或者多个模块存储在存储器602中,当被一个或者多个处理器501执行时,执行上述任意方法实施方式中的基于区块链NFT技术的解密方法。
上述设备可执行本发明实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的方法。
本发明实施例七还涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种基于区块链NFT技术的加密方法,其特征在于,应用于区块链的加密节点,所述方法包括:
请求所述区块链基于符合ERC721协议的共识算法生成N个NFT;其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点;
根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥;
根据所述N组非对称加密密钥对待加密信息进行签名;
将签名后得到的密文通过所述区块链广播出去。
2.根据权利要求1所述的基于区块链NFT技术的加密方法,其特征在于,N大于1;
所述根据所述N组非对称加密密钥对待加密信息进行签名,包括:
根据所述N组非对称加密密钥对待加密信息进行多重签名。
3.根据权利要求2所述的基于区块链NFT技术的加密方法,其特征在于,所述根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥,包括:
将每个NFT序列化为字节数组;
根据序列化后的NFT的字节数组以及椭圆曲线算法生成各组非对称加密密钥。
4.根据权利要求3所述的基于区块链NFT技术的加密方法,其特征在于,所述根据序列化后的NFT的字节数组以及椭圆曲线算法生成所述各组非对称加密密钥,包括:
从所述字节数组中选取k个字节;
利用点乘法计算P=pk×g;其中,P是基准点,p为加密终点,为椭圆曲线的变动度;k是坐标上的斜率;
计算所述待加密信息的哈希值得到整数z;
根据公式计算S=k-1(z+dA×R)modP;
其中,R为点P到x轴的坐标;k-1是k的模的乘法逆源;A是椭圆曲线的变量,d是不定的参数,dA表示引入有限域上的椭圆曲线;
将(R,S)作为一组非对称加密密钥。
5.根据权利要求3所述的基于区块链NFT技术的加密方法,其特征在于,所述将每个NFT序列化为字节数组,包括:
采用RLP方式将每个NFT序列化为字节数组。
6.一种基于区块链NFT技术的解密方法,其特征在于,应用于区块链的解密节点,所述区块链还包括加密节点,所述解密方法包括:
获取待解密信息;其中,所述待解密信息由所述加密节点采用如权利要求1至5中任一项所述的加密方法生成;
从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT;
根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥;
根据所述若干组非对称解密密钥对所述待解密信息进行解密。
7.一种基于区块链NFT技术的加密装置,其特征在于,所述加密装置配置于区块链的加密节点,所述加密装置包括:
NFT获取模块,用于请求所述区块链基于符合ERC721协议的共识算法生成N个NFT;其中,N为非0自然数;所述加密节点指定授权使用每个NFT的解密节点;
加密密钥生成模块,用于根据所述N个NFT以及椭圆曲线算法生成N组非对称加密密钥;
加密模块,用于根据所述N组非对称加密密钥对待加密信息进行签名;
广播模块,用于将签名后得到的密文通过所述区块链广播出去。
8.一种基于区块链NFT技术的解密装置,其特征在于,配置于区块链的解密节点,所述区块链还包括加密节点,所述解密装置包括:
待解密信息获取模块,用于获取待解密信息;其中,所述待解密信息由所述加密节点采用如权利要求1至5中任一项所述的加密方法生成;
NFT获取模块,用于从所述区块链获取经所述加密节点授权的所述加密节点的若干个NFT;
解密密钥生成模块,用于根据所述若干个NFT以及椭圆曲线算法生成若干组非对称解密密钥;
解密模块,用于根据所述若干组非对称解密密钥对所述待解密信息进行解密。
9.一种节点设备,其特征在于,包括:存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如权利要求1至5中任一项所述的加密方法和/或如权利要求6中任一项所述的解密方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如权利要求1至6中任一项所述的方法。
CN202111277540.0A 2021-10-29 2021-10-29 一种基于区块链nft技术的加、解密方法及装置、设备及介质 Active CN114095214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111277540.0A CN114095214B (zh) 2021-10-29 2021-10-29 一种基于区块链nft技术的加、解密方法及装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111277540.0A CN114095214B (zh) 2021-10-29 2021-10-29 一种基于区块链nft技术的加、解密方法及装置、设备及介质

Publications (2)

Publication Number Publication Date
CN114095214A true CN114095214A (zh) 2022-02-25
CN114095214B CN114095214B (zh) 2023-12-12

Family

ID=80298289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111277540.0A Active CN114095214B (zh) 2021-10-29 2021-10-29 一种基于区块链nft技术的加、解密方法及装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114095214B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422149A (zh) * 2022-03-28 2022-04-29 苏州浪潮智能科技有限公司 数据加密、数据解密方法、系统以及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230188355A1 (en) * 2021-12-09 2023-06-15 Mastercard International Incorporated Method and system of all-or-nothing transform (aont) for increasing blockchain integrity

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098157A (zh) * 2009-12-10 2011-06-15 塔塔咨询服务有限公司 一种基于无证书公共密钥基础结构用于加强客户/服务器通讯协议安全性的系统和方法
CN103780393A (zh) * 2014-01-15 2014-05-07 重庆邮电大学 一种面向多安全等级的虚拟桌面安全认证系统及方法
EP3091689A1 (fr) * 2015-05-06 2016-11-09 Morpho Procédé de génération d'une signature de message à partir d'un jeton de signature chiffré à l'aide d'une fonction de chiffrement homomorphique
US10177909B1 (en) * 2017-09-26 2019-01-08 Cloudflare, Inc. Managing private key access in multiple nodes
CN109802940A (zh) * 2018-12-12 2019-05-24 北京众享比特科技有限公司 区块链数据库加密和解密方法、装置、设备及其存储介质
CN109802967A (zh) * 2019-01-25 2019-05-24 上海创景信息科技有限公司 区块链信息追踪方法和系统
US10373158B1 (en) * 2018-02-12 2019-08-06 Winklevoss Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
CN110135819A (zh) * 2019-05-21 2019-08-16 福建航誉大数据服务有限公司 一种基于区块链的第三方可信数据交易系统及方法
CN110417726A (zh) * 2019-05-27 2019-11-05 腾讯科技(深圳)有限公司 一种密钥管理方法及相关设备
CN110796449A (zh) * 2019-10-28 2020-02-14 网易(杭州)网络有限公司 交易处理方法、系统、介质和计算设备
CN110839026A (zh) * 2019-11-12 2020-02-25 深圳市网心科技有限公司 基于区块链的数据处理方法及相关设备
CN111277415A (zh) * 2020-01-20 2020-06-12 布比(北京)网络技术有限公司 基于区块链智能合约的隐私保护方法及装置
CN111639361A (zh) * 2020-05-15 2020-09-08 中国科学院信息工程研究所 一种区块链密钥管理方法、多人共同签名方法及电子装置
WO2020181845A1 (zh) * 2019-03-14 2020-09-17 深圳壹账通智能科技有限公司 区块链数据加密方法、装置、计算机设备及存储介质
CN112367175A (zh) * 2020-11-12 2021-02-12 西安电子科技大学 基于sm2数字签名的隐式证书密钥生成方法
US20210090072A1 (en) * 2017-04-07 2021-03-25 nChain Holdings Limited Method and system for secure data record distribution using a blockchain
CN112819466A (zh) * 2021-02-20 2021-05-18 广东卓启云链科技有限公司 数字通证的处理方法、装置、终端设备及存储介质
CN113193965A (zh) * 2021-06-29 2021-07-30 中国科学院计算技术研究所数字经济产业研究院 基于nft的数字内容实物化展示系统
CN113256290A (zh) * 2021-05-14 2021-08-13 杭州链网科技有限公司 去中心化加密通讯与交易系统

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098157A (zh) * 2009-12-10 2011-06-15 塔塔咨询服务有限公司 一种基于无证书公共密钥基础结构用于加强客户/服务器通讯协议安全性的系统和方法
CN103780393A (zh) * 2014-01-15 2014-05-07 重庆邮电大学 一种面向多安全等级的虚拟桌面安全认证系统及方法
EP3091689A1 (fr) * 2015-05-06 2016-11-09 Morpho Procédé de génération d'une signature de message à partir d'un jeton de signature chiffré à l'aide d'une fonction de chiffrement homomorphique
US20210090072A1 (en) * 2017-04-07 2021-03-25 nChain Holdings Limited Method and system for secure data record distribution using a blockchain
US10177909B1 (en) * 2017-09-26 2019-01-08 Cloudflare, Inc. Managing private key access in multiple nodes
US10373158B1 (en) * 2018-02-12 2019-08-06 Winklevoss Ip, Llc System, method and program product for modifying a supply of stable value digital asset tokens
CN109802940A (zh) * 2018-12-12 2019-05-24 北京众享比特科技有限公司 区块链数据库加密和解密方法、装置、设备及其存储介质
CN109802967A (zh) * 2019-01-25 2019-05-24 上海创景信息科技有限公司 区块链信息追踪方法和系统
WO2020181845A1 (zh) * 2019-03-14 2020-09-17 深圳壹账通智能科技有限公司 区块链数据加密方法、装置、计算机设备及存储介质
CN110135819A (zh) * 2019-05-21 2019-08-16 福建航誉大数据服务有限公司 一种基于区块链的第三方可信数据交易系统及方法
CN110417726A (zh) * 2019-05-27 2019-11-05 腾讯科技(深圳)有限公司 一种密钥管理方法及相关设备
WO2020238694A1 (zh) * 2019-05-27 2020-12-03 腾讯科技(深圳)有限公司 一种密钥管理方法及相关设备
CN110796449A (zh) * 2019-10-28 2020-02-14 网易(杭州)网络有限公司 交易处理方法、系统、介质和计算设备
CN110839026A (zh) * 2019-11-12 2020-02-25 深圳市网心科技有限公司 基于区块链的数据处理方法及相关设备
CN111277415A (zh) * 2020-01-20 2020-06-12 布比(北京)网络技术有限公司 基于区块链智能合约的隐私保护方法及装置
CN111639361A (zh) * 2020-05-15 2020-09-08 中国科学院信息工程研究所 一种区块链密钥管理方法、多人共同签名方法及电子装置
CN112367175A (zh) * 2020-11-12 2021-02-12 西安电子科技大学 基于sm2数字签名的隐式证书密钥生成方法
CN112819466A (zh) * 2021-02-20 2021-05-18 广东卓启云链科技有限公司 数字通证的处理方法、装置、终端设备及存储介质
CN113256290A (zh) * 2021-05-14 2021-08-13 杭州链网科技有限公司 去中心化加密通讯与交易系统
CN113193965A (zh) * 2021-06-29 2021-07-30 中国科学院计算技术研究所数字经济产业研究院 基于nft的数字内容实物化展示系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
史晓红;: "基于椭圆曲线密码体制的激光传输加密", 激光杂志, no. 03 *
田道坤;彭亚雄;: "在区块链中基于混合算法的数字签名技术", 电子科技, no. 07 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422149A (zh) * 2022-03-28 2022-04-29 苏州浪潮智能科技有限公司 数据加密、数据解密方法、系统以及存储介质

Also Published As

Publication number Publication date
CN114095214B (zh) 2023-12-12

Similar Documents

Publication Publication Date Title
CN108885741B (zh) 一种实现区块链上交换的令牌化方法及系统
Maffei et al. Privacy and access control for outsourced personal records
Yuan et al. Secure cloud data deduplication with efficient re-encryption
US20100115260A1 (en) Universal secure token for obfuscation and tamper resistance
CN111130757A (zh) 一种基于区块链的多云cp-abe访问控制方法
EP2293490A1 (en) Information processing device, encryption key management method, computer program and integrated circuit
KR101594553B1 (ko) 암호화 키를 생성하는 방법, 이를 위한 네트워크 및 컴퓨터 프로그램
US10785041B2 (en) Method for providing a space puzzle
CN106878013B (zh) 一种文件的加密、解密方法和装置
CN114095214A (zh) 一种基于区块链nft技术的加、解密方法及装置、设备及介质
CN109768863A (zh) 一种基于椭圆曲线的区块链密钥共享和动态更新方法
CN111400728A (zh) 应用于区块链的数据加密解密方法及装置
Bakas et al. Power range: Forward private multi-client symmetric searchable encryption with range queries support
Chen et al. Secure cloud storage hits distributed string equality checking: More efficient, conceptually simpler, and provably secure
CN112382376A (zh) 基于区块链的医疗器械管理追溯系统
CN107360252B (zh) 一种异构云域授权的数据安全访问方法
WO2023134576A1 (zh) 数据加密方法、属性授权中心及存储介质
Zhang et al. A Data Sharing Scheme Based on Blockchain System and Attribute-Based Encryption
Ionita Weighted attribute-based encryption with parallelized decryption
Tarr et al. Hyper/J (tm): Multi-Dimensional Separation of Concerns for Java (tm)
Shen et al. Ensuring query completeness in outsourced database using order-preserving encryption
Wu et al. Hierarchical access control using the secure filter
WO2017025597A1 (en) Key sharing device and method
Lin et al. A secure fine-grained access control mechanism for networked storage systems
Kate et al. FlexiRand: Output Private (Distributed) VRFs and Application to Blockchains

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