CN117640248B - 基于区块链的电力数据共享方法及装置 - Google Patents
基于区块链的电力数据共享方法及装置 Download PDFInfo
- Publication number
- CN117640248B CN117640248B CN202410050919.5A CN202410050919A CN117640248B CN 117640248 B CN117640248 B CN 117640248B CN 202410050919 A CN202410050919 A CN 202410050919A CN 117640248 B CN117640248 B CN 117640248B
- Authority
- CN
- China
- Prior art keywords
- node
- sharing
- data
- nodes
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000002347 injection Methods 0.000 claims description 32
- 239000007924 injection Substances 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012163 sequencing technique Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 239000000243 solution Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- PXHVJJICTQNCMI-UHFFFAOYSA-N Nickel Chemical compound [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种基于区块链的电力数据共享方法及装置,其中,将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;得到多个节点聚类簇;得到多个节点聚类簇对应的多个应用区块链;为监管节点和多个第二共享参与节点构建区块链,得到跨域区块链;在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票;得到节点聚类簇中各个节点的第一秘密数据;源节点获取节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;将第二秘密数据作为电力共享数据发送至目标节点;将得到的电力共享总数据存储在分布式账本。本申请能够提高电力数据共享方法安全性。
Description
技术领域
本申请涉及区块链技术领域,具体涉及一种基于区块链的电力数据共享方法及装置。
背景技术
区块链是一种去中心化的分布式账本技术,它通过将数据以区块的形式链接在一起,形成一个不可篡改的链条。每个区块通过密码学方法确保数据的安全性和完整性。区块链的特点包括去中心化、透明性、 安全性和可追溯性。电力数据共享方法是指在电力行业中,通过使用特定的技术和方法,实现不同参与方之间共享电力数据的过程。这种方法旨在提高电力系统的效率、可靠性和可持续性,促进电力资源的合理分配和利用。传统的电力数据共享方法安全性较低。
也即,现有技术中电力数据共享方法安全性较低。
发明内容
本申请实施例提供一种基于区块链的电力数据共享方法及装置,可以提高电力数据共享方法安全性。
第一方面,本申请提供的基于区块链的电力数据共享方法,包括:
获取参与电力数据共享的监管节点和多个共享参与节点;
将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
对多个所述第一共享参与节点进行聚类,得到多个节点聚类簇;
为每个所述节点聚类簇分别构建区块链,得到多个所述节点聚类簇对应的多个应用区块链;
为所述监管节点和多个所述第二共享参与节点构建区块链,得到跨域区块链,其中,所述跨域区块链中包含所述监管节点;
基于所述节点聚类簇中各个所述第一共享参与节点的私有数据数据量和通信速度对各个所述第一共享参与节点排序,得到所述节点聚类簇中各个所述第一共享参与节点的排序值;
将所述节点聚类簇中排序值最高的所述第一共享参与节点确定为源节点;
在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,其中,所述源节点和所述目标节点属于不同的所述应用区块链中的节点,其中,所述电力共享请求用于所述源节点向所述目标节点发送电力共享数据;
在所述跨域区块链的各个节点对所述电力共享请求完成共识投票的情况下,所述源节点所在的所述节点聚类簇中每H个节点进行多方安全计算,得到所述节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
所述源节点获取所述节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
将所述第二秘密数据作为所述电力共享数据发送至所述目标节点;
在多个所述共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
可选地,所述跨域区块链的数量为至少两个,所述在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,包括:
在源节点向目标节点发起电力共享请求时,获取所述源节点所在应用区块链的所有节点的节点属性的第一节点属性均值信息、所述目标节点所在应用区块链的所有节点的节点属性的第二节点属性均值信息、各个所述跨域区块链的各个第三节点属性均值信息,节点属性包括节点位置;
对于每一个所述第三节点属性均值信息,计算所述第三节点属性均值信息与第一节点属性均值信息的第一相似度,计算所述第三节点属性均值信息与第二节点属性均值信息的第二相似度,将第一相似度和第二相似度之和确定为所述第三节点属性均值信息对应的总体相似度,得到每个所述第三节点属性均值信息对应的总体相似度;
利用至少两个所述跨域区块链中总体相似度最大的所述跨域区块链的各个节点对所述电力共享请求进行共识投票。
可选地,所述将所述第二秘密数据作为所述电力共享数据发送至所述目标节点,包括:
所述源节点将所述第二秘密数据拆分为多个第一数据分量;
将多个所述第一数据分量分别发送至所述节点聚类簇中其他的P个节点,并获取所述P个节点返回的对所述第一数据分量加密后的多个第二数据分量;
将多个所述第二数据分量依次发送至所述目标节点。
可选地,所述将多个所述第二数据分量依次发送至所述目标节点,包括:
在向所述目标节点发送所述第二数据分量之前,源节点从目标节点的锚节点获得目标节点的逻辑标识符;
所述源节点生成查找请求消息并使用其私钥进行加密,得到加密后查找请求消息,并将所述加密后查找请求消息发送到所述目标节点的锚节点;
当所述目标节点的锚节点接收到所述加密后查找请求消息并验证源节点身份后,构建查找响应消息,所述查找响应消息包括映射信息,所述映射信息包括目标节点的逻辑标识符、IP地址和公钥;
所述目标节点的锚节点向源节点发送所述查找响应消息;
所述源节点接收查找响应消息,基于所述查找响应消息获取所述目标节点的逻辑标识符,并以预设消息转发方式向目标节点发送所述第二数据分量。
可选地,所述将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点,包括:
获取多个所述共享参与节点之间互相的信任度评分;
计算每个所述共享参与节点的信任度总评分,所述共享参与节点的信任度总评分为其他节点对所述共享参与节点的信任度评分之和;
将信任度总评分不高于预设值的所述共享参与节点确定为多个第一共享参与节点,将信任度评分总和高于预设值的所述共享参与节点确定为多个第二共享参与节点。
可选地,所述基于区块链的电力数据共享方法,包括:
获取所述监管节点在目标编译器中编码目标智能合约对应的智能合约语言代码;
通过所述目标编译器将所述智能合约语言代码编译为合约字节码,得到所述目标智能合约相应的中间字节码;
对所述中间字节码进行验证,得到验证结果;
在所述验证结果为验证通过后,在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码;
在所述Gas注入后字节码中,注入所述目标智能合约实现必要的调用接口和数据,以为所述目标智能合约执行构建合理的上下文环境,得到注入后字节码;
将所述注入后字节码翻译为机器码,得到目标智能合约的机器码;
将所述目标智能合约的机器码发送至各个所述应用区块链,以使各个所述应用区块链使用所述目标智能合约。
可选地,所述在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码,包括:
统计所述目标智能合约每一操作消耗的Gas数据;
将所述中间字节码转换成易于解析的格式化文本;
将所述消耗的Gas数据注入到所述格式化文本中,得到Gas注入后格式化文本;
将所述Gas注入后格式化文本恢复成字节码,得到Gas注入后字节码。
第二方面,本申请提供的基于区块链的电力数据共享装置,包括:
获取模块,用于获取参与电力数据共享的监管节点和多个共享参与节点;
划分模块,用于将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
聚类模块,用于对多个所述第一共享参与节点进行聚类,得到多个节点聚类簇;
第一构建模块,用于为每个所述节点聚类簇分别构建区块链,得到多个所述节点聚类簇对应的多个应用区块链;
第二构建模块,用于为所述监管节点和多个所述第二共享参与节点构建区块链,得到跨域区块链,其中,所述跨域区块链中包含所述监管节点;
排序模块,用于基于所述节点聚类簇中各个所述第一共享参与节点的私有数据数据量和通信速度对各个所述第一共享参与节点排序,得到所述节点聚类簇中各个所述第一共享参与节点的排序值;
确定模块,用于将所述节点聚类簇中排序值最高的所述第一共享参与节点确定为源节点;
共识模块,用于在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,其中,所述源节点和所述目标节点属于不同的所述应用区块链中的节点,其中,所述电力共享请求用于所述源节点向所述目标节点发送电力共享数据;
安全计算模块,用于在所述跨域区块链的各个节点对所述电力共享请求完成共识投票的情况下,所述源节点所在的所述节点聚类簇中每H个节点进行多方安全计算,得到所述节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
求和模块,用于所述源节点获取所述节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
发送模块,用于将所述第二秘密数据作为所述电力共享数据发送至所述目标节点;
存储模块,用于在多个所述共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
可选地,所述对多个所述第一共享参与节点进行聚类,得到多个节点聚类簇,包括:
获取各个第一共享参与节点的节点属性,所述节点属性包括节点位置;
随机将各个第一共享参与节点划分为K个第一节点集,其中,每个第一节点集包括至少两个节点,K为大于1的整数;
基于预设数量N对各个所述第一节点集内的节点分别进行聚类,得到每个所述第一节点集包含的N个第二节点集和各个所述第二节点集的第四节点属性均值信息,其中,第四节点属性均值信息为所述第二节点集中各个所述节点属性的平均值;
将每个所述第二节点集分别确定为目标节点集,在每个所述第一节点集中分别获取一个与所述目标节点集的第四节点属性均值信息之间相似度最高的所述第二节点集,得到所述目标节点集对应的K个第二节点集的第四节点属性均值信息的第五节点属性均值信息,得到每个所述目标节点的第五节点属性均值信息,得到N个第五节点属性均值信息;
分别为每个所述第五节点属性均值信息建立一个集合,分别将各个所述第一共享参与节点放入与所述第一共享参与节点的节点属性之间相似度中最高的第五节点属性均值信息对应的集合内,得到N个节点聚类簇。
可选地,所述将所述第二秘密数据作为所述电力共享数据发送至所述目标节点,包括:
所述源节点将所述第二秘密数据拆分为多个第一数据分量;
将多个所述第一数据分量分别发送至所述节点聚类簇中其他的P个节点,并获取所述P个节点返回的对所述第一数据分量加密后的多个第二数据分量;
将多个所述第二数据分量依次发送至所述目标节点。
可选地,所述将多个所述第二数据分量依次发送至所述目标节点,包括:
在向所述目标节点发送所述第二数据分量之前,源节点从目标节点的锚节点获得目标节点的逻辑标识符;
所述源节点生成查找请求消息并使用其私钥进行加密,得到加密后查找请求消息,并将所述加密后查找请求消息发送到所述目标节点的锚节点;
当所述目标节点的锚节点接收到所述加密后查找请求消息并验证源节点身份后,构建查找响应消息,所述查找响应消息包括映射信息,所述映射信息包括目标节点的逻辑标识符、IP地址和公钥;
所述目标节点的锚节点向源节点发送所述查找响应消息;
所述源节点接收查找响应消息,基于所述查找响应消息获取所述目标节点的逻辑标识符,并以预设消息转发方式向目标节点发送所述第二数据分量。
可选地,所述将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点,包括:
获取多个所述共享参与节点之间互相的信任度评分;
计算每个所述共享参与节点的信任度总评分,所述共享参与节点的信任度总评分为其他节点对所述共享参与节点的信任度评分之和;
将信任度总评分不高于预设值的所述共享参与节点确定为多个第一共享参与节点,将信任度评分总和高于预设值的所述共享参与节点确定为多个第二共享参与节点。
可选地,所述基于区块链的电力数据共享方法,包括:
获取所述监管节点在目标编译器中编码目标智能合约对应的智能合约语言代码;
通过所述目标编译器将所述智能合约语言代码编译为合约字节码,得到所述目标智能合约相应的中间字节码;
对所述中间字节码进行验证,得到验证结果;
在所述验证结果为验证通过后,在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码;
在所述Gas注入后字节码中,注入所述目标智能合约实现必要的调用接口和数据,以为所述目标智能合约执行构建合理的上下文环境,得到注入后字节码;
将所述注入后字节码翻译为机器码,得到目标智能合约的机器码;
将所述目标智能合约的机器码发送至各个所述应用区块链,以使各个所述应用区块链使用所述目标智能合约。
可选地,所述在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码,包括:
统计所述目标智能合约每一操作消耗的Gas数据;
将所述中间字节码转换成易于解析的格式化文本;
将所述消耗的Gas数据注入到所述格式化文本中,得到Gas注入后格式化文本;
将所述Gas注入后格式化文本恢复成字节码,得到Gas注入后字节码。
第三方面,本申请提供的电子设备,包括存储器和处理器,存储器存储有计算机程序,处理器用于运行存储器内的计算机程序,实现本申请所提供的基于区块链的电力数据共享方法中的步骤。
第四方面,本申请提供的计算机可读存储介质,存储有多条指令,该指令适于处理器进行加载,实现本申请所提供的基于区块链的电力数据共享方法中的步骤。
第五方面,本申请提供的计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现本申请所提供的基于区块链的电力数据共享方法中的步骤。
本申请中,相较于相关技术,获取参与电力数据共享的监管节点和多个共享参与节点;将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;对多个第一共享参与节点进行聚类,得到多个节点聚类簇;为每个节点聚类簇分别构建区块链,得到多个节点聚类簇对应的多个应用区块链;为监管节点和多个第二共享参与节点构建区块链,得到跨域区块链,其中,跨域区块链中包含监管节点;基于节点聚类簇中各个第一共享参与节点的私有数据数据量和通信速度对各个第一共享参与节点排序,得到节点聚类簇中各个第一共享参与节点的排序值;将节点聚类簇中排序值最高的第一共享参与节点确定为源节点;在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票,其中,源节点和目标节点属于不同的应用区块链中的节点,其中,电力共享请求用于源节点向目标节点发送电力共享数据;在跨域区块链的各个节点对电力共享请求完成共识投票的情况下,节点聚类簇中每H个节点进行多方安全计算,得到节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;源节点获取节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;将第二秘密数据作为电力共享数据发送至目标节点;在多个共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。本申请能够提高电力数据共享方法安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的基于区块链的电力数据共享系统的场景示意图;
图2是本申请实施例提供的基于区块链的电力数据共享方法的一个实施例的流程示意图;
图3是本申请实施例提供的基于区块链的电力数据共享装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
需要说明的是,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其他具体实施例。
本申请以下描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
本申请以下描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
下面首先对本申请实施例中涉及到的一些基本概念进行介绍:区块链是一个信息技术领域的术语。从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任”基础,创造了可靠的“合作”机制,具有广阔的运用前景。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),它本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块。
区块链节点(Node):节点是区块链分布式系统中的网络节点,是通过网络连接的服务器、计算机、电话等,针对不同性质的区块链,成为节点的方式也会有所不同。
智能合约:是一套以数字形式定义、传播、验证或执行的约定,包括合约参与方可以在上面执行这些约定的协议。
创世块:区块链账本里第一个区块数据,作为区块链的首区块。
智能合约在1994年由Nick Szabo首次提出,他将智能合约定义为:分布式分类账自动执行的合约,之后被称为智能合约。这些数字合约可以转换为代码,并可以在区块链上运行。智能合约能够将协议与用户界面相结合的一种工具,从而对计算机网络进行规范化和安全加固。
直到区块链技术出现,才逐步得到发展。运行在区块链上的智能合约直到以太坊出现之后才得到广泛应用,以太坊智能合约运行在虚拟机之上,合约语言Solidity具有图灵完备性,支持多种应用程序开发。不同类型区块链网络具有不同类别的智能合约。
为了能够提高基于区块链的电力数据共享的效果,本申请实施例提供一种基于区块链的电力数据共享方法、基于区块链的电力数据共享装置、电子设备、计算机可读存储介质以及计算机程序产品。其中,基于区块链的电力数据共享方法可由基于区块链的电力数据共享装置执行,或者由集成了该基于区块链的电力数据共享装置的电子设备执行。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参照图1,本申请还提供一基于区块链的电力数据共享系统,如图1所示,该基于区块链的电力数据共享系统包括监管节点和多个共享参与节点,多个共享参与节点中集成有本申请提供的基于区块链的电力数据共享装置。
其中,共享参与节点100可以是任何配置有处理器而具备处理能力的设备,比如智能手机、平板电脑、掌上电脑、笔记本电脑、智能音箱等具备处理器的移动式电子设备,或者台式电脑、电视、服务器、工业设备等具备处理器的固定式电子设备。
另外,如图1所示,该基于区块链的电力数据共享系统还可以包括存储器200,用于存储原始数据、中间数据以及结果数据。
本申请实施例中,存储器200可以是云存储器,云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
需要说明的是,图1所示的基于区块链的电力数据共享系统的场景示意图仅仅是一个示例,本申请实施例描述的基于区块链的电力数据共享系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着基于区块链的电力数据共享系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
请参照图2,图2是本申请实施例提供的基于区块链的电力数据共享方法的一个实施例的流程示意图,如图2所示,本申请提供的基于区块链的电力数据共享方法的流程如下:
201、获取参与电力数据共享的监管节点和多个共享参与节点。
其中,监管节点可以为电力行业的各个监管部门,多个共享参与节点可以为电力行业的各个电力企业。
202、将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点。
本申请实施例中,将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点,包括:
(1)获取多个共享参与节点之间互相的信任度评分。
(2)计算每个共享参与节点的信任度总评分,共享参与节点的信任度总评分为其他节点对共享参与节点的信任度评分之和。
(3)将信任度总评分不高于预设值的共享参与节点确定为多个第一共享参与节点,将信任度评分总和高于预设值的共享参与节点确定为多个第二共享参与节点。
203、对多个第一共享参与节点进行聚类,得到多个节点聚类簇。
本申请实施例中,对多个第一共享参与节点进行聚类,得到多个节点聚类簇,包括:
(1)获取各个第一共享参与节点的节点属性。
节点属性包括节点位置。例如,节点属性包括节点所在的经度和纬度。
(2)随机将各个第一共享参与节点划分为K个第一节点集,其中,每个第一节点集包括至少两个节点,K为大于1的整数;
(3)基于预设数量N对各个第一节点集内的节点分别进行聚类,得到每个第一节点集包含的N个第二节点集和各个第二节点集的第四节点属性均值信息,其中,第四节点属性均值信息为第二节点集中各个节点属性的平均值;
(4)将每个第二节点集分别确定为目标节点集,在每个第一节点集中分别获取一个与目标节点集的第四节点属性均值信息之间相似度最高的第二节点集,得到目标节点集对应的K个第二节点集的第四节点属性均值信息的第五节点属性均值信息,得到每个目标节点的第五节点属性均值信息,得到N个第五节点属性均值信息;
(5)分别为每个第五节点属性均值信息建立一个集合,分别将各个第一共享参与节点放入与第一共享参与节点的节点属性之间相似度中最高的第五节点属性均值信息对应的集合内,得到N个节点聚类簇。
204、为每个节点聚类簇分别构建区块链,得到多个节点聚类簇对应的多个应用区块链。
205、为监管节点和多个第二共享参与节点构建区块链,得到跨域区块链。
其中,跨域区块链中包含监管节点。
本申请实施例中,在构建区块链之后包括如下步骤:
(1)获取监管节点在目标编译器中编码目标智能合约对应的智能合约语言代码;
(2)通过目标编译器将智能合约语言代码编译为合约字节码,得到目标智能合约相应的中间字节码;
(3)对中间字节码进行验证,得到验证结果;
(4)在验证结果为验证通过后,在中间字节码注入目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码。
具体的,在中间字节码注入目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码,包括:统计目标智能合约每一操作消耗的Gas数据;将中间字节码转换成易于解析的格式化文本;将消耗的Gas数据注入到格式化文本中,得到Gas注入后格式化文本;将Gas注入后格式化文本恢复成字节码,得到Gas注入后字节码。
(5)在Gas注入后字节码中,注入目标智能合约实现必要的调用接口和数据,以为目标智能合约执行构建合理的上下文环境,得到注入后字节码;
(6)将注入后字节码翻译为机器码,得到目标智能合约的机器码;
(7)将目标智能合约的机器码发送至各个应用区块链,以使各个应用区块链使用目标智能合约。
206、基于节点聚类簇中各个第一共享参与节点的私有数据数据量和通信速度对各个第一共享参与节点排序,得到节点聚类簇中各个第一共享参与节点的排序值。
具体的,私有数据数据量是第一共享参与节点本地需要共享的电力数据的总量。对私有数据数据量和通信速度加权求和,得到排序值。私有数据数据量和通信速度越大,排序值越大。排序值越大的节点本地具有更多的数据和更快的速度,从而能减少数据传输,同时提高传输速度。
207、将节点聚类簇中排序值最高的第一共享参与节点确定为源节点。
208、在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票。
其中,源节点和目标节点属于不同的应用区块链中的节点,其中,电力共享请求用于源节点向目标节点发送电力共享数据。
本申请实施例中,跨域区块链的数量为至少两个,每个跨域区块链包括一个监管节点,在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票,可以包括:
(1)在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票,包括:
(2)在源节点向目标节点发起电力共享请求时,获取源节点所在应用区块链的所有节点的节点属性的第一节点属性均值信息、目标节点所在应用区块链的所有节点的第二节点属性均值信息、各个跨域区块链的各个第三节点属性均值信息。
其中,第一节点属性均值信息为源节点所在应用区块链的所有节点的节点属性的平均值,第二节点属性均值信息为目标节点所在应用区块链的所有节点的节点属性的平均值,第三节点属性均值信息为跨域区块链的所有节点的节点属性的平均值。
(3)对于每一个第三节点属性均值信息,计算第三节点属性均值信息与第一节点属性均值信息的第一相似度,计算第三节点属性均值信息与第二节点属性均值信息的第二相似度,将第一相似度和第二相似度之和确定为第三节点属性均值信息对应的总体相似度,得到每个第三节点属性均值信息对应的总体相似度。
其中,相似度可以为欧式距离、余弦相似度等等。
(4)利用至少两个跨域区块链中总体相似度最大的跨域区块链的各个节点对电力共享请求进行共识投票。
总体相似度越大,表明跨域区块链与源节点和目标节点之间距离更近。
具体的,获取多个共享参与节点之间互相的信任度评分;计算每个共享参与节点的信任度总评分,共享参与节点的信任度总评分为其他节点对共享参与节点的信任度评分之和,在至少两个跨域区块链中总体相似度最大的跨域区块链中,将跨域区块链跨域中信任度评分从大到小排序靠前的G个共享参与节点确定为一级节点,将剩余节点确定为二级节点,G为大于1的整数,二级节点的数量大于一级节点的数量,根据一级节点和二级节点之间的距离将二级节点和与其最近的一级节点建立从属关系,利用监管节点将电力共享请求发送至各个二级节点,各个二级节点将各自对电力共享请求的第一反馈信息发送至具有从属关系的一级节点,第一反馈信息包括通过或者驳回,一级节点分别统计获取的第一反馈信息,得到属于通过的第一反馈信息的数量占比,若属于通过的第一反馈信息的数量占比大于预设占比,则确定一级节点的第二反馈信息为通过,若属于通过的反馈信息的数量占比不大于预设占比,则确定一级节点的第二反馈信息为驳回,监管节点获取各个一级节点的第二反馈信息,得到属于通过的第二反馈信息的数量占比,若属于通过的第二反馈信息的数量占比大于预设占比,则确定完成共识投票,源节点向目标节点发起电力共享请求,若属于通过的反馈信息的数量占比不大于预设占比,则确定未完成共识投票,源节点无法向目标节点发起电力共享请求。
209、在跨域区块链的各个节点对电力共享请求完成共识投票的情况下,源节点所在的节点聚类簇中每H个节点进行多方安全计算,得到节点聚类簇中各个节点的第一秘密数据。
其中,H为大于1的整数。
百万富翁问题指的是,在没有可信第三方的前提下,两个百万富翁如何不泄露自己的真实财产状况来比较谁更有钱。通过研究此问题,形象地说明了多方安全计算面临的挑战和问题解决思路。多个持有各自私有数据的参与方,共同执行一个计算逻辑(如,求最大值计算),并获得计算结果。但过程中,参与的每一方均不会泄漏各自数据的计算,被称之为MPC计算。举个例子,Bob和Alice想弄清谁的薪资更高,但因为签署了保密协议而不能透露具体薪资。如果Bob和Alice分别将各自的薪资告诉离职员工Anne,这时Anne就能知道谁的薪资更高,并告诉Bob和Alice。这种方式就是需保证中间人Anne完全可信。而通过MPC则可以设计一个协议,在这个协议中,算法取代中间人的角色,Alice和Bob的薪资以及比较的逻辑均交由算法处理,参与方只需执行计算协议,而不用依赖于一个完全可信的第三方。多方安全计算所要确保的基本性质就是:在协议执行期间发送的消息中不能推断出各方持有的私有数据信息,关于私有数据唯一可以推断的信息是仅仅能从输出结果得到的信息。
210、源节点获取节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据。
211、将第二秘密数据作为电力共享数据发送至目标节点。
本申请实施例中,将第二秘密数据作为电力共享数据发送至目标节点,包括:
(1)源节点将第二秘密数据拆分为多个第一数据分量。
(2)将多个第一数据分量分别发送至节点聚类簇中其他的P个节点,并获取P个节点返回的对第一数据分量加密后的多个第二数据分量。
(3)将多个第二数据分量依次发送至目标节点。
具体的,在向目标节点发送第二数据分量之前,源节点从目标节点的锚节点获得目标节点的逻辑标识符;源节点生成查找请求消息并使用其私钥进行加密,得到加密后查找请求消息,并将加密后查找请求消息发送到目标节点的锚节点;当目标节点的锚节点接收到加密后查找请求消息并验证源节点身份后,构建查找响应消息,查找响应消息包括映射信息,映射信息包括目标节点的逻辑标识符、IP地址和公钥;目标节点的锚节点向源节点发送查找响应消息;源节点接收查找响应消息,基于查找响应消息获取目标节点的逻辑标识符,并以预设消息转发方式向目标节点发送第二数据分量。
数据路由和流量控制是广域网的核心。基于DHT(Distributed Hash Table)的路由协议的性能优于传统路由协议,传统路由协议在路由发现阶段使用泛洪。基于DHT的路由机制避免减少了路由发现阶段的网络范围内的泛洪。
在基于DHT的路由协议中,通用标识符(UID)如MAC地址或IP地址和逻辑标识符(LID)用于标识节点。每个节点维持其整个逻辑空间(LS)的分离的LID空间部分。每个节点根据其物理相邻节点从预定义的LS计算其LID。此外,每个节点的逻辑标识符结构(LIS)(例如:环、弦或多维结构)保留其1跳/2跳逻辑相邻节点(Lnbr)的路径。因此,逻辑网络是建立在物理网络之上的。每个节点使用其LID转发网络中的数据包/控制包。
基于DHT的路由协议中的每个节点将其LID和UID (IP/MAC地址)等其他映射信息存储在其锚节点(AN)上。为此,对每个节点的UID应用哈希函数,生成哈希值h(v),根据协议规范从LS中提取其AN。
212、在多个共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
为便于更好的实施本申请实施例提供的基于区块链的电力数据共享方法,本申请实施例还提供一种基于上述基于区块链的电力数据共享方法的基于区块链的电力数据共享装置。其中名词的含义与上述基于区块链的电力数据共享方法中相同,具体实现细节请参考以上方法实施例中的说明。
请参照图3,图3为本申请实施例提供的基于区块链的电力数据共享装置的结构示意图,该基于区块链的电力数据共享装置可以包括:
获取模块701,用于获取参与电力数据共享的监管节点和多个共享参与节点;
划分模块702,用于将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
聚类模块703,用于对多个第一共享参与节点进行聚类,得到多个节点聚类簇;
第一构建模块704,用于为每个节点聚类簇分别构建区块链,得到多个节点聚类簇对应的多个应用区块链;
第二构建模块705,用于为监管节点和多个第二共享参与节点构建区块链,得到跨域区块链,其中,跨域区块链中包含监管节点;
排序模块706,用于基于节点聚类簇中各个第一共享参与节点的私有数据数据量和通信速度对各个第一共享参与节点排序,得到节点聚类簇中各个第一共享参与节点的排序值;
确定模块707,用于将节点聚类簇中排序值最高的第一共享参与节点确定为源节点;
共识模块708,用于在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票,其中,源节点和目标节点属于不同的应用区块链中的节点,其中,电力共享请求用于源节点向目标节点发送电力共享数据;
安全计算模块709,用于在跨域区块链的各个节点对电力共享请求完成共识投票的情况下,节点聚类簇中每H个节点进行多方安全计算,得到节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
求和模块710,用于源节点获取节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
发送模块711,用于将第二秘密数据作为电力共享数据发送至目标节点;
存储模块712,用于在多个共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
可选地,将第二秘密数据作为电力共享数据发送至目标节点,包括:
源节点将第二秘密数据拆分为多个第一数据分量;
将多个第一数据分量分别发送至节点聚类簇中其他的P个节点,并获取P个节点返回的对第一数据分量加密后的多个第二数据分量;
将多个第二数据分量依次发送至目标节点。
可选地,将多个第二数据分量依次发送至目标节点,包括:
在向目标节点发送第二数据分量之前,源节点从目标节点的锚节点获得目标节点的逻辑标识符;
源节点生成查找请求消息并使用其私钥进行加密,得到加密后查找请求消息,并将加密后查找请求消息发送到目标节点的锚节点;
当目标节点的锚节点接收到加密后查找请求消息并验证源节点身份后,构建查找响应消息,查找响应消息包括映射信息,映射信息包括目标节点的逻辑标识符、IP地址和公钥;
目标节点的锚节点向源节点发送查找响应消息;
源节点接收查找响应消息,基于查找响应消息获取目标节点的逻辑标识符,并以预设消息转发方式向目标节点发送第二数据分量。
可选地,将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点,包括:
获取多个共享参与节点之间互相的信任度评分;
计算每个共享参与节点的信任度总评分,共享参与节点的信任度总评分为其他节点对共享参与节点的信任度评分之和;
将信任度总评分不高于预设值的共享参与节点确定为多个第一共享参与节点,将信任度评分总和高于预设值的共享参与节点确定为多个第二共享参与节点。
可选地,基于区块链的电力数据共享方法,包括:
获取监管节点在目标编译器中编码目标智能合约对应的智能合约语言代码;
通过目标编译器将智能合约语言代码编译为合约字节码,得到目标智能合约相应的中间字节码;
对中间字节码进行验证,得到验证结果;
在验证结果为验证通过后,在中间字节码注入目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码;
在Gas注入后字节码中,注入目标智能合约实现必要的调用接口和数据,以为目标智能合约执行构建合理的上下文环境,得到注入后字节码;
将注入后字节码翻译为机器码,得到目标智能合约的机器码;
将目标智能合约的机器码发送至各个应用区块链,以使各个应用区块链使用目标智能合约。
可选地,在中间字节码注入目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码,包括:
统计目标智能合约每一操作消耗的Gas数据;
将中间字节码转换成易于解析的格式化文本;
将消耗的Gas数据注入到格式化文本中,得到Gas注入后格式化文本;
将Gas注入后格式化文本恢复成字节码,得到Gas注入后字节码。
以上各个模块的具体实施可参见前面的实施例,在此不再赘述。
本申请实施例还提供一种电子设备,包括存储器和处理器,其中处理器通过调用存储器中存储的计算机程序,用于执行本实施例提供的基于区块链的电力数据共享方法中的步骤。
请参照图4,图4为本申请实施例提供的电子设备的结构示意图。
该电子设备可以包括一个或者一个以上处理核心的处理器101、一个或一个以上计算机可读存储介质的存储器102、电源103和输入单元104等部件。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器101是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器102内的软件程序和/或模块,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据。可选的,处理器101可包括一个或多个处理核心;可选的,处理器101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器101中。
存储器102可用于存储软件程序以及模块,处理器101通过运行存储在存储器102的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器102还可以包括存储器控制器,以提供处理器101对存储器102的访问。
电子设备还包括给各个部件供电的电源103,可选的,电源103可以通过电源管理系统与处理器101逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源103还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元104,该输入单元104可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,该电子设备还可以包括显示单元、图像采集组件等,在此不再赘述。具体在本实施例中,电子设备中的处理器101会按照如下的指令,将一个或一个以上的计算机程序对应的可执行代码加载到存储器102中,并由处理器101来执行本申请提供的基于区块链的电力数据共享方法中的步骤,比如:
获取参与电力数据共享的监管节点和多个共享参与节点;
将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
对多个第一共享参与节点进行聚类,得到多个节点聚类簇;
为每个节点聚类簇分别构建区块链,得到多个节点聚类簇对应的多个应用区块链;
为监管节点和多个第二共享参与节点构建区块链,得到跨域区块链,其中,跨域区块链中包含监管节点;
基于节点聚类簇中各个第一共享参与节点的私有数据数据量和通信速度对各个第一共享参与节点排序,得到节点聚类簇中各个第一共享参与节点的排序值;
将节点聚类簇中排序值最高的第一共享参与节点确定为源节点;
在源节点向目标节点发起电力共享请求时,利用跨域区块链的各个节点对电力共享请求进行共识投票,其中,源节点和目标节点属于不同的应用区块链中的节点,其中,电力共享请求用于源节点向目标节点发送电力共享数据;
在跨域区块链的各个节点对电力共享请求完成共识投票的情况下,节点聚类簇中每H个节点进行多方安全计算,得到节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
源节点获取节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
将第二秘密数据作为电力共享数据发送至目标节点;
在多个共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
应当说明的是,本申请实施例提供的电子设备与上文实施例中的基于区块链的电力数据共享方法属于同一构思,其具体实现过程详见以上相关实施例,此处不再赘述。
本申请还提供一种计算机可读的存储介质,其上存储有计算机程序,当其存储的计算机程序在本申请实施例提供的电子设备的处理器上执行时,使得电子设备的处理器执行本申请提供的基于区块链的电力数据共享方法中的步骤。其中,存储介质可以是磁碟、光盘、只读存储器(Read Only Memory,ROM)或者随机存取器(Random Access Memory,RAM)等。
本申请还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述基于区块链的电力数据共享方法的各种可选实现方式。
以上对本申请所提供的一种基于区块链的电力数据共享方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
应当说明的是,当本申请以上实施例运用到具体产品或技术中时,涉及到用户的相关数据,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
Claims (10)
1.一种基于区块链的电力数据共享方法,其特征在于,包括:
获取参与电力数据共享的监管节点和多个共享参与节点;
将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
对多个所述第一共享参与节点进行聚类,得到多个节点聚类簇;
为每个所述节点聚类簇分别构建区块链,得到多个所述节点聚类簇对应的多个应用区块链;
为所述监管节点和多个所述第二共享参与节点构建区块链,得到跨域区块链,其中,所述跨域区块链中包含所述监管节点;
基于所述节点聚类簇中各个所述第一共享参与节点的私有数据数据量和通信速度对各个所述第一共享参与节点排序,得到所述节点聚类簇中各个所述第一共享参与节点的排序值;
将所述节点聚类簇中排序值最高的所述第一共享参与节点确定为源节点;
在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,其中,所述源节点和所述目标节点属于不同的所述应用区块链中的节点,其中,所述电力共享请求用于所述源节点向所述目标节点发送电力共享数据;
在所述跨域区块链的各个节点对所述电力共享请求完成共识投票的情况下,所述源节点所在的所述节点聚类簇中每H个节点进行多方安全计算,得到所述节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
所述源节点获取所述节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
将所述第二秘密数据作为所述电力共享数据发送至所述目标节点;
在多个所述共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
2.根据权利要求1所述的基于区块链的电力数据共享方法,其特征在于,所述跨域区块链的数量为至少两个,所述在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,包括:
在源节点向目标节点发起电力共享请求时,获取所述源节点所在应用区块链的所有节点的节点属性的第一节点属性均值信息、所述目标节点所在应用区块链的所有节点的节点属性的第二节点属性均值信息、各个所述跨域区块链的各个第三节点属性均值信息,节点属性包括节点位置;
对于每一个所述第三节点属性均值信息,计算所述第三节点属性均值信息与第一节点属性均值信息的第一相似度,计算所述第三节点属性均值信息与第二节点属性均值信息的第二相似度,将第一相似度和第二相似度之和确定为所述第三节点属性均值信息对应的总体相似度,得到每个所述第三节点属性均值信息对应的总体相似度;
利用至少两个所述跨域区块链中总体相似度最大的所述跨域区块链的各个节点对所述电力共享请求进行共识投票。
3.根据权利要求1所述的基于区块链的电力数据共享方法,其特征在于,所述将所述第二秘密数据作为所述电力共享数据发送至所述目标节点,包括:
所述源节点将所述第二秘密数据拆分为多个第一数据分量;
将多个所述第一数据分量分别发送至所述节点聚类簇中其他的P个节点,并获取所述P个节点返回的对所述第一数据分量加密后的多个第二数据分量;
将多个所述第二数据分量依次发送至所述目标节点。
4.根据权利要求3所述的基于区块链的电力数据共享方法,其特征在于,所述将多个所述第二数据分量依次发送至所述目标节点,包括:
在向所述目标节点发送所述第二数据分量之前,源节点从目标节点的锚节点获得目标节点的逻辑标识符;
所述源节点生成查找请求消息并使用其私钥进行加密,得到加密后查找请求消息,并将所述加密后查找请求消息发送到所述目标节点的锚节点;
当所述目标节点的锚节点接收到所述加密后查找请求消息并验证源节点身份后,构建查找响应消息,所述查找响应消息包括映射信息,所述映射信息包括目标节点的逻辑标识符、IP地址和公钥;
所述目标节点的锚节点向源节点发送所述查找响应消息;
所述源节点接收查找响应消息,基于所述查找响应消息获取所述目标节点的逻辑标识符,并以预设消息转发方式向目标节点发送所述第二数据分量。
5.根据权利要求1所述的基于区块链的电力数据共享方法,其特征在于,所述将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点,包括:
获取多个所述共享参与节点之间互相的信任度评分;
计算每个所述共享参与节点的信任度总评分,所述共享参与节点的信任度总评分为其他节点对所述共享参与节点的信任度评分之和;
将信任度总评分不高于预设值的所述共享参与节点确定为多个第一共享参与节点,将信任度评分总和高于预设值的所述共享参与节点确定为多个第二共享参与节点。
6.根据权利要求1所述的基于区块链的电力数据共享方法,其特征在于,所述基于区块链的电力数据共享方法,包括:
获取所述监管节点在目标编译器中编码目标智能合约对应的智能合约语言代码;
通过所述目标编译器将所述智能合约语言代码编译为合约字节码,得到所述目标智能合约相应的中间字节码;
对所述中间字节码进行验证,得到验证结果;
在所述验证结果为验证通过后,在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码;
在所述Gas注入后字节码中,注入所述目标智能合约实现的调用接口和数据,以为所述目标智能合约执行构建合理的上下文环境,得到注入后字节码;
将所述注入后字节码翻译为机器码,得到目标智能合约的机器码;
将所述目标智能合约的机器码发送至各个所述应用区块链,以使各个所述应用区块链使用所述目标智能合约。
7.根据权利要求6所述的基于区块链的电力数据共享方法,其特征在于,所述在所述中间字节码注入所述目标智能合约每一操作消耗的Gas数据,得到Gas注入后字节码,包括:
统计所述目标智能合约每一操作消耗的Gas数据;
将所述中间字节码转换成易于解析的格式化文本;
将所述消耗的Gas数据注入到所述格式化文本中,得到Gas注入后格式化文本;
将所述Gas注入后格式化文本恢复成字节码,得到Gas注入后字节码。
8.一种基于区块链的电力数据共享装置,其特征在于,包括:
获取模块,用于获取参与电力数据共享的监管节点和多个共享参与节点;
划分模块,用于将多个共享参与节点划分为多个第一共享参与节点和多个第二共享参与节点;
聚类模块,用于对多个所述第一共享参与节点进行聚类,得到多个节点聚类簇;
第一构建模块,用于为每个所述节点聚类簇分别构建区块链,得到多个所述节点聚类簇对应的多个应用区块链;
第二构建模块,用于为所述监管节点和多个所述第二共享参与节点构建区块链,得到跨域区块链,其中,所述跨域区块链中包含所述监管节点;
排序模块,用于基于所述节点聚类簇中各个所述第一共享参与节点的私有数据数据量和通信速度对各个所述第一共享参与节点排序,得到所述节点聚类簇中各个所述第一共享参与节点的排序值;
确定模块,用于将所述节点聚类簇中排序值最高的所述第一共享参与节点确定为源节点;
共识模块,用于在源节点向目标节点发起电力共享请求时,利用所述跨域区块链的各个节点对所述电力共享请求进行共识投票,其中,所述源节点和所述目标节点属于不同的所述应用区块链中的节点,其中,所述电力共享请求用于所述源节点向所述目标节点发送电力共享数据;
安全计算模块,用于在所述跨域区块链的各个节点对所述电力共享请求完成共识投票的情况下,所述源节点所在的所述节点聚类簇中每H个节点进行多方安全计算,得到所述节点聚类簇中各个节点的第一秘密数据,其中,H为大于1的整数;
求和模块,用于所述源节点获取所述节点聚类簇中各个节点的第一秘密数据并求和,得到第二秘密数据;
发送模块,用于将所述第二秘密数据作为所述电力共享数据发送至所述目标节点;
存储模块,用于在多个所述共享参与节点完成电力数据共享后,将得到的电力共享总数据存储在分布式账本。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的计算机程序,以执行权利要求1至7任一项所述的基于区块链的电力数据共享方法中的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的基于区块链的电力数据共享方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410050919.5A CN117640248B (zh) | 2024-01-15 | 2024-01-15 | 基于区块链的电力数据共享方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410050919.5A CN117640248B (zh) | 2024-01-15 | 2024-01-15 | 基于区块链的电力数据共享方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117640248A CN117640248A (zh) | 2024-03-01 |
CN117640248B true CN117640248B (zh) | 2024-03-29 |
Family
ID=90016592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410050919.5A Active CN117640248B (zh) | 2024-01-15 | 2024-01-15 | 基于区块链的电力数据共享方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117640248B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659429A (zh) * | 2017-08-11 | 2018-02-02 | 四川大学 | 基于区块链的数据共享方法 |
US11194791B1 (en) * | 2020-10-23 | 2021-12-07 | Coinbase Crypto Services, LLC. | Blockchain orchestrator computer system |
CN114625973A (zh) * | 2022-05-12 | 2022-06-14 | 深圳市宏博信息科技有限公司 | 一种匿名信息跨域推荐方法、装置、电子设备及存储介质 |
CN116455550A (zh) * | 2023-03-23 | 2023-07-18 | 国网江苏省电力有限公司南京供电分公司 | 一种基于智能合约的电力数据安全上链方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10701054B2 (en) * | 2018-01-31 | 2020-06-30 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing super community and community sidechains with consent management for distributed ledger technologies in a cloud based computing environment |
US11196771B2 (en) * | 2019-07-16 | 2021-12-07 | International Business Machines Corporation | Multi-domain blockchain network with data flow control |
WO2021196098A1 (en) * | 2020-04-01 | 2021-10-07 | Nokia Technologies Oy | Method and apparatus for trust management in integrated networks based on blockchain |
EP3929742A1 (en) * | 2020-06-22 | 2021-12-29 | UVUE Limited | Distributed computer system and method of operation thereof |
-
2024
- 2024-01-15 CN CN202410050919.5A patent/CN117640248B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659429A (zh) * | 2017-08-11 | 2018-02-02 | 四川大学 | 基于区块链的数据共享方法 |
US11194791B1 (en) * | 2020-10-23 | 2021-12-07 | Coinbase Crypto Services, LLC. | Blockchain orchestrator computer system |
CN114625973A (zh) * | 2022-05-12 | 2022-06-14 | 深圳市宏博信息科技有限公司 | 一种匿名信息跨域推荐方法、装置、电子设备及存储介质 |
CN116455550A (zh) * | 2023-03-23 | 2023-07-18 | 国网江苏省电力有限公司南京供电分公司 | 一种基于智能合约的电力数据安全上链方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于区块链的电力数据共享机制研究;张王俊;程丹明;;自动化技术与应用;20200725(07);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117640248A (zh) | 2024-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Resource allocation and trust computing for blockchain-enabled edge computing system | |
CN107862216B (zh) | 用于匿名跨链交易的隐私保护方法、装置和存储介质 | |
KR102566892B1 (ko) | 블록체인 합의 방법, 디바이스 및 시스템 | |
Shi et al. | Blockchain‐based trusted data sharing among trusted stakeholders in IoT | |
Liu et al. | Toward secure distributed data storage with error locating in blockchain enabled edge computing | |
KR20190138645A (ko) | 블록체인을 이용한 안전한 데이터 레코드 분산을 위한 방법 및 시스템 | |
Wu et al. | Provably secure authentication key exchange scheme using fog nodes in vehicular ad hoc networks | |
WO2017148527A1 (en) | Method for managing data in a network of nodes | |
Huang et al. | Resource allocation and consensus of blockchains in pervasive edge computing environments | |
Liu et al. | Privacy-preserving COVID-19 contact tracing solution based on blockchain | |
Chen et al. | DS2PM: A Data-Sharing Privacy Protection Model Based on Blockchain and Federated Learning | |
Guan et al. | Blockchain: A distributed solution to UAV‐enabled mobile edge computing | |
Wu et al. | Security analysis and secure channel-free certificateless searchable public key authenticated encryption for a cloud-based Internet of things | |
CN112910870A (zh) | 基于区块链的协同隐私计算数据通信方法 | |
CN114327827A (zh) | 一种任务处理方法、装置和存储介质 | |
Lin | Integrate the hierarchical cluster elliptic curve key agreement with multiple secure data transfer modes into wireless sensor networks | |
Tang et al. | Hedera: a permissionless and scalable hybrid blockchain consensus algorithm in multi-access edge computing for iot | |
CN117640248B (zh) | 基于区块链的电力数据共享方法及装置 | |
CN112527898B (zh) | 安全计算方法、装置、计算机及存储介质 | |
Yang et al. | Method of Interaction between Blockchain and the World outside the Chain based on Oracle Machine | |
Chu et al. | Decentralized private information sharing protocol on social networks | |
Wu et al. | Trusted fog computing for privacy smart contract blockchain | |
Zhai et al. | A review of Blockchain-based access control for the industrial IoT | |
CN116506227B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
Xu et al. | Multi-Source Data Privacy ProtectionMethod Based on Homomorphic Encryption and Blockchain. |
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 |