CN109886691A - 一种区块链系统共识机制的实现方法 - Google Patents
一种区块链系统共识机制的实现方法 Download PDFInfo
- Publication number
- CN109886691A CN109886691A CN201910173451.8A CN201910173451A CN109886691A CN 109886691 A CN109886691 A CN 109886691A CN 201910173451 A CN201910173451 A CN 201910173451A CN 109886691 A CN109886691 A CN 109886691A
- Authority
- CN
- China
- Prior art keywords
- node
- block catenary
- catenary system
- votes
- address
- 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.)
- Withdrawn
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种区块链系统共识机制的实现方法,能够将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,从而大大降低了常掉线的节点成为区块生产节点的可能性,保证区块链系统高效运转。
Description
技术领域
本发明涉及信息处理技术领域,更具体地说,它涉及一种区块链系统共识机制的实现方法。
背景技术
区块链本质上是一种由交易驱动的确定性状态机,共识是商定确定性交易顺序和过滤无效交易的过程,DPOS(Delegated Proof of Stake,委任权益证明)引人注目的安全性来自于其选择区块生产者和验证节点质量的算法。现有DPOS共识机制下的区块链系统对于区块生产节点的选取是通过投票实现的,然而由于投票者无法时刻关注各节点的生产区块情况,从而导致没有及时投票,而默认按照前一次投票结果进行投票,或者出现给常常掉线的节点进行投票的情况。
发明内容
本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种区块链系统共识机制的实现方法,能够将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,从而大大降低了常掉线的节点成为区块生产节点的可能性,保证区块链系统高效运转。
为达到上述目的,本发明提出了一种区块链系统共识机制的实现方法,包括以下步骤:在区块链系统初始化时,创建系统节点权重表,其中,所述系统节点权重表包括节点ip地址项和对应的节点权重值;当所述区块链系统中的当前生产节点生产区块时,根据所述系统节点权重表对每个节点的ip地址进行问询以判断所述区块链系统中是否存在掉线节点;如果存在掉线节点,则将所述掉线节点的节点权重值减1,并更新所述系统节点权重表;当基于dpos共识机制产生生产节点时,获取每个节点的投票数,并通过调用所述系统节点权重表以获取每个节点的节点权重值,以及根据每个节点的投票数和每个节点的节点权重值选取生产节点。
根据本发明实施例的区块链系统共识机制的实现方法,首先在区块链系统初始化时,创建系统节点权重表,其中,系统节点权重表包括节点ip地址项和对应的节点权重值;接着当区块链系统中的当前生产节点生产区块时,根据系统节点权重表对每个节点的ip地址进行问询以判断区块链系统中是否存在掉线节点,如果存在掉线节点,则将掉线节点的节点权重值减1,并更新系统节点权重表;然后当基于dpos共识机制产生生产节点时,获取每个节点的投票数,并通过调用系统节点权重表以获取每个节点的节点权重值,以及根据每个节点的投票数和每个节点的节点权重值选取生产节点,从而在确定生产节点时将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,大大降低了常常掉线的节点成为区块生产节点的可能性,保证区块链系统的高效运转。
另外,根据本发明上述实施例提出的区块链系统共识机制的实现方法还可以具有如下附加的技术特征:可选地,当所述区块链系统中任意一个节点接收到新节点的连入请求时,该节点对所述新节点的ip地址进行广播,以便所述区块链系统中的生产节点接收到广播后将所述新节点的ip地址在所述系统节点权重表内检索以判断所述系统节点权重表中是否存在所述新节点的ip地址项,其中,如果存在,则保持所述新节点的ip地址项对应的节点权重值不变;如果未存在,则在所述系统节点权重表中创建所述新节点的ip地址项,并对所述新节点的ip地址项对应的节点权重值进行初始赋值。
可选地,对每个节点的ip地址进行问询时,向每个节点发送问询信息,并在预设时间后判断是否接收到应答信息,其中,如果接收到当前节点的应答信息,则判断当前节点在线;如果未接收到当前节点的应答信息,则判断当前节点掉线。
可选地,根据每个节点的投票数和每个节点的节点权重值选取生产节点,包括:将每个节点的投票数乘以对应的节点权重值以获得每个节点的加权得票数;根据每个节点的加权得票数进行从大到小排序,以选取加权得票数最高的前预设个节点为生产节点。
根据本发明实施例的区块链系统,通过上述的区块链系统共识机制的实现装置,能够在确定生产节点时将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,从而大大降低了常常掉线的节点成为区块生产节点的可能性,保证区块链系统的高效运转。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效。
根据本发明实施例的区块链系统,通过上述的区块链系统共识机制的实现装置,能够在确定生产节点时将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,从而大大降低了常常掉线的节点成为区块生产节点的可能性,保证区块链系统的高效运转。
本发明提出了一种区块链系统共识机制的实现方法,包括以下步骤:在区块链系统初始化时,创建系统节点权重表,其中,所述系统节点权重表包括节点ip地址项和对应的节点权重值;当所述区块链系统中的当前生产节点生产区块时,根据所述系统节点权重表对每个节点的ip地址进行问询以判断所述区块链系统中是否存在掉线节点;如果存在掉线节点,则将所述掉线节点的节点权重值减1,并更新所述系统节点权重表;当基于dpos共识机制产生生产节点时,获取每个节点的投票数,并通过调用所述系统节点权重表以获取每个节点的节点权重值,以及根据每个节点的投票数和每个节点的节点权重值选取生产节点。
根据本发明实施例的区块链系统共识机制的实现方法,首先在区块链系统初始化时,创建系统节点权重表,其中,系统节点权重表包括节点ip地址项和对应的节点权重值;接着当区块链系统中的当前生产节点生产区块时,根据系统节点权重表对每个节点的ip地址进行问询以判断区块链系统中是否存在掉线节点,如果存在掉线节点,则将掉线节点的节点权重值减1,并更新系统节点权重表;然后当基于dpos共识机制产生生产节点时,获取每个节点的投票数,并通过调用系统节点权重表以获取每个节点的节点权重值,以及根据每个节点的投票数和每个节点的节点权重值选取生产节点,从而在确定生产节点时将节点离线时间与节点投票数统计权重进行挂钩,使得经常掉线的节点即使获得高票数,其投票数统计权重也不会太高,大大降低了常常掉线的节点成为区块生产节点的可能性,保证区块链系统的高效运转。
另外,根据本发明上述实施例提出的区块链系统共识机制的实现方法还可以具有如下附加的技术特征:可选地,当所述区块链系统中任意一个节点接收到新节点的连入请求时,该节点对所述新节点的ip地址进行广播,以便所述区块链系统中的生产节点接收到广播后将所述新节点的ip地址在所述系统节点权重表内检索以判断所述系统节点权重表中是否存在所述新节点的ip地址项,其中,如果存在,则保持所述新节点的ip地址项对应的节点权重值不变;如果未存在,则在所述系统节点权重表中创建所述新节点的ip地址项,并对所述新节点的ip地址项对应的节点权重值进行初始赋值。
可选地,对每个节点的ip地址进行问询时,向每个节点发送问询信息,并在预设时间后判断是否接收到应答信息,其中,如果接收到当前节点的应答信息,则判断当前节点在线;如果未接收到当前节点的应答信息,则判断当前节点掉线。
可选地,根据每个节点的投票数和每个节点的节点权重值选取生产节点,包括:将每个节点的投票数乘以对应的节点权重值以获得每个节点的加权得票数;根据每个节点的加权得票数进行从大到小排序,以选取加权得票数最高的前预设个节点为生产节点。
以上所述实施例仅表达了本发明的优选实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形、改进及替代,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (3)
1.一种区块链系统共识机制的实现方法,其特征在于,包括以下步骤:
在区块链系统初始化时,创建系统节点权重表,其中,所述系统节点权重表包括节点ip地址项和对应的节点权重值;
当所述区块链系统中的当前生产节点生产区块时,根据所述系统节点权重表对每个节点的ip地址进行问询以判断所述区块链系统中是否存在掉线节点;
如果存在掉线节点,则将所述掉线节点的节点权重值减1,并更新所述系统节点权重表;
当基于dpos共识机制产生生产节点时,获取每个节点的投票数,并通过调用所述系统节点权重表以获取每个节点的节点权重值,以及根据每个节点的投票数和每个节点的节点权重值选取生产节点;当所述区块链系统中任意一个节点接收到新节点的连入请求时,该节点对所述新节点的ip地址进行广播,以便所述区块链系统中的生产节点接收到广播后将所述新节点的ip地址在所述系统节点权重表内检索以判断所述系统节点权重表中是否存在所述新节点的ip地址项,其中,
如果存在,则保持所述新节点的ip地址项对应的节点权重值不变;
如果未存在,则在所述系统节点权重表中创建所述新节点的ip地址项,并对所述新节点的ip地址项对应的节点权重值进行初始赋值。
2.如权利要求1所述的区块链系统共识机制的实现方法,其特征在于,对每个节点的ip地址进行问询时,向每个节点发送问询信息,并在预设时间后判断是否接收到应答信息,其中,
如果接收到当前节点的应答信息,则判断当前节点在线;
如果未接收到当前节点的应答信息,则判断当前节点掉线。
3.如权利要求1所述的区块链系统共识机制的实现方法,其特征在于,根据每个节点的投票数和每个节点的节点权重值选取生产节点,包括:
将每个节点的投票数乘以对应的节点权重值以获得每个节点的加权得票数;
根据每个节点的加权得票数进行从大到小排序,以选取加权得票数最高的前预设个节点为生产节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910173451.8A CN109886691A (zh) | 2019-03-07 | 2019-03-07 | 一种区块链系统共识机制的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910173451.8A CN109886691A (zh) | 2019-03-07 | 2019-03-07 | 一种区块链系统共识机制的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109886691A true CN109886691A (zh) | 2019-06-14 |
Family
ID=66931251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910173451.8A Withdrawn CN109886691A (zh) | 2019-03-07 | 2019-03-07 | 一种区块链系统共识机制的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109886691A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887763A (zh) * | 2019-11-29 | 2021-06-01 | 中国电信股份有限公司 | 信息控制方法、信息控制系统、信息控制装置及存储介质 |
CN113193992A (zh) * | 2021-04-16 | 2021-07-30 | 宁波图灵奇点智能科技有限公司 | 一种区块链平台、方法、装置、计算机设备及存储介质 |
-
2019
- 2019-03-07 CN CN201910173451.8A patent/CN109886691A/zh not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887763A (zh) * | 2019-11-29 | 2021-06-01 | 中国电信股份有限公司 | 信息控制方法、信息控制系统、信息控制装置及存储介质 |
CN112887763B (zh) * | 2019-11-29 | 2022-12-20 | 中国电信股份有限公司 | 信息控制方法、信息控制系统、信息控制装置及存储介质 |
CN113193992A (zh) * | 2021-04-16 | 2021-07-30 | 宁波图灵奇点智能科技有限公司 | 一种区块链平台、方法、装置、计算机设备及存储介质 |
CN113193992B (zh) * | 2021-04-16 | 2022-08-23 | 宁波图灵奇点智能科技有限公司 | 一种区块链平台、方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109886691A (zh) | 一种区块链系统共识机制的实现方法 | |
CN109347901A (zh) | 区块链系统的共识机制实现方法、介质、装置及系统 | |
CN108154367B (zh) | 一种区块链业务校验方法及装置 | |
CN106998397B (zh) | 多业务类型的语音播报方法及系统 | |
CN108093274A (zh) | 一种直播间排序方法、电子设备及可读存储介质 | |
CN104575510A (zh) | 降噪方法、降噪装置和终端 | |
CN105512974A (zh) | 一种商标信息管理系统及方法 | |
CN109745703B (zh) | 自适应加速方法、装置及存储介质 | |
CN112188295B (zh) | 一种视频推荐方法及装置 | |
CN113904912B (zh) | 一种实现云管理平台实现业务高可用的方法及装置 | |
CN107835247B (zh) | 一种信用认证、保障系统及方法 | |
CN105046562A (zh) | 风控系统及风控数据获取方法 | |
CN104575503A (zh) | 语音识别方法和装置 | |
CN108320757B (zh) | 配送信息提示方法、装置、智能音箱及存储介质 | |
CN114745135A (zh) | 一种基于V-raft共识算法进行能源交易的区块链系统 | |
CN111475777B (zh) | 一种区块链智能合约的升级方法 | |
Tuman et al. | The transformation of the Latin American automobile industry | |
CN113408953B (zh) | 一种线上稽查方法 | |
Norton | Information and competitive advantage: the rise of General Motors | |
Santella et al. | A comparison of the director networks of the main listed companies in France, Germany, Italy, the United Kingdom, and the United States | |
Rosa | Should Middle-Income Countries | |
CN113128795A (zh) | 一种知识产权项目价值评估方法 | |
CN114879527B (zh) | 基于智能分组和技能匹配的智能家电控制方法及装置 | |
US20070162544A1 (en) | Method of and a system for accepting user-created content on a computer network site | |
CN100499711C (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190614 |
|
WW01 | Invention patent application withdrawn after publication |