掌桥专利:专业的专利平台
掌桥专利
首页

基于区块链的电网和电力通信网数据共享保护方法及系统

文献发布时间:2024-04-18 19:58:26


基于区块链的电网和电力通信网数据共享保护方法及系统

技术领域

本发明属于电力数据共享技术领域,具体涉及一种基于区块链的电网和电力通信网数据共享保护方法及系统。

背景技术

本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。

“数据一个源”是电网和电力通信网的融合建设下要达到的一个重要目的,也是打破不同业务之间的数据壁垒,消除数据孤岛,挖掘更大数据价值的根本前提。要做到“数据一个源”关键是要做好数据的共享和保护。

目前电力数据都是根据专业的划分采用彼此独立的数据库进行存储,造成业务部门之间的专业壁垒凸显,跨专业流程不贯通且信息相对分散,各业务部门之间数据共享实时性不强无法满足电网一体化管理的要求。

发明内容

为了解决上述问题,本发明提出了一种基于区块链的电网和电力通信网数据共享保护方法及系统,本发明将CP-ABE机制和零知识证明技术相结合的面向区块链的数据共享和保护的方法,并利用基于身份的加密(IBE)技术增强系统安全性和可靠性。该方法可以用于电网和电力通信网融合下的数据共享和保护,从而实现电力数据一个源。

根据一些实施例,本发明的第一方案提供了一种基于区块链的电网和电力通信网数据共享保护方法,采用如下技术方案:

基于区块链的电网和电力通信网数据共享保护方法,利用层次式区块链以及联盟链对电网和电力通信进行数据共享和保护,其中,数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上;所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上;

数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证;加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥。

进一步地,所述层次式区块链采用树形多链结构,从上层到下层逐级进行授权,顶层具有最高权限;

所述层次式区块链的顶层为根区块链;所述层次式区块链的第二层为枝区块链,包括五个独立的区块链;所述层次式区块链的底层为叶区块链。

进一步地,所述数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上,具体为:

数据共享者利用数据共享者身份信息将原始数据和访问策略进行IBE签名,并将共享者身份信息、共享者签名和原始数据和访问策略明文发送给层次式区块链;

所述层次式区块链根据共享者身份信息对共享者签名进行验证,验证成功后,将原始数据和访问策略明文发送给加密智能合约;

所述加密智能合约根据访问策略生成主密钥,利用主密钥生成公钥;

所述加密智能合约根据访问策略、公钥和主密钥生成私钥,并将生成的私钥存储在联盟链上;

所述加密智能合约根据公钥将原始数据加密,并将加密数据存储在联盟链上。

进一步地,所述联盟链将加密数据和私钥在联盟链上的存储地址发送给层次式区块链。

进一步地,所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上,具体为:

所述数据共享者将访问策略发送给层次式区块链的零知识证明智能合约;

所述零知识证明智能合约为访问策略构造一个零知识证明电路,并生成公钥和验证密钥;

所述零知识证明智能合约将零知识证明电路、公钥和验证密钥存储到层次式区块链上。

进一步地,所述数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证,包括:

数据需求者访问零知识证明智能合约获取零知识证明电路和公钥;

将私有属性集作为零知识证明电路的私有输入生成零知识证明;

利用数据需求者身份信息对零知识证明进行IBE签名,将数据需求者身份信息、数据需求者签名和零知识证明并发送给层次式区块链;

层次式区块链利用数据需求者身份信息对其中数据需求者签名进行验证,验证成功后将零知识证明传给零知识证明智能合约;

所述零知识证明智能合约对零知识证明进行合法性验证。

进一步地,所述加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥,具体为:

加密智能合约从层次式区块链获取对应的加密数据和私钥在联盟链上的存储地址;

所述加密智能合约根据对应的加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥;

所述加密智能合约将加密数据和私钥返回给数据需求者。

根据一些实施例,本发明的第二方案提供了一种基于区块链的电网和电力通信网数据共享保护系统,采用如下技术方案:

基于区块链的电网和电力通信网数据共享保护系统,利用层次式区块链以及联盟链对电网和电力通信进行数据共享和保护,其中,所述系统包括:

数据共享模块,被配置为数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上;所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上;

数据获取模块,被配置为数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证;加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥。

根据一些实施例,本发明的第三方案提供了一种计算机可读存储介质。

一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一个方面所述的基于区块链的电网和电力通信网数据共享保护方法中的步骤。

根据一些实施例,本发明的第四方案提供了一种计算机设备。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一个方面所述的基于区块链的电网和电力通信网数据共享保护方法中的步骤。

与现有技术相比,本发明的有益效果为:

本发明本文提出的基于区块链的数据共享方法可以对所有数据进行统一的存储,利用区块链的特性还能够做到数据的不可篡改、可追溯等。同时在区块链上运用了密码学技术手段:将CP-ABE机制和零知识证明技术相结合相结合,做到共享数据的同时保护了数据的隐私,增强了数据的安全性。同时为进一步保证数据的安全性,将用户身份信息作为区块链账号,利用IBE签名算法代替传统的PKI签名技术,对接入的用户实现身份验证,从而实现数据流通过程的可追溯、可审计。

附图说明

构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。

图1是本发明实施例中数据分享者与系统的交互示意图;

图2是本发明实施例中数据分享者与系统的交互示意图。

具体实施方式

下面结合附图与实施例对本发明作进一步说明。

应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

实施例一

如图1所示,本实施例提供了一种基于区块链的电网和电力通信网数据共享保护方法,利用层次式区块链以及联盟链对电网和电力通信进行数据共享和保护。本实施例中,该方法包括以下步骤:

数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上;所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上;

数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证;加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥。

具体地,所述层次式区块链采用树形多链结构,从上层到下层逐级进行授权,顶层具有最高权限;

所述层次式区块链的顶层为根区块链;所述层次式区块链的第二层为枝区块链,包括五个独立的区块链;所述层次式区块链的底层为叶区块链。

所述数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上,具体为:

数据共享者利用数据共享者身份信息将原始数据和访问策略进行IBE签名,并将共享者身份信息、共享者签名和原始数据和访问策略明文发送给层次式区块链;

所述层次式区块链根据共享者身份信息对共享者签名进行验证,验证成功后,将原始数据和访问策略明文发送给加密智能合约;

所述加密智能合约根据访问策略生成主密钥,利用主密钥生成公钥;

所述加密智能合约根据访问策略、公钥和主密钥生成私钥,并将生成的私钥存储在联盟链上;

所述加密智能合约根据公钥将原始数据加密,并将加密数据存储在联盟链上。

所述联盟链将加密数据和私钥在联盟链上的存储地址发送给层次式区块链。

具体地,所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上,具体为:

所述数据共享者将访问策略发送给层次式区块链的零知识证明智能合约;

所述零知识证明智能合约为访问策略构造一个零知识证明电路,并生成公钥和验证密钥;

所述零知识证明智能合约将零知识证明电路、公钥和验证密钥存储到层次式区块链上。

所述数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证,包括:

数据需求者访问零知识证明智能合约获取零知识证明电路和公钥;

将私有属性集作为零知识证明电路的私有输入生成零知识证明;

利用数据需求者身份信息对零知识证明进行IBE签名,将数据需求者身份信息、数据需求者签名和零知识证明并发送给层次式区块链;

层次式区块链利用数据需求者身份信息对其中数据需求者签名进行验证,验证成功后将零知识证明传给零知识证明智能合约;

所述零知识证明智能合约对零知识证明进行合法性验证。

所述加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥,具体为:

加密智能合约从层次式区块链获取对应的加密数据和私钥在联盟链上的存储地址;

所述加密智能合约根据对应的加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥;

所述加密智能合约将加密数据和私钥返回给数据需求者。

具体地,本实施中的区块链采用了层次式区块链加联盟链的模型。其中层次式区块链采用树形多链结构,从上层到下层逐级进行授权,顶层具有最高权限。顶层区块链为根区块链,由国网总部进行维护,第二层有五个独立的区块链,由五个分部进行维护并接入根区块链,第三层由各个省公司维护单独的区块链并接入对应的分部区块链。

层次式区块链进行身份验证、运行零知识证明智能合约和CP-ABE智能合约,存储零知识证明所需的公共参数和加密数据在私有链上的存储地址并且及时维护属性集集合;联盟链由总部进行维护,存放加密后的数据和解密数据的私钥。

综上所述,两个区块链系统之间可进行数据交互。将电网和电力通信网中的用户分为数据分享者和数据需求者,两种用户分别通过与层次式区块链系统中的两种智能合约进行交互来达到分享数据和保护隐私的目标。数据分享者通过智能合约将密文和私钥存储到联盟链并生成相应的零知识证明电路和公共参数;数据获取者,从智能合约获取到零知识证明公共参数后在本地生成零知识证明,经智能合约验证通过后,从安全通道返回加密后的数据和私钥给数据需求者。数据分享者上传数据和需求者获取数据的过程中需要向区块链发送IBE签名,以验证身份,以此实现对区块链访问的记录。现分别给出本方案中数据分享者和系统交互的过程以及数据需求者和系统交互的具体过程,以此说明本方案的工作原理:

如图1所示,数据分享者和系统交互可划分成两个部分:一个是数据提供者和层次式区块链的CP-ABE智能合约的交互,涉及到图中的①②③④三个过程;另一个是数据提供者和层次式区块链的zk-SNARK智能合约交互.涉及图中的⑤⑥两个过程。其具体过程如下:

数据提供者利用自身身份信息(ID提供者)将原始数据(待存储数据)和访问策略进行IBE签名,并将身份信息、签名和原始数据和访问策略明文发送给层次式区块链,层次式区块链收到后用身份信息对其中IBE签名进行验证,验证成功后将原始数据和访问策略明文传给CP-ABE智能合约,在过程①中CP-ABE智能合约根据访问策略生成MK(masterkey),用MK生产PK(public key),最后根据访问策略、PK和MK生产SK(secret key)。在过程②中CP-ABE智能合约用PK将原始数据加密,并将加密后的数据存储在联盟链上,在过程③中CP-ABE智能合约将SK存储在联盟链上,在过程④中联盟链将存储地址记录到层次式区块链,在过程⑤中数据提供者将访问策略发送给层次式区块链的zk-SNARK智能合约,zk-SNARK智能合约为该访问策略构造一个零知识证明电路C,并生成公钥PK

需要说明的是,此处的公钥PK

如图2所示,数据需求者和系统交互可划分成两个部分:一个是数据需求者和层次式区块链的zk-SNARK智能合约的交互,涉及到图中的①②③④三个过程;另一个是数据提供者和层次式区块链的CP-ABE智能合约交互,涉及图中的⑤⑥两个过程。其具体过程如下:

在过程①中数据需求者访问zk-SNARK智能合约获取零知识证明电路C和PK

本实施例提出的模型不仅满足了细粒度访问控制要求的数据共享,也能有效解决用户节点采用基于密文的属性加密策略的时的隐私保护问题,防止用户访问策略和敏感属性泄漏,采用的层次式结构区块链可实现分级管理功能,采用的IBE签名机制可提供一定的审计功能,对数据共享和获取的过程能够追溯。该模型能够作为电网和电力通信网融合下的数据共享和保护的一种方法。

实施例二

本实施例提供了一种基于区块链的电网和电力通信网数据共享保护系统,利用层次式区块链以及联盟链对电网和电力通信进行数据共享和保护,其中,所述系统包括:

数据共享模块,被配置为数据共享者通过层次式区块链中的加密智能合约将原始数据加密生成加密数据和私钥并存储在联盟链上;所述数据共享者通过零知识证明智能合约为访问策略生成零知识证明电路,生成公钥和验证密钥并存储在层次式区块链上;

数据获取模块,被配置为数据需求者根据通过访问零知识证明智能合约获取到零知识证明公共参数后在层次式区块链上生成零知识证明,经过零知识证明智能合约的身份验证后将零知识证明发送给零知识证明智能合约进行合法性验证;加密智能合约在层次式区块链获取对应加密数据和私钥在联盟链上的存储地址,利用对应加密数据和私钥在联盟链上的存储地址向联盟链请求加密数据和私钥。

上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。

上述实施例中对各个实施例的描述各有侧重,某个实施例中没有详述的部分可以参见其他实施例的相关描述。

所提出的系统,可以通过其他的方式实现。例如以上所描述的系统实施例仅仅是示意性的,例如上述模块的划分,仅仅为一种逻辑功能划分,实际实现时,可以有另外的划分方式,例如多个模块可以结合或者可以集成到另外一个系统,或一些特征可以忽略,或不执行。

实施例三

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例一所述的基于区块链的电网和电力通信网数据共享保护方法中的步骤。

实施例四

本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施例一所述的基于区块链的电网和电力通信网数据共享保护方法中的步骤。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

相关技术
  • 一种基于区块链的数据共享系统及数据共享方法
  • 基于区块链的大数据共享方法、装置及系统
  • 基于区块链和数据资源目录的电网数据共享方法及系统
  • 一种基于区块链的电力数据存储方法及电力数据共享方法
技术分类

06120116488385