原文作者:Glaze,FundamentalLabs原文编译:Aididiao以太坊合并正在进行,但权益证明机制的启动时间已经被一次又一次的推迟。
以太坊合并是指将现有的工作量证明共识机制转换成权益证明共识机制,挖矿的奖励将由参与者质押及数字资产的多少来决定,而不再是电力和资源密集型的算力决定。为了保证以太坊顺利合并,矿工转而使用权益证明,以太坊决定增加炸弹难度机制确保以太坊合并更加顺畅。难度炸弹机制设置之后,PoW网络的挖矿难度将随着时间的推移呈指数级增长,从而减少矿工的ETH奖励,最后PoW网络停止生产区块,所有矿工只能切换到PoS网络。下图中的每一个波峰都代表难度炸弹对挖矿难度的冲击。由于难度炸弹在合并过程中不断被推迟,这种波动已经消失了相当一段时间了。
来源:Etherscan长期以来,以太坊高昂的Gas费和缓慢的网络交易速度被用户所诟病,而PoW共识机制可以帮助以太坊解决这些问题。本文将解释PoS共识机制的历史以及以太坊合并中遇到的困难。快速了解新的共识机制
每一个区块链网络上存在很多节点,共识机制作用协调这些节点,让不同的节点之间对产生的新区块达成共识。共识机制是分布式网络能够顺利自运转的关键所在。共识机制通常很复杂,要想快速了解一种新的共识机制,只需要回答:新的区块由谁提出?区块链如果出现分叉,决定谁是主链的要素是什么?PoW共识机制概述
在PoW共识机制中,矿工反复尝试求解一种基于哈希算法的数学难题。首先解出的矿工就会获得记账权,从而提出新的区块。如果区块链出现分叉,最长的分叉链将成为主链。如果有人想要操纵区块链,攻击者至少要达到51%的算力。PoW网络挖矿需要电力资源,同时对硬件的要求很高,有一定的成本门槛。挖矿所获得的奖励与其计算能力成正比。
与PoS相比,PoW相对简单。因为PoW不需要涉及随机数等问题,而PoS需要使用随机数来随机选择区块提议者。PoS共识机制详解
以太坊合并过程中,以去中心化的方式鼓励更多的节点加入网络,因此需要更加复杂的协议来支持数千个节点的点对点通信,保障网络的正常运行。PoS共识机制即权益证明机制,节点需要在网络上质押原生代币。质押代币越多,节点越有可能产生区块。PoS共识机制对硬件要求不高,但是需要资金完成质押。如果节点出现作弊情况,网络将立即削减节点所质押的代币。由于节点不需要花费电力资源和使用高端硬件设备,PoS网络具有可持续性、更高效的反应机制、更高的TPS和安全性,因此大多数网络都会采用PoS共识机制。PoS的两个阶段
PoS经历了两个阶段的发展,PoS1.0是基于区块链的共识机制,而PoS2.0是基于BFT的共识机制。PoS1.0共识机制:PeerCoin、NextCoin、BlackCoin和EthereumSerenity。PoS2.0共识机制:Ethereum2.0、Tendermint和Cosmos等项目。PoS1.0在PoS1.0阶段,大多数PoS机制:节点质押代币随机选择一个节点产生新的区块,节点产生新区块的概率与质押代币的数量成正比在这个过程最重要的是随机数的生产,如果随机数的生成是基于时间戳和哈希算法,那么节点有可能会通过影响随机数生产的方式来增加自己再次被选为区块提议者的概率,从而产生新的区块。攻击向量黑客可以通过攻击向量访问计算机或网络服务器,以传递有效负载或恶意结果。攻击向量使黑客能够利用系统漏洞,可能导致资产被盗。常见的攻击向量有:Stakinggrinding:区块提议者执行一些计算或采用其他步骤来试图将随机性偏向于他们自己,以此来获得更多生成区块的机会。Nothingatstake:在PoS网路中,节点不需要额外的机会成本进行挖矿,所以会在每一个竞争分支上进行挖矿以最大化他们的奖励。但这对网络的稳定性是有害的。Long-rangeattack:早期矿工可能追溯早期版本的区块链,容易造成分叉。PoS2.0
PoS2.0采用的是BFT,其目标是在不同节点之间达成共识。在所有节点中,通过随机算法选出主节点,可以提出提案和通讯。其他节点中存在恶意节点,即拜占庭节点。拜占庭节点为了阻挠真实信息的传递及共识的达成,会向各个节点发送前后不一致的信息,通常以这种方式作弊:未返回结果以错误的结果回应以故意误导的结果回应以不一致的信息回应除了拜占庭节点外其余节点均为诚实节点,还有一种最困难的场景主节点是拜占庭节点。BFT还有其他限制:节点只能对等通信节点保存已发送信息的日志点对点通信导致不同的节点会有不同的视图,节点没有在全局同步状态,例如节点A找到3个新区块的同时,节点B只能看见1个新区块。BFT的主要目的是主节点提案之后,除了拜占庭节点之外的每一个节点都可以达成协议,次要目标是发现拜占庭节点。BFT算法介绍
现在BFT算法通常采用多轮投票来确保每个节点都知道提案是否被超过三分之二的节点批准。
每一轮投票都有四个步骤:客户端向主节点发送请求主节点向所有节点传递请求节点返回执行结果回应主节点得到超过三分之二节点相同的结果后,主节点再把结果反馈到客户端下图显示了执行过程的5个节点。其中C是客户端,0是主节点,3是拜占庭节点。
在准备和提交阶段,需要确保不同节点之间的同步进行。Tendermint有一下几个限制:点对点通信时网络节点不能超过100个点对点通信需要复杂设计执行延迟。节点首先决定新区块,然后再执行新区块的所有信息。虽然单个交易执行可以正常工作,但一次执行所有交易可能会导致双花问题。编者注:Tendermint是用于在多个节点上安全且一直地复制应用程序的软件。即使多大三分之一的节点以任意方式发生故障,Tendermint也能正常工作。Tendermint被设计为易于使用、易于理解、高性能且适用于各种分布式应用程序。目前的BFT算法可以在以下条件中达成一致:4个节点中最多有1个是拜占庭节点25个节点中最多有8个是拜占庭节点100个节点中最多有33个拜占庭节点
网络运行状态可分为一下集中情况。假设f是拜占庭节点的个数,网络汇总共有3k+1个节点,k是随机整数。f≤k,网络稳定k<f<2k+1,部分节点可能无法达成共识。区块链暂停f≥2k+1,存在安全隐患
Ouroboros算法机制
与BFT算法相比,Ouroboros能够支持更多的节点,同时支持节点随时进出。Ouroboros比BFT更加去中心化和灵活,但是反应时间更长。使用Ouroboros算法机制的有CardanoandMina。Ouroboros算法机制将时间划分为不同的时段,在每个时隙之中使用VRF生成随机数,并用生成的随机数来决定新的区块提议者。质押更多的节点更有可能成为区块提议者。当出现分叉时,Ouroboros将使用预定义的选择规则确定主链。例如它可能会选择最「密集」的链为主链,同时预定义选择规则是可以通过投票来协商的。展望未来
区块链网络在去中心化和性能之间做出平衡,从PoW切换到PoS表明区块链对TPS、去中心化、代币经济学和交易速度有更高的追求。围绕这四个特征,未来将出现更多的创新。GameFi和DeFi应用中的代币经济学创新可以在共识机制应用。当前的质押机制简单且过时,例如许多DeFi项目普遍使用Ve代币,以提高质押比例并降低流通量。用户需要将项目代币质押一点时间后可以获得VE代币代币,质押的时间越长,获取的Ve代币就越多,通过这种方式可以提高质押率。双代币模式也是很好的创新方向,奖励代币和治理代币分开可以获得更多的价值,许多成功的项目通过双代币模式减少市场抛售压力。应用程序的迭代速度远比底层协议快的多,因此应用程序的创新很难应用到底层协议上。虽然模块化可以解决这个问题,但存在一定风险。参考文献https://www.geeksforgeeks.org/practical-byzantine-fault-tolerancepbft/http://muratbuffalo.blogspot.com/2020/01/practical-byzantine-fault-tolerance.htmlhttps://medium.com/@carloslopezdelara/whats-ouroboros-the-cardano-proof-of-stake-protocol-ad4b958e152ehttps://minaprotocol.com/blog/how-ouroboros-samasika-upholds-minas-goals-of-decentralizationhttps://iohk.io/en/research/library/papers/ouroboros-a-provably-secure-proof-of-stake-blockchain-protocol/https://arxiv.org/pdf/1807.04938.pdfhttp://www.cs.cmu.edu/~dga/15-712/F13/papers//castro99.pdfhttp://muratbuffalo.blogspot.com/2020/01/practical-byzantine-fault-tolerance.html原地址
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。