LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 哥伦布CAT技术分享课----共识算法篇

哥伦布CAT技术分享课----共识算法篇

2020-08-13 哥伦布CAT 来源:区块链网络

哥伦布CAT凯撒公链V2.0目前的TPS是大约3500笔/秒,性能方面处在行业前列。现阶段正在开发的凯撒公链V3.0希望能在V2.0的基础上,性能能继续往上提升,今天就由哥伦布CAT技术部门,和大家一起就区块链技术层面的相关知识以及目前正在推进相关研发工作进行分享。

1、当前存在的问题

随着比特币知名度的提高,越来越多的交易涌向比特币系统,其性能问题就凸显了出来:交易确认时间久,吞吐量低。比特币每10分钟出一个区块,区块最大为1MB,换算下来就是每秒钟可以处理的交易数是7笔,这与当前很多的金融系统相比实在太少。

吞吐量低大大限制了区块链的应用场景。为此不少公链项目都以改进性能为首要目标,或者增加区块大小,或者提高出块频率。那什么是限制区块链性能提高主要原因?

吞吐量过低的根因,其实在于共识过程。在一个完全去中心化的环境里,要得到多数节点认可,往往需要多次交互,而每次交互又均伴随着网络延迟,在此两者的共同影响下,区块链系统的吞吐量注定难以提高。总有人想出新的方法,下面介绍一种新的共识算法。

2、异步共识算法

在同步共识协议里,主流的做法是每出一个块,所有节点之间要进行同步,共识通过以后再继续出下一个块。另有一类做法是出块以后无须立即达成共识,每个节点在遵循某种规则的前提下,尽最大的能力出块。如果规则制定得足够巧妙,各自为战的节点在经过一段时间之后,仍然可以达成一致。

现有比较成熟的异步共识算法有:Graph算法、ITOA、HashGraph等。下面介绍一下HashGraph算法。

3、HashGraph

HashGraph本质上是一种数据结构和共识算法,旨在解决异步拜占庭容错问题。根据FLP定理,在网络可靠且存在节点失效的异步分布式系统中,不存在一个可以解决一致性问题的确定性算法,可见HashGraph也并非一个完美的异步拜占庭容错算法。HashGraph对确定性做了些许放宽,即在特定条件下,共识算法可能无法终止(即区块链中无法给出交易排序结果),但这种事件发生的概率极低,随着更多信息的汇入,共识算法无法终止的概率无限趋近于0。HashGraph主要通过互相投票(Gossip about Gossip)以及虚拟投票(Virtual Voting)来实现共识过程,概述如下:

1)用事件记录交易,每个事件包括:交易、两个父节点的哈希值、时间戳、签名。

2)基于gossip协议,随机生长账本。通过round划分阶段,基于前后节点之间的连接关系确定每个阶段的famous witness,再由witness确定DAG中的事件的顺序。

其特点在于:1)公平:账本具有一致的时间戳,可以对每笔交易进行定序;2)安全:其所使用的异步拜占庭容错(Asynchronous Byzantine Fault Tolerance,ABFT)系统,有相当的安全理论证明,验证简单;3)速度快:可达到250000TPS的吞吐量。

HashGraph当前存在的问题主要包括:1)gossip算法在大规模公链环境下的应用可能会遇到问题;2)其中的每个共识节点均需要保存全网数据,数据压缩的问题不易解决。

Graph和HashGraph算法都是比较成熟算法,目前哥伦布凯撒公链V3.0研发中,也采用该系列算法的一些核心思想,望后期上线的“哥伦布凯撒公链V3.0”TPS有个质的飞跃。

—-

编译者/作者:哥伦布CAT

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...