CN110365475B - 区块链两级监管方法、装置、设备及存储介质 - Google Patents
区块链两级监管方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110365475B CN110365475B CN201910541954.6A CN201910541954A CN110365475B CN 110365475 B CN110365475 B CN 110365475B CN 201910541954 A CN201910541954 A CN 201910541954A CN 110365475 B CN110365475 B CN 110365475B
- Authority
- CN
- China
- Prior art keywords
- node
- supervision
- data
- level
- encrypted data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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/0478—Network 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 applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0827—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及区块链技术领域,公开了一种区块链两级监管方法,包括:在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。本发明还公开了一种区块链两级监管装置、设备及计算机可读存储介质。本发明实现区块链上数据的两级监管,保证了两级监管对于数据隔离的监管需求。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链两级监管方法、装置、设备及计算机可读存储介质。
背景技术
区块链是当今炙手可热的金融科技技术,但其匿名性和数据加密等特点更像是一枚双刃剑,在保护了用户的数据安全和隐私的同时,也为监管带来了巨大的困难。而金融交易天生就具有很大的信息不对称性,如果任由这些金融交易自然生长,则会造成信息不平等的加剧、系统性风险扩大,所以,严格的监管是必须要解决的难题。
传统的区块链通常采用的是一级监管策略,也即用监管的公钥将上链数据的加密密钥进行加密,然后监管节点可以用自己的私钥对被监管节点的上链数据解密,从而查看被监管节点的所有上链数据,由此实现监管。但在实际业务场景中,常有多层级监管的需求,比如:省级监管仅可以监管本省内所有节点上链的数据,但是不能监管其他省内的数据(省和省之间有数据隔离的需求),而国家级监管可以监管全国所有节点上链的数据。显然,如果采用传统的区块链一级监管策略所上链的数据是难以实现多层级监管需求的。
发明内容
本发明的主要目的在于提供一种区块链两级监管方法、装置、设备及计算机可读存储介质,旨在解决传统的区块链监管策略不能满足多层级监管需求的技术问题。
为实现上述目的,本发明提供一种区块链两级监管方法,所述区块链两级监管方法包括以下步骤:
在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
可选地,所述区块链两级监管方法还包括:
在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
使用key1对待上链数据进行加密,得到加密数据Text2;
将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
可选地,在所述将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,CP2)pp1;
使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
可选地,在所述将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,PP2)cp1;
使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
可选地,在所述将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;
使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
进一步地,为实现上述目的,本发明还提供一种区块链两级监管装置,所述区块链两级监管装置包括:
生成模块,用于在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
计算模块,用于计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
加密模块,用于使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
发布模块,用于将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
可选地,所述生成模块还用于:在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
所述计算模块还用于:计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
所述加密模块还用于:使用key1对待上链数据进行加密,得到加密数据Text2;
所述发布模块还用于:将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
可选地,所述区块链两级监管装置还包括:解密模块;
所述计算模块还用于:在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,CP2)pp1;
所述解密模块用于:在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
可选地,所述计算模块还用于:在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,PP2)cp1;
所述解密模块还用于:使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
可选地,所述计算模块还用于:在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;
所述解密模块还用于:使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
进一步地,为实现上述目的,本发明还提供一种区块链两级监管设备,所述区块链两级监管设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的区块链两级监管程序,所述区块链两级监管程序被所述处理器执行时实现如上述任一项所述的区块链两级监管方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有区块链两级监管程序,所述区块链两级监管程序被处理器执行时实现如上述任一项所述的区块链两级监管方法的步骤。
本发明利用双线性对加密算法对上链数据进行加密,上链数据的加密密钥为双线性对,并且该双线性对的生成使用了当前节点分别对应的一级监管节点的监管公钥以及二级监管节点的监管公钥,从而使得普通节点上链的加密数据只能由对应的一级监管节点或二级监管节点所解密,其他一级监管节点无法解密,从而保证了二级监管对于数据隔离的监管需求。
附图说明
图1为本发明区块链两级监管设备实施例方案涉及的设备硬件运行环境的结构示意图;
图2为本发明区块链两级监管方法第一实施例的流程示意图;
图3为本发明区块链两级监管方法第二实施例的流程示意图;
图4为本发明区块链两级监管方法第三实施例的流程示意图;
图5为本发明区块链两级监管方法第四实施例的流程示意图;
图6为本发明区块链两级监管方法第五实施例的流程示意图;
图7为本发明区块链两级监管装置第一实施例的功能模块示意图;
图8为本发明区块链两级监管装置第二实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种区块链两级监管设备。
参照图1,图1为本发明区块链两级监管设备实施例方案涉及的设备硬件运行环境的结构示意图。
如图1所示,该区块链两级监管设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
本领域技术人员可以理解,图1中示出的区块链两级监管设备的硬件结构并不构成对区块链两级监管设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及区块链两级监管程序。其中,操作系统是管理和控制区块链两级监管设备与软件资源的程序,支持网络通信模块、用户接口模块、区块链两级监管程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1004;用户接口模块用于管理和控制用户接口1003。
在图1所示的区块链两级监管设备硬件结构中,网络接口1004主要用于连接系统后台,与系统后台进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;区块链两级监管设备通过处理器1001调用存储器1005中存储的区块链两级监管程序,并执行以下区块链两级监管方法的各实施例的操作。
基于上述区块链两级监管设备硬件结构,提出本发明区块链两级监管方法的各个实施例。
参照图2,图2为本发明区块链两级监管方法第一实施例的流程示意图。本实施例中,所述区块链两级监管方法包括以下步骤:
步骤S110,在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
本实施例中,为实现二级监管需求,因此对上链数据的加密方式进行了改进,具体基于双线性对加密算法对上链数据进行加密。在加密之前,需要先为待上链数据生成对应的公私钥对。
本实施例中,若普通节点需要上链数据,则为待上链数据生成对应的公私钥对(dp11,DP11),其中,dp11为私钥、DP11为公钥。该公私钥对(dp11,DP11)属于第一循环群域。
步骤S120,计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
本实施例中并不直接使用私钥dp11对待上链数据进行加密,而是使用双线性对进行加密,双线性对的具体格式如下:
e(PP1,CP2)dp11
其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥。
需要说明的是,所有区块链上的普通节点、一级监管节点与二级监管节点都使用同样的两个循环群来分别生成各自的公私钥对,以便利用双线性对的双线性特性实现数据加密与解密。
步骤S130,使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
步骤S140,将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
本实施例中,基于双线性对加密算法对上链数据进行加密,也即使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1,然后将加密数据Text1以及公钥DP11发布到区块链上。由于上链数据的加密密钥为e(PP1,CP2)dp11,该加密密钥的生成使用的是当前节点对应的一级监管节点的监管公钥PP1以及当前节点对应的二级监管节点的监管公钥CP2,因此,该加密数据Text1只能由对应的一级监管节点或二级监管节点所解密,其他一级监管节点无法解密,从而保证了二级监管对于数据隔离的监管需求。
本实施例利用双线性对加密算法对上链数据进行加密,上链数据的加密密钥为双线性对,并且该双线性对的生成使用了当前节点分别对应的一级监管节点的监管公钥以及二级监管节点的监管公钥,从而使得普通节点上链的加密数据只能由对应的一级监管节点或二级监管节点所解密,其他一级监管节点无法解密,从而保证了二级监管对于数据隔离的监管需求。
参照图3,图3为本发明区块链两级监管方法第二实施例的流程示意图。本实施例中,所述区块链两级监管方法还包括以下步骤:
步骤S210,在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
步骤S220,计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
步骤S230,使用key1对待上链数据进行加密,得到加密数据Text2;
步骤S240,将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
本实施例中,一级监管节点也可以上链数据,因此也属于二级监管节点的被监管对象。在上链数据时,一级监管节点需要为上链数据生成对应的公私钥对,该公私钥对(dp12,DP12)属于第一循环群域。
一级监管节点对待上链数据进行加密所使用的加密密钥为key1=dp12*CP1,然后使用key1对待上链数据进行加密,得到加密数据Text2,并将加密数据Text2以及公钥DP12发布到区块链上,以供本节点对应的二级监管节点进行监管查看。
由于CP1为当前节点对应的二级监管节点在第一循环群域下的监管公钥,因而保证了本节点上链的加密数据只能由本节点对应的二级监管节点所解密,其他节点不能解密,从而保证了二级监管对于数据隔离的监管需求。
参照图4,图4为本发明区块链两级监管方法第三实施例的流程示意图。本实施例中,所述区块链两级监管方法还包括以下步骤:
步骤S310,在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,CP2)pp1;
步骤S320,使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
本实施例中,若一级监管节点需要查看区块链上由本节点对应的被监管节点(普通节点)发布的加密数据Text1,则需先计算如下双线性对:
e(DP11,CP2)pp1
其中,DP11为被监管节点为上链数据生成的私钥,CP2为当前节点对应的二级监管节点的监管公钥,pp1为一级监管节点在第一循环群域下的监管私钥。
加密数据Text1的加密密钥为e(PP1,CP2)dp11,由双线性对的特性可知,e(DP11,CP2)pp1=e(dp11*g,cp2*h)pp1=e(g,h)dp11*cp2*pp1=e(p11*g,cp2*h)dp11=e(PP1,CP2)dp11,其中,g∈第一循环群域G1,为G1的基点,h∈第二循环群域G2,为G2的基点。因此,使用e(DP11,CP2)pp1可以解密加密数据Text1,得到被监管节点(普通节点)在区块链上发布的加密数据对应的明文数据,从而实现对被监管节点发布数据的监管。需要说明的是,由于一级监管节点的监管私钥pp1由一级监管节点自身保管,且不同的一级监管节点所使用的监管私钥不同,因而使得其他一级监管节点无法解密非监管对象发布的数据,保证了二级监管对于数据隔离的监管需求。
参照图5,图5为本发明区块链两级监管方法第四实施例的流程示意图。本实施例中,所述区块链两级监管方法还包括以下步骤:
步骤S410,在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,PP2)cp1;
步骤S420,使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
本实施例中,若二级监管节点需要查看区块链上由本节点对应的被监管节点(普通节点)发布的加密数据Text1,则需先计算如下双线性对:
e(DP11,PP2)cp1
其中,DP11为被监管节点为上链数据生成的私钥,PP2为二级监管节点下的一级监管节点的监管公钥,cp1为二级监管节点在第一循环群域下的监管私钥。
加密数据Text1的加密密钥为e(PP1,CP2)dp11,由双线性对的特性可知,e(DP11,PP2)cp1=e(dp11*g,pp2*h)cp1=e(g,h)dp11*pp2*cp1=e(cp1*g,pp2*h)dp11,由于e(cp1*g,pp2*h)dp11=e(pp1*g,cp2*h)dp11,即e(DP11,PP2)cp1=e(PP1,CP2)dp11,因此,通过e(PP1,CP2)dp11可以解密加密数据Text1,得到被监管节点(普通节点)在区块链上发布的加密数据对应的明文数据,从而实现了一级监管节点和二级监管节点对被监管的普通节点发布的数据的监管,保证了二级监管需求。
参照图6,图6为本发明区块链两级监管方法第五实施例的流程示意图。本实施例中,所述区块链两级监管方法还包括以下步骤:
步骤S510,在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;
步骤S520,使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
本实施例中,若二级监管节点需要查看区块链上由本节点对应的被监管节点(一级监管节点)发布的加密数据Text2,则需先计算如下双线性对:
key2=cp1*DP12
其中,cp1为当前二级监管节点在的监管私钥,DP12为被监管节点为上链数据生成的私钥。
加密数据Text2的加密密钥为key1=dp12*CP1,由循环群特性可知,假设g∈第一循环群域G1,且为G1循环群域的基点,则:CP1=cp1*g;DP12=dp12*g;key1=dp12*CP1=dp12*cp1*g=cp1*dp12*g=cp1*DP12=key2;也即key1=key2,因此,key2可以解密加密数据Text2,得到被监管节点(一级监管节点)在区块链上发布的加密数据对应的明文数据,从而实现二级监管节点对被监管的一级监管节点发布数据的监管,保证了二级监管需求。
本发明还提供一种区块链两级监管装置。
参照图7,图7为本发明区块链两级监管装置第一实施例的功能模块示意图。本实施例中,所述区块链两级监管装置包括:
生成模块10,用于在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
本实施例中,为实现二级监管需求,因此对上链数据的加密方式进行了改进,具体基于双线性对加密算法对上链数据进行加密。在加密之前,需要先为待上链数据生成对应的公私钥对。
本实施例中,若普通节点需要上链数据,则为待上链数据生成对应的公私钥对(dp11,DP11),其中,dp11为私钥、DP11为公钥。该公私钥对(dp11,DP11)属于第一循环群域。
计算模块20,用于计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
本实施例中并不直接使用私钥dp11对待上链数据进行加密,而是使用双线性对进行加密,双线性对的具体格式如下:
e(PP1,CP2)dp11
其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥。
需要说明的是,所有区块链上的普通节点、一级监管节点与二级监管节点都使用同样的两个循环群来分别生成各自的公私钥对,以便利用双线性对的双线性特性实现数据加密与解密。
加密模块30,用于使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
发布模块40,用于将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
本实施例中,基于双线性对加密算法对上链数据进行加密,也即使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1,然后将加密数据Text1以及公钥DP11发布到区块链上。由于上链数据的加密密钥为e(PP1,CP2)dp11,该加密密钥的生成使用的是当前节点对应的一级监管节点的监管公钥PP1以及当前节点对应的二级监管节点的监管公钥CP2,因此,该加密数据Text1只能由对应的一级监管节点或二级监管节点所解密,其他一级监管节点无法解密,从而保证了二级监管对于数据隔离的监管需求。
本实施例利用双线性对加密算法对上链数据进行加密,上链数据的加密密钥为双线性对,并且该双线性对的生成使用了当前节点分别对应的一级监管节点的监管公钥以及二级监管节点的监管公钥,从而使得普通节点上链的加密数据只能由对应的一级监管节点或二级监管节点所解密,其他一级监管节点无法解密,从而保证了二级监管对于数据隔离的监管需求。
进一步地,在本发明区块链两级监管装置一实施例中,一级监管节点也可以在区块链上发布数据并且可被二级监管节点进行监管。
所述生成模块10还用于:在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
所述计算模块20还用于:计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
所述加密模块30还用于:使用key1对待上链数据进行加密,得到加密数据Text2;
所述发布模块40还用于:将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
本实施例中,一级监管节点也可以上链数据,因此也属于二级监管节点的被监管对象。在上链数据时,一级监管节点需要为上链数据生成对应的公私钥对,该公私钥对(dp12,DP12)属于第一循环群域。
一级监管节点对待上链数据进行加密所使用的加密密钥为key1=dp12*CP1,然后使用key1对待上链数据进行加密,得到加密数据Text2,并将加密数据Text2以及公钥DP12发布到区块链上,以供本节点对应的二级监管节点进行监管查看。
由于CP1为当前节点对应的二级监管节点在第一循环群域下的监管公钥,因而保证了本节点上链的加密数据只能由本节点对应的二级监管节点所解密,其他节点不能解密,从而保证了二级监管对于数据隔离的监管需求。
参照图8,图8为本发明区块链两级监管装置第二实施例的功能模块示意图。本实施例中,所述区块链两级监管装置还包括:
解密模块50,用于在查看链上数据时,对链上加密数据进行解密,得到对应的明文数据。
本实施例中,基于待查看的链上加密数据以及查看数据的监管节点的不同,对应不同的查看方式:
(1)当前查看数据的节点为一级监管节点、待查看数据为普通节点发布的加密数据Text1
本实施例中,在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算模块20先计算出双线性对e(DP11,CP2)pp1;然后由解密模块50使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
本实施例中,若一级监管节点需要查看区块链上由本节点对应的被监管节点(普通节点)发布的加密数据Text1,则需先计算如下双线性对:
e(DP11,CP2)pp1
其中,DP11为被监管节点为上链数据生成的私钥,CP2为当前节点对应的二级监管节点的监管公钥,pp1为一级监管节点在第一循环群域下的监管私钥。
加密数据Text1的加密密钥为e(PP1,CP2)dp11,由双线性对的特性可知,e(DP11,CP2)pp1=e(dp11*g,cp2*h)pp1=e(g,h)dp11*cp2*pp1=e(p11*g,cp2*h)dp11=e(PP1,CP2)dp11,其中,g∈第一循环群域G1,为G1的基点,h∈第二循环群域G2,为G2的基点。因此,使用e(DP11,CP2)pp1可以解密加密数据Text1,得到被监管节点(普通节点)在区块链上发布的加密数据对应的明文数据,从而实现对被监管节点发布数据的监管。需要说明的是,由于一级监管节点的监管私钥pp1由一级监管节点自身保管,且不同的一级监管节点所使用的监管私钥不同,因而使得其他一级监管节点无法解密非监管对象发布的数据,保证了二级监管对于数据隔离的监管需求。
(2)当前查看数据的节点为二级监管节点、待查看数据为普通节点发布的加密数据Text1
本实施例中,在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算模块20先计算出双线性对e(DP11,PP2)cp1;然后由解密模块50使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
本实施例中,若二级监管节点需要查看区块链上由本节点对应的被监管节点(普通节点)发布的加密数据Text1,则需先计算如下双线性对:
e(DP11,PP2)cp1
其中,DP11为被监管节点为上链数据生成的私钥,PP2为二级监管节点下的一级监管节点的监管公钥,cp1为二级监管节点在第一循环群域下的监管私钥。
加密数据Text1的加密密钥为e(PP1,CP2)dp11,由双线性对的特性可知,e(DP11,PP2)cp1=e(dp11*g,pp2*h)cp1=e(g,h)dp11*pp2*cp1=e(cp1*g,pp2*h)dp11,由于e(cp1*g,pp2*h)dp11=e(pp1*g,cp2*h)dp11,即e(DP11,PP2)cp1=e(PP1,CP2)dp11,因此,通过e(PP1,CP2)dp11可以解密加密数据Text1,得到被监管节点(普通节点)在区块链上发布的加密数据对应的明文数据,从而实现了一级监管节点和二级监管节点对被监管的普通节点发布的数据的监管,保证了二级监管需求。
(3)当前查看数据的节点为二级监管节点、待查看数据为一级监管节点发布的加密数据Text2
本实施例中,在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算模块20先计算出key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;然后由解密模块50使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
本实施例中,若二级监管节点需要查看区块链上由本节点对应的被监管节点(一级监管节点)发布的加密数据Text2,则需先计算如下双线性对:
key2=cp1*DP12
其中,cp1为当前二级监管节点在的监管私钥,DP12为被监管节点为上链数据生成的私钥。
加密数据Text2的加密密钥为key1=dp12*CP1,由循环群特性可知,假设g∈第一循环群域G1,且为G1循环群域的基点,则:CP1=cp1*g;DP12=dp12*g;key1=dp12*CP1=dp12*cp1*g=cp1*dp12*g=cp1*DP12=key2;也即key1=key2,因此,key2可以解密加密数据Text2,得到被监管节点(一级监管节点)在区块链上发布的加密数据对应的明文数据,从而实现二级监管节点对被监管的一级监管节点发布数据的监管,保证了二级监管需求。
本发明还提供一种计算机可读存储介质。
本实施例中,所述计算机可读存储介质上存储有区块链两级监管程序,所述区块链两级监管程序被处理器执行时实现如上述任一项实施例中所述的区块链两级监管方法的步骤。其中,区块链两级监管程序被处理器执行时所实现的方法可参照本发明区块链两级监管方法的各个实施例,因此不再过多赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
Claims (10)
1.一种区块链两级监管方法,其特征在于,所述区块链两级监管方法包括以下步骤:
在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
2.如权利要求1所述的区块链两级监管方法,其特征在于,所述区块链两级监管方法还包括:
在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
使用key1对待上链数据进行加密,得到加密数据Text2;
将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
3.如权利要求1所述的区块链两级监管方法,其特征在于,在所述将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,CP2)pp1;
使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
4.如权利要求1或3所述的区块链两级监管方法,其特征在于,在所述将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,PP2)cp1;
使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据。
5.如权利要求2所述的区块链两级监管方法,其特征在于,在所述将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看的步骤之后,还包括:
在查看链上数据时,若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;
使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
6.一种区块链两级监管装置,其特征在于,所述区块链两级监管装置包括:
生成模块,用于在上链数据时,若当前节点为普通节点,则生成当前节点在预置第一循环群域下的待上链数据对应的公私钥对(dp11,DP11);
计算模块,用于计算双线性对e(PP1,CP2)dp11,其中,PP1为当前节点对应的一级监管节点在预置第一循环群域下的监管公钥,CP2为当前节点对应的二级监管节点在预置第二循环群域下的监管公钥;
加密模块,用于使用e(PP1,CP2)dp11对待上链数据进行加密,得到加密数据Text1;
发布模块,用于将加密数据Text1以及公钥DP11发布到区块链上,以供当前节点对应的一级监管节点或二级监管节点进行监管查看。
7.如权利要求6所述的区块链两级监管装置,其特征在于,
所述生成模块还用于:在上链数据时,若当前节点为一级监管节点,则生成当前节点在所述第一循环群域下的待上链数据对应的公私钥对(dp12,DP12);
所述计算模块还用于:计算key1=dp12*CP1,其中,CP1为当前节点对应的二级监管节点在所述第一循环群域下的监管公钥;
所述加密模块还用于:使用key1对待上链数据进行加密,得到加密数据Text2;
所述发布模块还用于:将加密数据Text2以及公钥DP12发布到区块链上,以供当前节点对应的二级监管节点进行监管查看。
8.如权利要求6所述的区块链两级监管装置,其特征在于,所述区块链两级监管装置还包括:解密模块;
所述计算模块还用于:在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,CP2)pp1;若当前节点为二级监管节点且待查看数据为加密数据Text1,则计算双线性对e(DP11,PP2)cp1;若当前节点为二级监管节点且待查看数据为加密数据Text2,则计算key2=cp1*DP12,其中,cp1为当前节点在所述第一循环群域下的监管私钥;
所述解密模块用于:在查看链上数据时,若当前节点为一级监管节点且待查看数据为加密数据Text1,则使用e(DP11,CP2)pp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据;若当前节点为二级监管节点且待查看数据为加密数据Text1,则使用e(DP11,PP2)cp1对被监管的普通节点发布到区块链上的加密数据Text1进行解密,得到对应的明文数据;若当前节点为二级监管节点且待查看数据为加密数据Text2,则使用key2对被监管的一级监管节点发布到区块链上的加密数据Text2进行解密,得到对应的明文数据。
9.一种区块链两级监管设备,其特征在于,所述区块链两级监管设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的区块链两级监管程序,所述区块链两级监管程序被所述处理器执行时实现如权利要求1-5中任一项所述的区块链两级监管方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有区块链两级监管程序,所述区块链两级监管程序被处理器执行时实现如权利要求1-5中任一项所述的区块链两级监管方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910541954.6A CN110365475B (zh) | 2019-06-21 | 2019-06-21 | 区块链两级监管方法、装置、设备及存储介质 |
PCT/CN2019/120859 WO2020253107A1 (zh) | 2019-06-21 | 2019-11-26 | 区块链两级监管方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910541954.6A CN110365475B (zh) | 2019-06-21 | 2019-06-21 | 区块链两级监管方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110365475A CN110365475A (zh) | 2019-10-22 |
CN110365475B true CN110365475B (zh) | 2021-12-10 |
Family
ID=68216528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910541954.6A Active CN110365475B (zh) | 2019-06-21 | 2019-06-21 | 区块链两级监管方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110365475B (zh) |
WO (1) | WO2020253107A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110365475B (zh) * | 2019-06-21 | 2021-12-10 | 深圳壹账通智能科技有限公司 | 区块链两级监管方法、装置、设备及存储介质 |
CN112131615B (zh) * | 2020-02-10 | 2021-04-13 | 北京天德科技有限公司 | 一种支持监管的数据存储机制 |
CN112667621B (zh) * | 2020-12-31 | 2023-03-10 | 杭州趣链科技有限公司 | 区块链监管方法、设备和计算机可读存储介质 |
CN112968767A (zh) * | 2021-02-25 | 2021-06-15 | 平安科技(深圳)有限公司 | 基于区块链的物流联运数据监控方法及相关设备 |
CN115550026B (zh) * | 2022-09-26 | 2023-07-04 | 建信金融科技有限责任公司 | 基于区块链交易的多重监管方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681966A (zh) * | 2018-05-11 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种基于区块链的信息监管方法及装置 |
CN109040057A (zh) * | 2018-07-26 | 2018-12-18 | 百色学院 | 一种基于区块链的多密钥分级保护隐私系统及方法 |
CN109614824A (zh) * | 2018-11-19 | 2019-04-12 | 上海景峰制药有限公司 | 一种基于区块链的药物数据管理方法、装置及服务器 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106845960B (zh) * | 2017-01-24 | 2018-03-20 | 上海壹账通区块链科技有限公司 | 基于区块链的安全交易方法及系统 |
EP3396612A1 (en) * | 2017-04-24 | 2018-10-31 | BlockSettle AB | Method and system for creating a user identity |
CN109637637A (zh) * | 2017-10-20 | 2019-04-16 | 北京航空航天大学 | 基于区块链的医疗管理系统 |
US10958417B2 (en) * | 2017-12-18 | 2021-03-23 | International Business Machines Corporation | Protecting sensitive data in a distributed ledger system using blockchain hierarchies |
US10607484B2 (en) * | 2017-12-28 | 2020-03-31 | Intel Corporation | Privacy-preserving distributed visual data processing |
CN108647968A (zh) * | 2018-05-10 | 2018-10-12 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置、处理设备及系统 |
CN110365475B (zh) * | 2019-06-21 | 2021-12-10 | 深圳壹账通智能科技有限公司 | 区块链两级监管方法、装置、设备及存储介质 |
-
2019
- 2019-06-21 CN CN201910541954.6A patent/CN110365475B/zh active Active
- 2019-11-26 WO PCT/CN2019/120859 patent/WO2020253107A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681966A (zh) * | 2018-05-11 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种基于区块链的信息监管方法及装置 |
CN109040057A (zh) * | 2018-07-26 | 2018-12-18 | 百色学院 | 一种基于区块链的多密钥分级保护隐私系统及方法 |
CN109614824A (zh) * | 2018-11-19 | 2019-04-12 | 上海景峰制药有限公司 | 一种基于区块链的药物数据管理方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN110365475A (zh) | 2019-10-22 |
WO2020253107A1 (zh) | 2020-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110365475B (zh) | 区块链两级监管方法、装置、设备及存储介质 | |
US8873754B2 (en) | Proxy-based encryption method, proxy-based decryption method, network equipment, network device and system | |
US9049023B2 (en) | Outsourcing the decryption of functional encryption ciphertexts | |
CN103957109B (zh) | 一种云数据隐私保护安全重加密方法 | |
US20190173668A1 (en) | Data processing method and apparatus | |
CN105122721B (zh) | 用于管理针对加密数据的托管安全计算的方法和系统 | |
CN112104619B (zh) | 基于外包密文属性加密的数据访问控制系统和方法 | |
KR101982237B1 (ko) | 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템 | |
EP2629448A1 (en) | Encryption and decryption method based on proxy, network apparatus, network device, and system | |
KR101615137B1 (ko) | 속성 기반의 데이터 접근 방법 | |
CN103067160A (zh) | 一种加密sd卡的动态密钥生成的方法及系统 | |
CN113360944B (zh) | 一种电力物联网的动态访问控制系统与方法 | |
CN113901512B (zh) | 数据共享方法及系统 | |
CN104967693A (zh) | 面向云存储的基于全同态密码技术的文档相似度计算方法 | |
JP2021086158A (ja) | 格子ベースの暗号鍵生成方法及び電子署名方法 | |
WO2021098152A1 (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
CN110378128A (zh) | 数据加密方法、装置及终端设备 | |
KR101575681B1 (ko) | 속성 기반 암호화 방법 | |
KR101812311B1 (ko) | 사용자 단말 및 속성 재암호 기반의 사용자 단말 데이터 공유 방법 | |
CN110048833A (zh) | 基于量子卫星密钥网络的电力业务加密方法及装置 | |
CN114143072A (zh) | 一种基于cp-abe的属性撤销优化方法及系统 | |
CN105530089A (zh) | 属性基加密方法和装置 | |
Tang et al. | Efficient cross-user deduplication of encrypted data through re-encryption | |
Yan et al. | Personal data access based on trust assessment in mobile social networking | |
KR20210066713A (ko) | 래티스를 기반으로 하는 암호키 생성 방법 및 전자서명 방법 |
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 |