宇宙链 宇宙链
Ctrl+D收藏宇宙链

区块链入门 | 如何用共识算法构建区块链共识网络?

作者:

时间:1900/1/1 0:00:00

作者:赵超越

Hi,相信关注区块链的你,一定对经常听到的“共识”一词充满了好奇,那作为区块链灵魂的共识算法到底是什么呢?

今日在线解决三大疑问:共识算法到底是什么?有哪些?未来发展如何?

共识算法到底是什么?

在了解这个概念之前,或许我们得先回顾一下,什么是区块链?我们上期给出的一句话总结是:“区块链是由分布式数据存储、点对点传输、共识机制、加密算法等技术构成的分布式数据库技术,可为存证溯源、业务协作、数字资产、数据交换等高价值场景提供多方互信的解决方案。”

其中,共识机制就是我们今天要聊到的——共识算法。

共识算法是用于保证分布式系统一致性的机制。这里的一致性可以是交易顺序的一致性、账本一致性、节点状态的一致性等。

在上期家庭财政举的例子中,夫妻各自管理自己的账本时,新增的每一笔收入都需要经过两人的共同查验,确认无误后才会被分别记入二人的账本中,并确认双方账本是否一致。其中“共同查验”、“确认双方账本一致”的过程就是共识。

深圳市南山区启动采用区块链技术的跨部门大数据办案平台:近日,深圳市政法跨部门大数据办案平台推广应用现场会在南山区召开,会议介绍了南山区政法跨部门大数据办案平台,并部署平台推广工作。跨部门大数据办案平台实现了案件全流程网上办理,各个工作环节的信息公开共享,增强了司法办案透明度。平台在全国率先采用区块链技术,构建政法“联盟链”,对电子卷宗流转过程中节点信息保全,实现多点存储、互为镜像,确保电子卷宗可互信、可溯源、防丢失、防篡改,免除一线办案人员的后顾之忧,极大促进了司法办案的公平公正。(深圳晚报)[2020/9/9]

共识算法有哪些?

想要达成共识,我们就必须得解决一个问题:听谁的?

比比谁更强,谁更快:POW工作量证明、Raft算法。

动态 | 日合资企业ARISE Analytics将使用亚马逊提供的区块链平台用于数据管理:由KDDI与埃森哲(Accenture)组成的合资企业ARISE Analytics在11月26日宣布,它将与正在研究智慧城市的会津若松市福岛县的城市综合城市系统(city OS)合作,进行一项医疗保健示范实验,由Amazon Web Services Japan提供的区块链平台Amazon Quantum Ledger Database用于数据管理。[2019/11/27]

以「王者荣耀」为例,五个路人刚组好战队,需要选出一名指挥官,决定如何在比赛时交流信息,保证行动的一致性,从而一起夺得战队赛的好名次。

有人提出在王者快跑一决高下,这个趣味赛要求玩家随机选择英雄,利用英雄技能,谁先抵达终点谁就胜出,担任指挥官。这意味着使用同样的英雄,谁的技能操作更熟练,位移更准确且迅速,谁的能力更强,经验更足,也自然更能胜任指挥官。

这种方法的原理就是比特币使用的工作量证明机制,区块链中哪个节点的算力更强,就更有可能发现下一个区块的有效值。然而正如这个例子中,玩家需要在常规比赛之外再另比一场王者快跑的比赛,而且对于不擅长玩位移英雄的玩家来说不公平。对应到区块链中,节点在处理链上信息的同时,还要时时与其他节点比赛算力,POW算法最终变成算力的角逐,浪费大量算力,也使得POW失去了公平的初衷。

声音 | Joseph Lubin :区块链开发可能比互联网要花更长的时间:据cointelegraph消息,以太坊联合创始人Joseph Lubin 在接受采访时表示,区块链技术正在以类似于网络的方式发展,以其指数级的增长为例,迄今已有数百个对人类实用的项目。但是,区块链的开发可能比互联网要花更长的时间,因为它要复杂得多。[2018/11/11]

为了节省算力消耗,也有人说不如去五军对决,每人占据一个buff点,等待随机刷新的重生之石。谁先等到刷新的重生之石,谁就成为候选人,如果同时等到,则同时当选候选人,就不用增加过多的比赛。候选人具备竞选指挥官的资格,指挥官由大家投票选出,每人手中仅有宝贵的一票,而第一个收到一半以上票数的候选人即可当选指挥官。这种方法的原理就是Raft算法,像所有人都需等待重生之石随机刷新那样,Raft算法中的普通节点需要等待随机的时间变成候选节点,没投过票的普通节点可以把票投给候选节点,收到一半以上票数的候选节点即可成为领导节点。

拒绝作恶:RBFT算法、BFT类拜占庭容错算法

但即使通过上面两种方法选出了指挥官,也并不意味着战队就能统一行动,夺得最终的胜利。可能有队员其实是个“演员”,实际上却并不听从指挥,反而假传指挥官命令给其他队友,带着他们单独行动。这种情况下,保证战队比赛时能够交流真实的有效信息,就尤为重要。在区块链中,这被称作存在作恶节点的情况,此时系统应该如何达成共识呢?

声音 | 广东民商法学会张劲学:不良资产管理应引入区块链技术:根据广州日报消息,广东民商法学会不良资产分会常务副会长张劲学近日表示,标准化的不良资产管理应引入区块链技术,其不可篡改性可以解决事实层面的问题。“特殊资产处理涉及大量的司法文件,通过区块链技术将这些信息上传到链上,每个文书只上传一次,其余任何一次审查与流转都实现这一事实层面的确认,就可以节约大量成本。对于专业机构而言,节约的成本就可以兑换为利润。区块链技术应用到不良资产市场中可以形成极大的机会空间。”[2018/8/28]

既然如此,干脆取消竞选指挥官的环节,每个人都有担任指挥官的机会,在实战中检验大家的指挥能力。在每局比赛中,系统会不断发出提示,比如“摧毁敌方防御塔”。指挥官筛选出这些消息中的有用消息,再向其他队友转达进攻指令。队友们在收到消息后自行判断这个命令是否合理,如果觉得合理,就回复“收到”,一旦收到超过2/3的其他队友回复的“收到”,就明白大多数队友都会配合,便放心发起进攻。在一局比赛结束后,如果超过2/3的队友认为这局的指挥官不行,就更换指挥官的人选。

这便是趣链高鲁棒性拜占庭容错算法的原理,客户端给主节点发送请求,主节点收到请求后发送消息给所有从节点,从节点给其他所有节点发送消息确认收到,收到超过2/3确认消息的从节点执行命令,并同时通知其他所有节点,最终将执行结果反馈给客户端,如果主节点出现故障则进行视图切换,更换主节点。

工农中建四大银行河北雄安分行获准开业,将运用区块链技术:3月2日,在中国银监会、河北省委省政府的支持和指导下,河北银监局批准中国工商银行、中国农业银行、中国银行、中国建设银行四家大型银行的河北雄安分行开业。中国建设银行河北省分行副行长兼河北雄安分行筹备组组长任鹏表示,未来,建行将在新区设立大数据智慧城市创新中心,运用区块链、人工智能、信息安全、物联网、大数据和云计算等科技手段为新区城市规划、建设、治理、服务提供全方位的智能化智力服务,加快推进网点机器人、人脸识别、虹膜识别等智慧银行新技术应用。[2018/3/2]

除此之外,RBFT算法在基于普通的拜占庭容错算法的基础上做了诸多改进,比如利用Recovery机制提升了系统的可靠性、拓展性,当队员因网络卡顿等原因重新游戏链接时,队员能够自动回顾重连过程中错过的战局信息与小队指令,让队员能够跟上游戏进度。

RBFT算法-王者荣耀版示意图

RBFT算法示意图

更优化的传递共识:NoxBFT算法、HotStuff算法

但又有人提出,当小队的人数变多时,BFT类的算法的要求的所有队友互相交流就会有些麻烦,所有人最好仅与指挥官交流。

为了降低交流的成本,且确保指挥官的指令得到了大部分人的认可,每个人都会在回复指挥官的消息中附上自己的头像,而指挥官在给所有人发送最终指令时,会附上这些头像的集合,来证明指令经过了大家的认可,否则队员可以无视指令。除此之外,还把更换指挥官的步骤直接挪到比赛中,以免指挥官在比赛中临时断线或者状态不佳总发送错误指令。

这就是HotStuff算法的原理,它将BFT的网状通信网络拓扑变成了星形通信网络拓扑,节点不再通过p2p网络将消息广播给其它节点,而是将消息发送给主节点,由主节点处理后发送给其它节点。得益于星型通信网络拓扑,系统的通信复杂度得到了大大降低。它通过将视图切换流程和正常流程进行合并,也降低了视图切换的复杂度。

BasicHotStuff的流程

在借鉴HotStuff算法的理念后,自研NoxBFT算法,在大规模组网环境下,能够有效降低区块链网络传输的复杂度,提升系统的共识效率与可扩展性。

所以,我们支持哪些共识算法?

我们的共识模块采用可拔插的模块化设计,用户可针对不同的业务场景需求按需选择不同的共识算法。目前支持RBFT、NoxBFT、Raft共识算法,这三类算法分别有其适合的场景。

RBFT:具有高性能高鲁棒性,设计了动态数据自动恢复机制与动态共识节点增删机制,大大增强了共识模块的可用性,提升了系统的整体交易吞吐能力和系统稳定性,可达到万级TPS以及毫米级延迟。适用于一般数量级的节点组成的网络环境。

NoxBFT:借鉴Hotstuff算法后自研,通过星型网络拓扑结构将全网网络复杂度由O(n2)降低至O(n),减少了一个量级,并进一步优化算法的活性、可靠性以及数字签名性能,有效解决大规模节点组网场景下共识效率低下、可扩展性不强的问题,现已支持以千为数量级的大规模节点扩展。

Raft:区块链平台支持Raft共识算法保证账本一致性,在联盟各方足够信任的前提下,实现高效共识。该算法仅限于强信任联盟链场景中使用。

共识算法未来发展方向

区块链共识算法从一开始的算力密集型算法POW、POS开始,后来逐渐演变出减少耗能的选举型共识方式BFT等,整体性能上有4-5个数量级的提升。但随着节点数量增多到几百个甚至更大的共识节点规模,需要交换的信息增多,系统负载及网络通信量增大,性能会有所下降,可扩展性也较弱。如何突破共识性能、带宽瓶颈,实现大规模节点高效共识、增强可扩展性是当前共识研究的重要发展方向。

目前,共识算法的研究尝试结合更多的技术进行优化,比如引入VRF保证主节点选取随机性和公平性,应用DAG数据结构提升系统吞吐量、结合密码学算法优化共识效率等等,整体趋势上是向混合型共识算法演变。

标签:区块链BFTAFTRBF区块链存证证件具有更高的信任等级BBFTGraf

比特币行情热门资讯
行情分析:局势目前处于震荡,后续还有下行可能

行情回顾 比特币早间向上试探止步于8955位置后,价格开始逐渐向下回落,接连打破重重支撑,最后终于午后一点左右8521迎来反弹,走出了一波上行,但受阻于8700区域。截止到目前17点15分价格在8654位置附近.

1900/1/1 0:00:00
DC/EP应用场景探讨:为什么说它是实现万物互联的基础设施?

文:高彩霞、李铭 来源:清华大学互联网产业研究院编者注:原标题为《DC/EP应用场景探讨》摘要:近日,有关我国央行数字货币的消息密集发布,引发社会热议。本文对DC/EP应用场景进行了具体探讨.

1900/1/1 0:00:00
区块链技术在物流中的应用:提高效率、建立新商业模型

编者注:原标题为《区块链技术在物流中的应用》。几个世纪以来,企业乃至整个行业都需要多方的信任。然而,随着区块链技术的出现,这种信任将被打破并转变。区块链可被定义为一种分布式账本技术,它以一种安全、永久的方式记录各方之间的交易.

1900/1/1 0:00:00
区块链纳入新基建,腾讯未来如何助力突破行业发展瓶颈?

作者:Joyce 来源: 区块链前哨 马化腾在腾讯最新出版的《产业区块链》一书中的序言部分写道:“过去一年,我们看到,除了更多的人上网,越来越多的企业开始“上云”,还有一些业务与产品开始尝试“上链”.

1900/1/1 0:00:00
以太坊2.0 POS挖矿教程:手把手教你在Topaz测试网进行Staking

引言 由以太坊2.0客户端构建团队之一的PrysmaticLabs发布的以太坊2.0的第一个主网配置的测试网Topaz终于在4.15正式启动了。该测试网针对的是以太坊2.0第0阶段的测试,即实现信标链和质押.

1900/1/1 0:00:00
粤查获首个虚拟货币OTC团伙 伪造火币网站

吴说区块链获悉,本周广东公布了一起涉嫌利用虚拟货币OTC交易进行的犯罪事实。分子先利用伪造的火币网站进行,然后再通过某团伙进行OTC,将获得款项转移到境外账户.

1900/1/1 0:00:00