以太坊:金色观察|PoW共识该如何进化?

比特币是加密货币网络中第一个成熟的代表产品,也是因为比特币网络的出现,才后继发展出以太坊等世界计算机雏形。

不过后续公链为了性能需求,做了过多更改和添加,其中最重要的是把公链的共识彻底更改为PoS,尽管以太坊还没有彻底改变,但也已经提上日程。

我们不禁需要思考,能不能不修改PoW共识,而达到其性能呢?我们就以本文讨论一下,PoW共识该如何进化。

因为共识算法主要应用在区块链网络结构的共识层,可以理解为layer1。而如果对PoW共识进行更改,那对比对象就是比特币的PoW中本聪共识和以太坊的ethhash,今天不用谈其对ASIC芯片和GPU芯片的规定,而是在PoW出块验证过程中的变化。

中本聪共识是区块链早期广泛使用的一种共识方法。目前为止中本聪共识仍是容错能力最好的,其设计简单,通讯开销低,经过了数十年的验证。但是该共识有一个自然的吞吐量限制。其吞吐能力较低,出块时间过长,用户体验较差。

金色午报 | 1月30日午间重要动态一览:7:00-12:00关键词:美联储、TRX、摩根溪

1.摩根溪联合创始人:Tesla和SpaceX在资产负债表中添加比特币是不可避免的

2.美联储戴利:更多人接种新冠疫苗后,预计经济活动将“大幅反弹”

3.美国得州总检察长对Robinhood等平台提出民事调查要求

4.桥水基金创始人:比特币是了不起的发明,或存在被取代风险和网络风险

5.BlockFi向SEC申请注册比特币信托

6.TRX主要持仓地址7日流出75.44亿枚TRX[2021/1/30 14:24:40]

如果你想提高吞吐量,你可以做两件事:一是增加块大小(如比特币现金,比特币无限),二是降低块间隔,但这会增加孤块率。消耗带宽,也不利于交易确认。随着孤块率的增加,系统的安全性下降,吞吐量下降。

金色午报 | 5月9日午间重要动态一览:7:00-12:00关键词:BTC减半倒计时、比特大陆、Libra

1.BTC减半一周倒计时——距离减半还2天。

2.网传比特大陆公司主体变更 员工将重新签订合同。

3.吴忌寒:重庆公司不做研发 北京员工不会迁往重庆。

4.Libra任命五名项目维护员同时启动Libra改善建议项目。

5.杨海坡:交易所很快就会发现做矿池是一个大坑。

6.报告:GUSD的发行流通量增加至594.77万枚。

7.韩国世宗市将建立区块链平台验证自动驾驶汽车数字身份。

8.山东破获一起虚拟货币投资案 涉案金额高达3000多万元。

9.比特币小幅下跌,日内最高报9998美元,最低报9730美元。[2020/5/9]

当孤块率非常高时,攻击者很容易秘密生成更长的链。攻击者则不需要 51% 的算力,可以用更少的算力覆盖区块链。

金色沙龙丨吕国宁:公链技术突破需支撑更大范围的加密经济生态:在本期金色沙龙上,Nervos联合创始人&COO吕国宁发言指出:公链技术突破,最核心要解决的问题是去支撑一个更大范围的加密经济生态。下一代的公链的大概有三个发展方向。第一,一层扩容;第二,二层扩容;第三,多练互操作。诸多公链在不同的方向上面的尝试,是区块链行业依然处在一个繁荣阶段的标志。[2020/3/18]

如果我们想突破吞吐量限制,必须想办法降低孤块率。

孤块出现的原因来自于块的传播延迟,如果在传播另一个块时发现一个块,则其中一个注定是孤块。

而一些区块的传播速度较慢,是因为这些区块相关有更多的新交易,新交易是在区块打包前的 10 秒内生成的未同步交易,因此矿工必须先同步这些交易,然后才能进一步传播这些块。

例如,当节点 A 向节点 B 传播一个块并且其中没有新的交易时,节点 B 可以立即将这些块传输给它的所有邻近节点。

金色晨讯 | 12月13日隔夜重要动态一览:21:00-7:00关键词:Bakkt、比特币期权、欧洲央行、何一、孙宇晨

1.Bakkt比特币月度期权完成首笔大宗交易。

2.Libra白皮书删除将储备资产利息用于分红给启动初期投资者的内容。

3.欧洲央行:设立央行数字货币专门委员会,预计2020年中期获取数字货币结果。

4.加拿大央行行长:正在研究发行数字货币是否有意义。

5.何一、孙宇晨微博被封,已分别注册新账号“何一阿姨”、“孙宇晨老师”。

6.Shopin创始人已就通过欺诈性ICO筹集超过4200万美元认罪。

7.31省份布局区块链,专家提醒避免“脱实向虚”。

8. 新华社智能化编辑部依托区块链技术精准评估传播效果。

9.离岸人民币兑美元收复7关口,USDT溢价0.3%。[2019/12/13]

但是,如果区块中有新交易,节点 B 必须首先从节点 A 同步这些交易,然后验证这些交易的签名,这也需要时间。只有当整个区块的有效性得到验证时,节点 B 才能继续传播这个区块。

以太坊出现后,对中本聪共识并没有实质性的改善。其只是简单地缩短了出块间隔。

并且以太坊还有一个问题,因为交易的有效性取决于区块内的交易顺序,验证交易,必须等到区块收到后,因此无法在收到实际区块之前验证交易有效性。

也即是因为这样,每个区块中的每笔交易都会被视为新交易。交易传播中有很多冗余。例如一个以太坊客户端可能会将同一笔交易传播到不同的节点七次,而这些交易就意味着以太坊会出现非常高的孤块率,数据表明,可能有时高达 30%,严重占用网络资源,造成交易堵塞。

以太坊还有叔块的设置,如果这些孤块被纳入最长链,可以拿到部分奖励,但叔块的数量和奖励无济于事。

因此,这些迟缓的交易确认流程和技术现象,造成了PoW共识表现出的比特币网络和以太坊网络的问题。

那可以如何改善PoW共识?

在现有的设计案例中,可以看到两种必要的方法。

首先是挖矿难度调整,这是对于计算出块难易程度的预估,比特币和以太坊是定期调整的,并且是较长周期内调整,而改善后的PoW共识内可以通过一个小周期(时隙)来调整,一个时隙会包含多少个块,以保证快速调整到平稳的难度值。这对出块时间也是重要的。

第二个必要的改进就是调整出块时间,而这涉及到很细节的过程。在上文中,因为区块打包前的新交易会不停延迟区块链传播时间,那如果让传播节点不再因新交易出现而延迟同步,出块就会变快速,但需要将新交易,以及漏掉的交易进行新的验证打包。这就需要一个新的交易提交渠道。

我们在NC-MAX的算法里查到了一个设计。

那就是将区块中添加了一个“叔块头”区域,允许矿工将尽可能多的叔块嵌入到一个块中。叔块可以在区块中传播他们的头和他们的交易提议区,但叔块不计入块大小限制。

另外还需要添加了一个交易提议区,其中可能包含一些新交易的提交,交易在传播区块后同步。并且是并行同步的,不会影响块的传播过程。只要哈希检查,不会影响块的有效性。

还有一种可以称之为智能的方式,那就是让出块时间设计为动态变化。

在PoW链正常的共识出块中,会出现孤块、叔块,这会影响链的数据,但如果通过一个数据来监控孤块和叔块,进而调整出块时间和块大小。就足以让所有链上的资源变得更智能。

例如还有一个公链的案例是引入叔块率等运行期数据,对出块时间,难度,出块奖励进行动态调整,进而最大限度利用网络资源。

详细的过程如下:当区块越大,出块时间越短,孤块会越多,而孤块率增加会降低双花攻击的难度,所以需要将孤块率限制在一个阈值之内。

如果在孤块基础上,引入叔块。首先,定义每 N 个块为一个 Epoch。并且为每个Epoch定义出叔块。

这样就可以用 Epoch 内的叔块率评估网络的拥塞情况,并以此作为出块时间,出块大小调整的依据,实现充分利用网络,提升吞吐的同时,也可避免区块过大或者出块时间太短导致孤块过多,安全降低。

为了将叔块维持在一个合适的阈值内,在每个 Epoch 末,都会重新调整下一个周期的出块时间。

如果叔块率较高,则说当前的出块时间间隔下,网络中存在较多的分叉和孤块,我们需要调大出块的时间,缓解此问题。反之,则说明全网出块情况良好,还能进一步缩短出块时间,进一步提高全网吞吐。

以此看来,通过对PoW共识设计的改变,足以改善PoW链的表现能力,但如果用此与PoS链相比,仍旧是无法比较的,只是通过这样的改进,在面临网络拥堵情况下,链的处理能力是更高的,也是更可控的,这样的调整下,部分项目可以保持对PoW共识的信仰,同时其网络资源也是在矿工经济模型的保护之下运行的,在行业面临巨大问题时,可能会有缓冲效果。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:0ms0-1:491ms