wiki
wiki copied to clipboard
truechain Wiki
pull
0726 task by 渐行渐远_rm
# 1 初链介绍 初链是基于以太坊开发创新的一条公链。在黄皮书中初链的定义是高性能去中心化的公开账本。而这个所谓的高性能去中心化是怎么实现的呢?黄皮书中介绍了初链共识协议的初步设计和一些其他技术细节。其中的共识协议就保证了初链的高性能及去中心化。 # 2 混合共识协议 初链将一种改进版的PBFT(实用拜占庭)和POW(工作量证明)共识结合在一起,故称其为混合共识协议。混合共识机制允许其最大限度的容忍1/3对等节点的腐败。这种结合能使两种共识的优良特性得到最好的提现,从而优势互补,各取所长。 ## 2.1 (实用拜占庭共识)PBTF PBFT的通讯效率足以支持10000-100000的TPS能力,这个效率要比以太坊和比特币大很多了。因其极高的处理效率,PBFT在初链中承担一种具有瞬时处理高吞吐量事物,交易验证,公平交易贸易委员会的成员轮值功能的高效共识机制,以及作为一种补偿基础设施去处理不同的基础设施。 ### 2.1.1 PBFT处理请求的步骤  1. 从全网节点选举出一个主节点(Leader),新区块由主节点负责生成 1. Pre-Prepare:每个节点把客户端发来的交易向全网广播,主节点0将从网络收集到需放在新区块内的多个交易排序后存入列表,并将该列表向全网广播,扩散至123 1. Prepare:每个节点接收到交易列表后,根据排序模拟执行这些交易。所有交易执行完后,基于交易结果计算新区块的哈希摘要,并向全网广播,1->023,2->013,3因为宕机无法广播 1. Commit:如果一个节点收到的2f(f为可容忍的拜占庭节点数)个其它节点发来的摘要都和自己相等,就向全网广播一条commit消息 1. Reply:如果一个节点收到2f+1条commit消息,即可提交新区块及其交易到本地的区块链和状态数据库。 ## 2.2 (工作量共识)POW POW即通俗所说的挖矿。其优点是完全去中心化,节点自由进出。POW共识确保了激励和委员会的选举,从而最大可能保障委员会成员不受外围控制或袭击。但是其缺点也是显而易见的。其面临的最大问题是效率问题和可扩展性,使其不适合开发复杂的应用程序,并且造成能源的过度消耗。...
by 高劲风 [原文链接 https://www.jianshu.com/p/d1403b8dc6fb ](https://www.jianshu.com/p/d1403b8dc6fb)