21

区块链突破不在技术?而是取决于…

 5 years ago
source link: https://www.chainhoo.com/blockchain/44726/?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

与最近币圈萎靡状态不同的是,越来越多区块链应用加速进入落地阶段。

而区块链应用落地,表面上看来,是区块链技术层面的突破,然则,真正加速区块链进展的其实是“共识机制”的设计。

为何会如此?

还要从“共识机制”的演进中找答案。

拜占庭将军问题 VS 两军问题

拜占庭将军问题本质上是一个共识问题,产生于1982年一位美国计算机科学家Leslie Lamport的头脑中。这也是“共识问题”在历史上第一次真正、严肃地被提出并加以审视。

拜占庭帝国在攻打一个强大的敌国时,派出10支军队,分散包抄,同时攻击。但问题来了,这个敌国的实力足以抵御5支拜占庭军队的同时袭击,也就是说,拜占庭的10支军队中,至少要保证有6支军队能同时接收到正确的指令,采取袭击行动。

这些分散在敌国四周的拜占庭军队,只能依靠“信差”传递信息,协商进攻意向与时间。困扰将军们的一个问题,他们不确定是否有叛徒,叛徒们可能擅自变更进攻意向与进攻时间。

因此,在达成共识的过程中,有些信息可能并不代表大多数人的意见,那么,如何在已知有叛徒的情形下,其余忠诚的将军们达成一致的协议,这就是著名的“拜占庭将军问题”。

白军驻扎在沟渠里,蓝军分散在沟渠两边,只有沟渠两边的蓝军同时合力进攻,才有可能击败白军。而蓝军无法远程沟通,只能派遣信差穿过沟渠通知对面的蓝军协商进攻时间。

uqMBfub.png!web

信差在传递信息的途中可能被白军杀死,或因军队距离不能在得到消息后及时回复,发送方也无法确认消息是否丢失,导致不可能达到一致性,那么是否存在一个使蓝军必胜的通信协议,这是两军问题,十分容易与拜占庭将军问题搞混淆。

需要注意的是,拜占庭将军问题和两军问题有着本质的差别,两军问题中,没有叛徒之说;而拜占庭将军问题中,也没有考虑两军问题,即,假定了一个大前提,信道是可靠的。

Lamport已证明,在分布式计算上,试图在 异步系统不可靠的通道 上达到一致性是不可能的。所以,在研究拜占庭将军问题时,假定信道是没有问题的,在此前提下再去研究一致性和容错性。

区块链的雏形正是来源于构建一个可以完美解决“拜占庭问题“的容错系统。共识算法机制几经迭代,也只为找寻最完美的解决方案。

PBFT算法

1999年,Miguel Castro和Barbara Liskov 提出了PBFT算法,用于解决拜占庭将军问题。

PBFT,实用拜占庭容错算法(Practical Byzantine Fault Tolerance)。该算法在保证活性和安全性的前提下提供了(n-1)/3的容错性,即,节点数需要达到(3n+1)个,才能容错n个节点。

优点:

依靠严格的数学证明,具备(n-1)/3的容错性

缺点:

1. 网络节点不能太多,一旦过多,很容易造成整个网络严重堵塞;

2. 当1/3及以上的节点停止记账后,系统将无法正常运行。

POW共识机制

Proof of Work,工作量证明。该理念最早由Cynthia Dwork和Moni Naor 于1993年提出。可以简单的理解为“按劳索筹”,付出多少工作量,就会获得多少报酬。比特币就是采用的POW共识机制,通过计算猜测一个数值,解决规定的Hash问题。

该机制主要会消耗计算机三类资源:消耗CPU资源(例如比特币)、消耗内存资源(以太坊为了防止与比特币采用相同的共识机制造成51%攻击,采用了一种需要占用大量内存资源的POW算法)、消耗网络资源。

优点:

1. 该机制本身比较复杂,大大提高了攻击者攻击的成本;

2. 能鼓励更多的人加入进来,使得节点数量快速扩大;

3. 按劳索筹的挖矿方式,实现了相对的公平。

缺点:

1. 需要计算机提供算力,大量耗费电力能源,有违环保理念;

2. 矿机芯片从CPU、GPU、FPGA到ASIC的迭代,算力越来越集中,逐渐朝着中心化发展;

3. 随着挖矿成本越来越高,当高于挖矿收益时,旷工积极性便会降低,网络节点会减少。

POS共识机制

Proof of Stake,权益证明/股权证明。由一个名为Quantum Mechanic的数字货币爱好者于2011年提出,吸取了POW太多耗费算力的教训,POS比的是谁手持的币越多,挖到一个块的概率越大。以太坊采用的便是POW和POS的组合。

优点:

1. 节能;

2. 对计算机硬件无过高要求,人人可挖矿;

3. 避免紧缩,POS机制的加密货币会按一定的年利率新增货币,可以有效避免因为各种原因用户丢失货币造成的紧缩。

缺点:

纯POS机制的加密货币,只能通过IPO方式发行,这会导致富者越富,大量代币集中在少数人手中,也会容易变得更加中心化;

DPOS共识机制

Delegated Proof-Of-Stake,代理股权证明。针对前两种机制中存在的不足之处,2013年8月,BM在启动比特股项目中采用了DPOS共识机制,我们熟知的EOS也采用的是DPOS共识机制。

类似于企业董事会制度,将持币者称为股东,由股东选出一定数量的代表,代表们轮流产生区块,收益平分,若有代表不老实,很容易被其它代表和股东发现,不老实的代表会被立即踢出,空缺由排在他后面的代表取代。

可以说,DPOS同时兼具了中心化和去中心化。

优点:

1. 只有选举出的少数代表节点进行挖矿,进一步降低了能耗;

2. 采用所有持币者投票选举代表的方式,更加去中心化;

3. 更高的效率,中心化与去中心化的结合,使得效率有了很大的提升。

缺点:

1. 投票需要耗费时间精力,且还有一定的技能门槛,使得投票的积极性是个问题,大多数持币者(>90%)从未参与投票;

2. 社区选举目前还未能及时有效的组织破坏节点的出现,存在安全隐患。

其它改进共识机制

我们可以看到,以上几种主流共识机制各有其缺点:PBFT的节点数问题、POW的能耗问题、POS/DPOS的中心化问题。

因此根据不同的区块链应用场景,在主流的共识机制上进行了各种改良与衍生。

NEO采用的dBFT共识算法(Delegated Byzantine Fault Toleranc),通过用户投票选出7个超级节点参与记账,普通节点可以看到共识过程,同步账本信息,但不参与记账。

以太坊的下一代POS共识机制:Casper(投注共识),属于POS,但又有不同,Casper的共识是按照块达成的,而不是如POS按照链达成的。

此外,Casper还设置有严格的惩罚机制,一旦同一个节点两次投注序号一样,或投注的序号无法让Casper合约处理,那么该节点将失去所有保证金。这样有效防止了恶意攻击网络行为。

POI,重要度证明共识机制(Proof of Importance),通过使用账户重要性评分来分配记账权的概率。

POP,(Proof of Participation) 账户参与度算法,一种将POI和DPOS相结合的算法机制。

总结

区块链本质是一种分布式存储数据库,点对点去中心化网络。这种互联网技术早在比特币诞生之前就已存在。而比特币的设计中引入了POW共识机制后,才使得区块链技术的价值得到了最大化展现。

从共识机制的演进中,我们也能看到,区块链应用的每一次重大进展,与共识机制的迭代密切相关。

共识机制可以说是区块链的灵魂与核心,区块链的应用落地,最终突破点将取决于——共识机制。

【链虎财经版权及免责声明】本文为原创文章,作者:如是。仅代表作者本人观点,与链虎财经立场无关。本站所有内容不构成投资建议,币市有风险、投资请慎重。如需转载文章,请注明来源https://www.chainhoo.com/blockchain/44726/及作者姓名,违者必究。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK