比特币的划时代意义----基于pow算法的共识机制

Posted 喜欢数学的女孩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了比特币的划时代意义----基于pow算法的共识机制相关的知识,希望对你有一定的参考价值。

比特币的划时代意义----基于pow算法的共识机制  

共识机制 

区块链事务达成分布式共识算法,达到去中心化的目的。

 

拜占庭将军问题(The Byzantine Generals Problem)

拜占庭帝国(Byzantine Empire)军队的几个师驻扎在敌城外, 每个师都由各自的将军指挥. 将军们只能通过信使相互沟通. 在观察敌情之后, 他们必须制定一个共同的行动计划, 如进攻(Attack)或者撤退(Retreat), 且只有当半数以上的将军共同发起进攻时才能取得胜利. 然而, 其中一些将军可能是叛徒, 试图阻止忠诚的将军达成一致的行动计划. 更糟糕的是, 负责消息传递的信使也可能是叛徒, 他们可能篡改或伪造消息, 也可能使得消息丢失。

拜占庭将军问题是分布式系统领域最复杂的容错模型, 它描述了如何在存在恶意行为(如消息篡改或伪造)的情况下使分布式系统达成一致. 是我们理解分布式一致性协议和算法的重要基础.这一问题是由图灵奖获得者 Leslie·Lamport 等人在这篇论文中提出的,论文中给出了两种拜占庭将军问题的解决方案, 即口信消息型解决方案(A solution with oral message)

和签名消息型解决方案(A solution with signed message)。

论文中给出的结论: 如果存在m个叛将, 那么至少需要3m+1个将军, 才能最终达到一致的行动方案。

 

常见的共识算法

一、PoW(Proof of Work,工作量证明)

Hash (block_header) < Target
区块链1.0时代,以比特币为代表。

 

二、PoS(Proof of Stake,权益证明)

Hash (block_header) < Target * CoinAge
区块链2.0时代,以以太坊为代表。 PoW( eth1.0) -> Casper FFG(PoW和PoS的混合) ->PoS(Casper)( eth2.0,目前仍在研发中)

19年我在参加以太坊技术及应用大会时候,当时Vitalik(V神)介绍了以太坊2.0里面关于信标链、Casper、Plasma和Layer2的核心原理以及最新的动态。
在V神原著(以太坊的区块链创世录--理想)一书中,关于拜占庭问题提出的不同于PoW的设计理念时,其实关于性能资源同共识安全的博弈中,为了避免pow的资源浪费以及节点的网络拥堵,能更好的去实现区块链公共平台的特性,只能根据应用的场景去设计其对应的最优解。里面酝酿了以Casper的以太坊2.0的pos共识机制,以及过渡版本pow和pos混合的Casper FFG。其中在一种权益证明的设计哲学里,有这么一段思考。

以及他在并行化lamport 99% 容错共识的探索研究。

 

 

 

三、DPoS(Delegate Proof of Stake,委托权益证明)

TPS = transactions / block_time
区块链3.0时代,以eos为代表。DPoS -> BFT-DPoS 

 

四、PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)

在保证活性和安全性的前提下提供了(n-1)/3的容错性。
当存在f个失效节点时必须保证存在至少3f+1个副本数量,这样才能保证在异步系统中提供安全性和活性。这么多数量的副本是需要的,因为在同n-f个节点通讯后系统必须做出正确判断,由于f个副本有可能失效而不发回响应。但是,有可能f个没有失效的副本不发回响应(是因为网络延迟吗?),因此f个发回响应的副本有可能是失效的。尽管如此,系统仍旧需要足够数量非失效节点的响应,并且这些非失效节点的响应数量必须超过失效节点的响应数量,即n-2f>f,因此得到n>3f。
PBFT算法主线流程,图1显示了在主节点没有故障的正常情况下算法的操作。副本0是主节点,副本3是有缺陷的,C是客户端。

在中本聪发明比特币以前,世界上并没有一个非常完美的方法来解决“拜占庭将军问题”。
我个人认为目前PoW是容错能力最好的共有链共识机制。
PoW的安全性有严格的数学证明,去中心化程度高,安全性高,公平的代币发行机制。
解决了dos攻击,双花,分叉。就算真的出现了51%的算力垄断,他们发动了51%算力攻击,
最直接的便是共识崩塌,币价闪崩,于算力持有者的利益是截然相悖,他们只会更好的去维护PoW的安全运行,挖矿更高概率的去获得代币报酬。

 

附:中本聪关于拜占庭将军问题的解决思路

 

 注:本文虽然在别的论坛发表过,但属于原创,皆为作者喜欢数学的女孩同一人。

以上是关于比特币的划时代意义----基于pow算法的共识机制的主要内容,如果未能解决你的问题,请参考以下文章

Go语言实现Pow共识算法

布局POC共识,告别草莽时代,HDFS当仁不让

BCC比特币网络被51%算力攻击,真的好吗?

比特币发行机制

区块链:3共识算法 非强一致共识算法PoW机制

以太坊挖矿