CN116132140A - 区块链共识机制的部署方法、装置、电子设备及存储介质 - Google Patents
区块链共识机制的部署方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116132140A CN116132140A CN202211734690.4A CN202211734690A CN116132140A CN 116132140 A CN116132140 A CN 116132140A CN 202211734690 A CN202211734690 A CN 202211734690A CN 116132140 A CN116132140 A CN 116132140A
- Authority
- CN
- China
- Prior art keywords
- node
- request information
- nodes
- reputation
- value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000007246 mechanism Effects 0.000 title claims abstract description 26
- 238000012795 verification Methods 0.000 claims abstract description 89
- 238000004891 communication Methods 0.000 claims description 33
- 230000003993 interaction Effects 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004131 Bayer process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
- H04L67/1057—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers involving pre-assessment of levels of reputation of peers
-
- 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
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本公开提供一种区块链共识机制的部署方法、装置、电子设备及存储介质,包括:接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号;将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的;基于所述验证结果执行所述请求信息。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链共识机制的部署方法、装置、电子设备及存储介质。
背景技术
区块链是凭借密码学算法串接起来并对内容进行保护的串联文字记录,每个区块都包含上个区块的加密散列、时间戳及交易数据,该设计使区块中的内容具有不可篡改的特性。共识算法是保证区块链***一致性的核心算法。与传统分布式网络不同的是,区块链上承载着价值传输,可能会存在操纵区块链上价值的恶意节点,因此典型的区块链共识算法必须考虑到恶意节点的存在。
目前,实用拜占庭容错算法(PBFT)是拜占庭容错场景下应用最广泛的共识算法之一,该算法中由一致性协议保证每一个正常节点以相同顺序执行客户端的请求消息;在主节点发生***错误或成为拜占庭节点时利用视图更换协议更换主节点,使正常节点执行过的客户端请求不被篡改;检查点协议用以清除日志记录、设置水线值、同步节点状态。
但是在实际操作中,使用现有技术中的实用拜占庭容错算法(PBFT)可能会发生随机选取主节点以及,视图切换时可能选取拜占庭节点为主节点,这可能导致各节点间共识一致性的达成,甚至由于造成频繁视图切换导致各节点间的共识效率变低。
发明内容
有鉴于此,本公开的目的在于提出一种区块链共识机制的部署方法、装置、电子设备及存储介质。
作为本公开的一个方面,提供了一种区块链共识机制的部署方法,其特征在于,包括:
接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号;
将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的;
基于所述验证结果执行所述请求信息。
可选的,所述基于所述验证结果执行所述请求信息,包括:
响应于确定所述验证结果为不一致,对所述第一节点进行更换,并使更换后的第一节点执行所述请求信息;
响应于确定所述验证结果为一致,使用当前第一节点执行所述请求信息。
可选的,所述响应于确定所述验证结果为不一致,对所述第一节点进行更换,包括:
基于所述若干第二节点间的交互关系,计算所述若干第二节点的通信性能以及交互频率;
基于所述验证结果,确定所述若干第二节点的一致性参数;
基于所述客户端发送的请求信息的交易额的大小,确定所述请求信息的交易价值;
基于所述通信性能、交互频率、一致性参数以及交易价值确定所述若干第二节点的信誉调节因子;
根据所述信誉调节因子对所述第一节点进行更换;
其中,所述交易价值,表示为:
其中,Valueij表示交易价值,Costn为交易额的大小。
可选的,所述基于所述若干第二节点间的交互关系计算所述若干第二节点的通信性能以及交互频率,表示为:
其中,Rateij表示节点i和节点j间的通信性能,StartTime表示节点i收到第一条有效消息时间RTi1,EndTime表示节点i收到的最后一条有效消息时间RTiM;
其中,Frequencyij表示节点i和节点j间的交互频率因子,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计。
可选的,所述基于所述验证结果,确定所述若干第二节点的一致性参数,表示为:
其中,Consistencyij表示节点i和节点j间的一致性参数,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计。
可选的,所述基于所述通信性能、交互频率、一致性参数以及交易价值确定所述若干第二节点的信誉调节因子,表示为:
βij=Rateij*Consistencyij*Valueij*Frequencyij
其中,βij表示节点i和节点j的信誉调节因子,Rateij表示节点i和节点j间的通信性能,Consistencyij表示节点i和节点j间的一致性参数,Valueij表示交易价值,Frequencyij表示节点i和节点j间的交互频率。
可选的,所述根据所述信誉调节因子对所述第一节点进行更换,包括:
基于所述信誉调节因子,计算若干第二节点的局部信誉值;
基于所述若干第二节点的局部信誉值,计算所述若干第二节点的全局信誉值;
将所述若干第二节点的全局信誉值中最大的全局信誉值所对应的第二节点确定为新的第一节点;
其中,所述局部信誉值,表示为:
RL ij=RL ij(1+βij)
其中,RL ij表示局部信誉值,βij表示信誉调节因子;
所述全局信誉值,表示为:
其中,RG j表示全局信誉值,RL kj表示局部信誉值,RG k表示节点k的全局信誉值。
作为本公开的第二个方面,本公开还提供了一种区块链共识机制的部署装置,包括:
请求信息接收模块,被配置为:接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号;
验证处理模块,被配置为:将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的;
请求信息执行模块,被配置为:基于所述验证结果执行所述请求信息。
作为本公开的第三个方面,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本公开所提供的上述区块链共识机制的部署方法。
作为本公开的第四个方面,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上任意一项所述的方法。
如上所述,本公开提供了一种区块链共识机制的部署方法、装置、电子设备及存储介质。在本公开中首先接收客户端发送的请求信息,然后将请求信息发送到第一节点,并通过第一节点对请求信息赋予序列号,之后再将请求信息以及序列号共同发送到若干第二节点,并通过若干第二节点对请求信息以及序列号的一致性进行验证,并得到验证结果,最终通过所的到的验证结果执行请求信息的内容。
附图说明
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本公开实施例所提供的一种区块链共识机制的部署方法。
图1B为本公开实施例所提供的一种执行请求信息的方法示意图。
图1C为本公开实施例所提供的一种更换第一节点的方法示意图。
图1D为本公开实施例所提供的一种确定新第一节点的方法示意图。
图2为本公开实施例所提供的一种区块链共识机制的部署装置结构示意图。
图3为本公开实施例所提供的一种区块链共识机制的部署方法的电子设备结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
现有技术中,使用实用拜占庭算法(PBFT)时,由于应用中大量欺诈行为的存在以及不可靠的服务质量,使得体验质量(QoE)无法得以较好的保证,最终体现为缺乏有效的信任机制来提高***整体的可用性。因此,有必要建立一种新的分布式信任机制。
为了解决上述问题,本公开提供了一种区块链共识机制的部署方法、装置、电子设备及存储介质。通过上述方法,本公开中首先接收客户端发送的请求信息,然后将请求信息发送到第一节点(主节点),并通过第一节点对请求信息赋予序列号,之后再将请求信息以及序列号共同发送到若干第二节点(副节点),并通过若干第二节点(副节点)对请求信息以及序列号的一致性进行验证,并得到验证结果,最终通过所的到的验证结果执行请求信息的内容。
在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
图1A为本公开实施例所提供的一种区块链共识机制的部署方法。
图1A所示的区块链共识机制的部署方法进一步包括以下步骤:
步骤S10:接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号。
在一些实施例中,***可以先接受经由客户端所发送来的请求信息(信息调取请求、数据处理请求等),并将请求信息发送至***内的第一节点处进行处理。可以理解的是,上述的第一节点通常为***内的主节点,且主节点数量通常也仅为一个。
在一些实施例中,对于初始***来讲,其最初的主节点通常是经由***随机进行选取的。具体来讲,***先对***网络中的每一个节点赋予其所对应的全局信誉值,并根据其所赋予的全局信誉值生成全局信誉列表。可以理解的是,最初***可以为***网络中的每一个节点赋予相同的全局信誉值,此时由于***网络中的每一个节点的全局信誉值是相同的,因此***可以在***网络中的若干节点中随机选取一个节点作为主节点,进而设定除主节点之外的其他节点为副节点既第二节点。
在一些实施例中,当***选取出第一节点(主节点)后,***可以先通过第一节点(主节点)对请求信息的合法性进行验证,然后再通过第一节点(主节点)对请求信息进行处理。具体来讲,第一节点(主节点)对请求信息的合法性的验证可以表现为对请求信息中的具体请求内容是否违反***设定的请求规则进行核实,若请求内容不违反***设定的请求规则(请求信息“合法”)时,第一节点(主节点)则对请求信息进行“合法”标记,然后继续执行下述操作,若请求内容违反***设定的请求规则(请求信息“违法”)时,第一节点(主节点)则对其进行“违法”标记,然后再继续执行下述的操作。
在一些实施例中,当第一节点(主节点)对请求信息的合法性进行验证后,其还可以对收到此请求信息的时间进行确定,并生成时间戳t,当第一节点(主节点)接收到***发来的多个请求信息时,其还可以根据每个请求信息的接收时间既时间戳t,对请求信息进行排序处理。当第一节点(主节点)确定了请求信息的时间戳t后,其可以对请求信息进行创建,具体可以表示为:其中,t是请求信息的时间戳;o是请求状态机执行的操作;σc是客户端c通过私钥对REQUEST消息进行的签名,***网络中的各节点可以通过客户端的公钥对消息进行验证,防止消息被篡改。
在一些实施例中,第一节点(主节点)对请求信息进行创建后,第一节点(主节点)还可以对请求信息赋予序列号n,并将赋予序列号后的请求信息进行摘要提取,并得到请求信息的摘要提取结果,进而将摘要的提取结果发送回***中,可以理解的是,此时的摘要提取结果中包含请求信息以及第一节点(主节点)所赋予的序列号等。
在一些实施例中,摘要的提取结果可以具体表示为: 其中,n表示请求信息的序列号,v表示发送消息的视图编号,m是客户端的请求消息,d是m的摘要。可以理解的是,第一节点(主节点)还可以将摘要的提取结果直接发送到若干第二节点(副节点)上,进而直接通过第二节点对摘要的提取结果进行验证处理。
步骤S20:将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的。
在一些实施例中,当***收到经由第一节点(主节点)返回的摘要的提取结果(包含请求信息以及序列号等)后,***可以将摘要的提取结果发送到若干第二节点(副节点)上,并通过若干第二节点(副节点)对摘要的提取结果进行验证处理。
在一些实施例中,若干第二节点(副节点)对前述的摘要的提取结果进行验证处理并得验证结果的过程可以包括第一、第二以及第三验证步骤。其中,第一验证步骤可以表示为,若干第二节点(副节点)先对摘要的提取结果中的序列号本身的一致性进行第一次验证处理。具体可以理解为,前述的经由***向若干第二节点(副节点)所发送的摘要的提取结果中的序列号可以表示为“001”,此时,在若干第二节点(副节点)接收到***发送来的摘要的提取结果后可以先对其内的序列号进行查看,并向***汇报查看的结果,若发现在若干第二节点(副节点)中存在接收到序列号非“001”的第二节点(副节点)时(“002”或者“003”等),对第一节点(主节点)进行第一次信誉记录,并将此作为第一验证结果。
在一些实施例中,摘要的提取结果是经由第一节点(主节点)进行处理的,所以当发现若干第二节点(副节点)接收到的序列号不一致时,则可以表明主节点在将摘要的处理结果向***反馈时可能出现了问题,因此需要对第一节点(主节点)进行一次记录。可以理解的是,***在发送请求信息至第一节点(主节点)、接受第一节点(主节点)返回的摘要的处理结果以及将摘要的处理结果发送至第二节点(副节点)的过程中,其均只具有传递的作用,所以当若干第二节点(副节点)对摘要的处理结果进行验证且发现错误时,均不可能是由于***的原因造成的。
在一些实施例中,前述的第二验证步骤可以表示为,若干第二节点(副节点)对***发送来的摘要的处理结果中的请求信息的合法性进行第二次验证处理。在上述的步骤S10中第一节点(主节点)已经对请求信息进行了第一次合法性验证,并得到两种情况(请求信息“合法”以及请求信息“违法”)。此时,当包含请求信息的摘要的处理结果发送至若干第二节点(副节点)时,若干第二节点(副节点)仍可以通过步骤S10中验证请求信息合法性的方法对请求信息的合法性进行第二次验证。
在一些实施例中,在第一节点(主节点)对请求信息的验证结果为“合法”时,若若干第二节点(副节点)对请求信息的验证结果也为“合法”时,则表示若干第二节点(副节点)认同第一节点(主节点)的判定结果,此时可以继续执行接下来的操作过程;若若干第二节点(副节点)中存在一个甚至多个第二节点(副节点)对请求信息的验证结果为“违法时”则表示若干第二节点(副节点)不认同第一节点(主节点)作出的判定,此时将对第一节点(主节点)进行第二次信誉记录,并将其作为第二次验证结果。
在一些实施例中,上述的经由若干第二节点(副节点)对请求信息的合法性进行验证的过程中,还可能包括当在第一节点(主节点)对请求信息的验证结果为“违法”的情况,此时若干第二节点(副节点)对请求信息合法性的验证仍可以如上述操作进行,若出现若干第二节点(副节点)中存在一个甚至多个第二节点(副节点)的验证结果与第一节点(主节点)的验证结果不同的情况时,仍然如上述般对第一节点(主节点)进行第二次信誉记录,并也将其作为第二次验证结果。
在一些实施例中,前述的第三验证步骤可以表示为,若干第二节点(副节点)对摘要的提取结果(包含请求信息以及序列号等)中的请求信息以及序列号的一致性进行第三次验证处理。具体来讲,若干第二节点(副节点)中的每一个节点,可以其将收到的请求信息以及序列号与其他节点收到的请求信息以及序列号进行对比,若发现不一致的情况时,则对第一节点(主节点)进行第三次此信誉记录,并将其作为第三次验证结果。
可以理解的是,若干第二节点(副节点)还可以通过读取原始请求信息以及原始请求信息所对应的序列号的,方法来判定其所接受到请求信息以及序列号的一致性,若发现其所接收到的请求信息以及序列号中的一个,与原始请求信息以及原始请求信息所对应的序列号中的一个存在不一致的情况时,则对第一节点(主节点)进行第三次此信誉记录,并将其作为第三次验证结果。其中,原始请求信息以及原始请求信息所对应的的序列号既是经由***所发送到若干第二节点(副节点)上进行验证处理的摘要的提取结果中所包含的请求信息以及序列号。
在一些实施例中,当若干第二节点(副节点)对前述的摘要的提取结果进行验证处理并得第一次验证结果、第二次验证结果以及第三次验证结果后可以将其作为判定标准进而执行请求信息。
步骤S30:基于所述验证结果执行所述请求信息。
在一些实施例中,当***通过上述的方法得到三次验证结果后,可以通过三次验证结果来执行请求信息。具体来讲,若三次验证结果中存在信誉标记时,则对第一节点(主节点)进行替换,进而通过新的第一节点(主节点)来执行请求信息的内容,若三次验证结果中不存在信誉标记时,则仍使用现在的第一节点(主节点)来执行请求信息的内容。
图1B为本公开实施例所提供的一种执行请求信息的方法示意图。
在一些实施例中,如图1B所示,是对步骤S30的进一步展开说明,具体包括以下步骤:
S301:响应于确定所述验证结果为不一致,对所述第一节点进行更换,并使更换后的第一节点执行所述请求信息。
在一些实施例中,如前述的当三次验证结果中存在至少一次的信誉标记时,则表示第一节点(主节点)是恶意节点,此时若继续使用此第一节点(主节点)可能会导致***在执行请求信息时无法准确执行,因此需要对第一节点(主节点)进行更换,并使用更换过的第一节点(主节点)来继续执行请求信息。
图1C为本公开实施例所提供的一种更换第一节点的方法示意图。
在一些实施例中,如图1C所示,是对步骤S301的进一步展开说明,具体包括以下步骤:
S3011:基于所述若干第二节点间的交互关系,计算所述若干第二节点的通信性能以及交互频率。
在一些实施例中,计算若干第二节点的通信性能以及交互频率可以表示为:
其中,Rateij表示节点i和节点j间的通信性能,StartTime表示节点i收到第一条有效消息时间RTi1,EndTime表示节点i收到的最后一条有效消息时间RTiM;
其中,Frequencyij表示节点i和节点j间的交互频率因子,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计。
在一些实施例中,
S3012:基于所述验证结果,确定所述若干第二节点的一致性参数。
在一些实施例中,确定若干第二节点(副节点)的一致性参数可以表示为:
其中,Consistencyij表示节点i和节点j间的一致性参数,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计。
S3013:基于所述客户端发送的请求信息的交易额的大小,确定所述请求信息的交易价值。
在一些实施例中,确定请求信息的交易价值的过程可以表示为:
其中,Valueij表示交易价值,Costn为交易额的大小。
S3014:基于所述通信性能、交互频率、一致性参数以及交易价值确定所述若干第二节点的信誉调节因子。
在一些实施例中,确定若干第二节点的信誉调节因子可以表示为:
βij=Rateij*Consistencyij*Valueij*Frequencyij
其中,βij表示节点i和节点j的信誉调节因子,Rateij表示节点i和节点j间的通信性能,Consistencyij表示节点i和节点j间的一致性参数,Valueij表示交易价值,Frequencyij表示节点i和节点j间的交互频率。
S3015:根据所述信誉调节因子对所述第一节点进行更换。
在一些实施例中,当通过上述的方法得到若干第二节点(副节点)的信誉调节因子后,可以通过信誉调节因子进而确定若干第二节点(副节点)的局部信誉值,然后再通过若干第二节点(副节点)的局部信誉值确定其的全局信誉值,进而通过对全局信誉值的大小比对,确定出新的第一节点(主节点)。
图1D为本公开实施例所提供的一种确定新第一节点的方法示意图。
在一些实施例中,如图1D所示,是对步骤S3015的进一步展开说明,具体包括以下步骤:
S30151:基于所述信誉调节因子,计算若干第二节点的局部信誉值。
在一些实施例中,若干第二节点的局部信誉值可以表示为:
RL ij=RL ij(1+βij)
其中,RL ij表示局部信誉值,βij表示信誉调节因子;
S30152:基于所述若干第二节点的局部信誉值,计算所述若干第二节点的全局信誉值。
在一些实施例中,全局信誉值可以表示为:
其中,RG j表示全局信誉值,RL kj表示局部信誉值,RG k表示节点k的全局信誉值。
S30153:将所述若干第二节点的全局信誉值中最大的全局信誉值所对应的第二节点确定为新的第一节点。
在一些实施例中,当得到若干第二节点(副节点)的全局信誉值后,可以对若干第二节点(副节点)的全局信誉值进行从大到小的排序处理,并生成全局信誉值列表,然后再全局信誉值列表中选择出全局信誉值最大的第二节点(副节点),并将其作为新的第一节点(主节点)。
S302:响应于确定所述验证结果为一致,使用当前第一节点执行所述请求信息。
在一些实施例中,如前述的当三次验证结果中不存在信誉标记时,则表示第一节点(主节点)是可靠地节点,此时继续使用此节点来执行请求信息时几乎不会出现执行错误的情况,因此这种情况下可以继续使用当前的第一节点(主节点)来执行请求信息。
综上所述,本公开通过本公开中首先接收客户端发送的请求信息,然后将请求信息发送到第一节点(主节点),并通过第一节点对请求信息赋予序列号,之后再将请求信息以及序列号共同发送到若干第二节点(副节点),并通过若干第二节点(副节点)对请求信息以及序列号的一致性进行验证,并得到验证结果。此时若发现验证结果中存在信誉标记时则需要对第一节点(主节点)进行更换,并使用更换后的第一节点()主节点来执行请求信息,若验证结果中不存在信誉标记则继续使用当前的第一节点(主节点)来执行请求信息。
基于同一技术构思,与上述任意实施例方法相对应的,本公开还提供了一种区块链共识机制的部署装置,通过本公开所提供的区块链共识机制的部署装置可以实现以上任意一实施例所述的区块链共识机制的部署方法。
图2为本公开实施例所提供的一种区块链共识机制的部署装置结构示意图。
图2所示的区块链共识机制的部署装置进一步包括以下模块:
请求信息接收模块10、验证处理模块20以及请求信息执行模块30;
其中,请求信息接收模块10,被配置为:接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号。
所述验证处理模块20,被配置为:将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的。
所述请求信息执行模块30,被配置为:基于所述验证结果执行所述请求信息。具体执行以下步骤:
响应于确定所述验证结果为不一致,对所述第一节点进行更换,并使更换后的第一节点执行所述请求信息;
响应于确定所述验证结果为一致,使用当前第一节点执行所述请求信息;
其中,响应于确定所述验证结果为不一致,对所述第一节点进行更换,具体包括:
基于所述若干第二节点间的交互关系,计算所述若干第二节点的通信性能以及交互频率,具体表示为:
其中,Rateij表示节点i和节点j间的通信性能,StartTime表示节点i收到第一条有效消息时间RTi1,EndTime表示节点i收到的最后一条有效消息时间RTiM;
其中,Frequencyij表示节点i和节点j间的交互频率因子,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计;
基于所述验证结果,确定所述若干第二节点的一致性参数,表示为:
其中,Consistencyij表示节点i和节点j间的一致性参数,<Cij,Iij>表示在节点i视角,节点i和节点j对某事件投票值一致和不一致的次数统计;
基于所述客户端发送的请求信息的交易额的大小,确定所述请求信息的交易价值,表示为:
其中,Valueij表示交易价值,Costn为交易额的大小;
基于所述通信性能、交互频率、一致性参数以及交易价值确定所述若干第二节点的信誉调节因子,表示为:
βij=Rateij*Consistencyij*Valueij*Frequencyij
其中,βij表示节点i和节点j的信誉调节因子,Rateij表示节点i和节点j间的通信性能,Consistencyij表示节点i和节点j间的一致性参数,Valueij表示交易价值,Frequencyij表示节点i和节点j间的交互频率;
根据所述信誉调节因子对所述第一节点进行更换,包括:
基于所述信誉调节因子,计算若干第二节点的局部信誉值;
基于所述若干第二节点的局部信誉值,计算所述若干第二节点的全局信誉值;
将所述若干第二节点的全局信誉值中最大的全局信誉值所对应的第二节点确定为新的第一节点;
其中,所述局部信誉值,表示为:
RL ij=RL ij(1+βij)
其中,RL ij表示局部信誉值,βij表示信誉调节因子;
所述全局信誉值,表示为:
其中,RG j表示全局信誉值,RL kj表示局部信誉值,RG k表示节点k的全局信誉值。
基于同一技术构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上任意一实施例所述的区块链共识机制的部署方法。
图3示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(RandomAccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作***和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的区块链共识机制的部署方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一技术构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的区块链共识机制的部署方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的区块链共识机制的部署方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种区块链共识机制的部署方法,其特征在于,包括:
接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号;
将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的;
基于所述验证结果执行所述请求信息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述验证结果执行所述请求信息,包括:
响应于确定所述验证结果为不一致,对所述第一节点进行更换,并使更换后的第一节点执行所述请求信息;
响应于确定所述验证结果为一致,使用当前第一节点执行所述请求信息。
6.根据权利要求5所述的方法,其特征在于,所述基于所述通信性能、交互频率、一致性参数以及交易价值确定所述若干第二节点的信誉调节因子,表示为:
βij=Rateij*Consistencyij*Valueij*Frequencyij
其中,βij表示节点i和节点j的信誉调节因子,Rateij表示节点i和节点j间的通信性能,Consistencyij表示节点i和节点j间的一致性参数,Valueij表示交易价值,Frequencyij表示节点i和节点j间的交互频率。
8.一种区块链共识机制的部署装置,其特征在于,包括:
请求信息接收模块,被配置为:接收客户端发送的请求信息,并将所述请求信息发送至第一节点,以接收所述第一节点返回的所述请求信息对应的序列号;
验证处理模块,被配置为:将所述序列号以及所述请求信息发送至若干第二节点,并接收所述若干第二节点返回的验证结果;其中,所述验证结果是所述若干第二节点对所述序列号以及所述请求信息的一致性进行验证处理后得到的;
请求信息执行模块,被配置为:基于所述验证结果执行所述请求信息。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任意一项所述的方法。
10.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行权利要求1至7任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734690.4A CN116132140A (zh) | 2022-12-30 | 2022-12-30 | 区块链共识机制的部署方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734690.4A CN116132140A (zh) | 2022-12-30 | 2022-12-30 | 区块链共识机制的部署方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116132140A true CN116132140A (zh) | 2023-05-16 |
Family
ID=86302252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211734690.4A Pending CN116132140A (zh) | 2022-12-30 | 2022-12-30 | 区块链共识机制的部署方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116132140A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170140394A1 (en) * | 2015-11-18 | 2017-05-18 | International Business Machines Corporation | Consensus-based reputation tracking in online marketplaces |
CN109995536A (zh) * | 2019-03-15 | 2019-07-09 | 广州杰赛科技股份有限公司 | 一种区块链共识方法、装置及可读存储介质 |
KR20200083145A (ko) * | 2018-12-28 | 2020-07-08 | 연세대학교 산학협력단 | 블록체인 네트워크의 합의 방해요인 제거를 위한 장애 허용 합의 방법 |
CN112053043A (zh) * | 2020-08-21 | 2020-12-08 | 北京邮电大学 | 一种基于区块链的群智感知方法及*** |
CN113326516A (zh) * | 2021-04-22 | 2021-08-31 | 远光软件股份有限公司 | 区块链共识方法、区块链***及计算机设备 |
CN114519197A (zh) * | 2022-01-21 | 2022-05-20 | 广东海洋大学 | 一种基于区块链和云服务的数据存储架构和方法 |
CN115329297A (zh) * | 2022-08-11 | 2022-11-11 | 中国工商银行股份有限公司 | 基于区块链的应用互信方法、装置、设备及存储介质 |
-
2022
- 2022-12-30 CN CN202211734690.4A patent/CN116132140A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170140394A1 (en) * | 2015-11-18 | 2017-05-18 | International Business Machines Corporation | Consensus-based reputation tracking in online marketplaces |
KR20200083145A (ko) * | 2018-12-28 | 2020-07-08 | 연세대학교 산학협력단 | 블록체인 네트워크의 합의 방해요인 제거를 위한 장애 허용 합의 방법 |
CN109995536A (zh) * | 2019-03-15 | 2019-07-09 | 广州杰赛科技股份有限公司 | 一种区块链共识方法、装置及可读存储介质 |
CN112053043A (zh) * | 2020-08-21 | 2020-12-08 | 北京邮电大学 | 一种基于区块链的群智感知方法及*** |
CN113326516A (zh) * | 2021-04-22 | 2021-08-31 | 远光软件股份有限公司 | 区块链共识方法、区块链***及计算机设备 |
CN114519197A (zh) * | 2022-01-21 | 2022-05-20 | 广东海洋大学 | 一种基于区块链和云服务的数据存储架构和方法 |
CN115329297A (zh) * | 2022-08-11 | 2022-11-11 | 中国工商银行股份有限公司 | 基于区块链的应用互信方法、装置、设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
GANG WANG: "RepShard: Reputation-based Sharding Scheme Achieves Linearly Scaling Efficiency and Security Simultaneously", 2020 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN (BLOCKCHAIN), 11 December 2020 (2020-12-11) * |
乔蕊;曹琰;王清贤;: "基于联盟链的物联网动态数据溯源机制", 软件学报, no. 06, 27 March 2019 (2019-03-27) * |
王醒;翁健;张悦;李明;: "基于信誉值创建数字资产的区块链***", 信息网络安全, no. 05, 10 May 2018 (2018-05-10) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109831487B (zh) | 分片文件验证方法及终端设备 | |
CN107040585B (zh) | 一种业务校验的方法及装置 | |
US11296865B1 (en) | Cryptographic algorithm status transition | |
JP5269081B2 (ja) | 拡張可能な分散アプリケーションの作成とデプロイメント | |
US7934100B2 (en) | Information processing system, information processing apparatus, information processing method, and storage medium | |
CN110489946B (zh) | 基于区块链的版权认证方法、装置、设备和存储介质 | |
CN110245518B (zh) | 一种数据存储方法、装置及设备 | |
US20200396081A1 (en) | Tree structure for byzantine fault tolerance | |
CN110061843B (zh) | 一种链式账本中的块高创建方法、装置及设备 | |
US12001822B2 (en) | Multi-signature validation of deployment artifacts | |
CN110084600B (zh) | 决议事务请求的处理、验证方法、装置、设备及介质 | |
US20200244444A1 (en) | Blockchain-based advertisement monitoring method and apparatus, and electronic device | |
WO2020199708A1 (zh) | 一种针对授时证书生成请求的监控方法、装置及设备 | |
US20200394162A1 (en) | Operation management method for distributed ledger system, operation management system for distributed ledger system, and operation management program for distributed ledger system | |
CN112287034A (zh) | 一种数据同步方法、设备以及计算机可读存储介质 | |
CN109145651B (zh) | 一种数据处理方法及装置 | |
CN113888164A (zh) | 区块链交易池实现方法、装置、计算机设备和存储介质 | |
CN111367923A (zh) | 数据处理方法、装置、节点设备及存储介质 | |
CN110347678B (zh) | 一种金融数据的存储方法、***、装置及设备 | |
CN110009342B (zh) | 数据发送、接收方法、装置及电子设备 | |
US20220045866A1 (en) | Method and system for authentication seal deployment in networked immutable transactions | |
US20210144451A1 (en) | Control method, content management system, recording medium, and data structure | |
CN112131041A (zh) | 用于管理数据放置的方法、设备和计算机程序产品 | |
CN112215593A (zh) | 一种支付方法、装置、服务器及存储介质 | |
CN116132140A (zh) | 区块链共识机制的部署方法、装置、电子设备及存储介质 |
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 |