当我们讨论区块链的时候,经常会谈到共识机制。那么什么是共识机制?区块链为什么需要共识机制?区块链的共识机制有哪些?了解到这些不同共识机制的原理,才能进一步理解区块链的安全特性和不可篡改特性。
共识机制/Consensus
由于点对点网络下存在较高的网络延迟,各个节点所观察到的事务先后顺序不可能完全一致。因此区块链系统需要设计-种机制对在差不多时间内发生的事务的先后顺序进行共识,这种对一个时间窗口内的事务的先后顺序达成共识的算法被称为”共识机制”。
工作量证明/Proof of Work/PoW
工作量证明简单理解就是一份证明,用来确认节点做过一定量的工作。监测工作的整个过程通常是极为低效的,而通过对工作的结果进行认证来证明完成了相应的工作量,则是-种非常高效的方式。比特币在区块的生成过程中使用了PoW机制,要得到合理的随机数求解数学难题需要经过大量尝试计算, 通过查看记录和验证区块链信息的证明,就能知道是否完成了指定难度系数的工作量。
权益证明/Proof of Stake/PoS
PoS也称权益证明机制,类似于把资产存在银行里,银行会通过你持有数字资产的数量和时间给你分配相应的收益。采用PoS机制的加密货币资产,系统会根据节点的持币数量和时间的乘积(币天数)给节点分配相应的权益。
权益授权证明/Delegated Proof ofStake/DPoS
DPoS是一种类似董事 会的授权共识机制,该机制让每一个持币人对整 个系统的节点进行投票,决定哪些节点可以被信任并代理他们进行验证和记账,同时生成少量的对应奖励。DPoS大幅提高区块链的处理能力,并降低区块链的维护成本,从而使交易速度接近于中心化的结算系统。
燃烧证明/Proof of Burn/PoB
燃烧证明是一种投资于全新的加密货币的方法:为了获得一种新的货币,你必须“烧掉”( 摧毁)另-种货币,比如比特币。从理论上讲,这将使每一种新的加密货币价值相当于被摧毁的币的价值,但实际上你不能真的摧毁加密货币,系统需要你把它送到-一个会减少它的总供应量的地方6、开发者证明/Proof of Developer/PoD开发者证明是一个真实的、 活的软件开发人员创建了一种加密货币的证据。 它用于启动新的加密货币,以防止匿名开发人员在不提供可行的加密货币的情况下收集和窃取资金。
重要性证明/Proof of Important/Pol
重要性证明是根据交易量、活跃度等维度而不仅仅是根据工作量和币的数量来决定区块链的记账权力。
基于交易的权益证明机制/Transaction as Proof of Stake/TaPOS
TaPOS为股东们提供了-个长效机制来直接批准他们的代表的行为,平均而言, 51%的股东在6个月内会直接确认每个区块,取决于活跃流通的股份所占的比例,差不多10%的股东可以在几天内确认区块链。这种方式直接确认保障了网络的长期安全,并使所有的攻击尝试变得极度清晰易见。
瑞波共识机制/Ripple Consensus
瑞波共识算法使一组节点能够基于特殊节点列表达成共识,初始特殊节点列表就像一个俱乐部 ,要接纳一个新成员,必须由5 1%的该俱乐部会员投票通过。共识遵循核心成员51%权力规则,外部人员则没有影响力。
分布式共识/Distributed Consensus
所有的节点必须定期更新彼此之间的不断复制的状况,通过专]的槽位来识别每一个更新。当所有节点更新了他们的分类账并放映的值相同时,就可达成共识,会将协商-致的声明具体化并发布至它们的分类账副本去。
验证池机制/POOL
验证池机制是基于传统的分布式一致性技 术和数据验证机制的结合,它使得在成熟的分布式-致性算法(Pasox、Raft) 基础上,不需要代币也能实现秒级共识验证。
51%攻击/51% attack
51%攻击,是指利用比特币以算力作为竞争条件的特点,凭借算力优势篡改或者撤销自己的付款交易。如果有人掌握了50%以上的算力,他能够比其他人更快地找到开采区块需要的那个随机数,因此他能够比其他人更快地创建区块。
双重支付双重花费双花/Double Spending
双重支付是一一个故意的分叉,是指具有大量计算能力的节点发送一个交 易请求并购买资产,在收到资产后又做出另外-一个交易将相同量的币发给自己。攻击者通过创造一个分区块,将原始交易及伪造交易放在该区块上并基于该分叉上开始挖矿。如果攻击者有超过50%的计算能力,双重花费最终可以在保证在任何区块深度上成功;如果低于50%则有部分可能性成功。
拜占庭将军问题/Byzantine Generals Problem/BGP
拜占庭将军问题是指“在存在消息丢失的不可靠信道上试图通过消息传递的方式达到一致性是不可能的”。因此在系统中存在除了消息延迟或不可送达的故障以外的错误,包括消息被篡改、节点不按照协议进行处理等,将会潜在地会对系统造成针对性的破坏。
改进型实用拜占庭容错/Practical Byzantine Fault Tolerance/PBFT
PBET共识机制是少数服从多数,根据信息在分布式网络中节点间互相交换后各节点列出所有得到的信息,-个节点代表-票,选择大多数的结果作为解决办法。PBET将容错量控制在全部节点数的1/3,即如只要有超过2/3的正常节点,整个系统便可正常运作。
授权拜占庭容错算法/Delegated Byzantine Fault Tolerance/dBFT
dBFT ,是基于持有权益比例来选出专门的记账人(记账节点) , 然后记账人之间通过拜占庭容错算法(即少数服从多数的投票机制)来达成共识,决定动态参与节点。dBF 可以容忍任何类型的错误,且专门的多个记账人使得每一个区块都有最终性、不会分叉。
联邦拜占庭协议/Federated Byzantine Agreement/FBA
联邦拜占庭协议的主要特性是去中心化和任意行为容错,通过分布式的方法,达到法定人数或者节点足够的群体能达成共识,每一一个节点不需要依赖相同的参与者就能决定信任的对象来完成共识。
添加BSN运营微信号,活动福利,一手干货,技术交流,等待着你来发掘......