首页 > 世链号 > 将工作量证明(PoW)用作信息价值信号的谬误(下)
3点钟资讯  

将工作量证明(PoW)用作信息价值信号的谬误(下)

摘要:最佳节点——具有的最少孤块

最佳节点——具有的最少孤块

孤块比特币网络中区块产生过程中的一种自然结果,当两个或多个节点在同一时间或几乎同一时间发现相互竞争的区块解决方案时,孤块就会出现。

当这种情况发生时,就会出现所谓的“孤块竞赛”即竞争节点之间的竞争,让节点中的区块在网络上传播,并让自己的区块优先被更多的其他节点验证。如果网络的大多数节点判定该区块是它们“首先看到”区块,该区块将有最大机会让链上的下一个区块建立在它之上(即该区块被接受,加入主链),这是成为工作量证明的最长链不可篡改的一部分的首要条件。

尽可能避免输掉孤块竞赛的最佳办法是尽可能避免参与孤块竞赛。这需要通过双重战略实现:

  • 与自己竞争——尽可能减少发现新区块所耗费的能源

  • 在与其他人的区块竞争时尽可能少地耗费能源

将工作量证明(PoW)用作信息价值信号的谬误(下)

节点必须确保其它更多节点知道自己区块中的所有交易。对于其它节点尚不知道的交易,这些节点在请求交易、获取响应和执行验证时将出现延迟。

如果该节点有着其它节点所没有的数百甚至数千个交易,那么这将对该节点赢区块的能力造成灾难性的影响。因为每当该节点发现新区块时,其它节点处理这些区块都会出现长时间的延迟。这意味着节点应该选择其他节点将验证的交易,并拒绝其他节点未验证的交易,以及拒绝会给已被网络中大多数节点接受的区块增加延迟的交易。

关于这种情况的真实案例,请看 Mempool 对 WeatherSV 的交易试验。最初,Mempool 挖出 0.2 聪 / 字节的天气交易,并在网络上传播这些交易,但是其他所有节点都忽略这些交易,这导致每次 Mempool 发现一个区块时,新区块在网络中的验证都出现了很大延迟。

一开始情况非常糟糕,Mempool 之前是占全网 10% 份额的矿工,通常每天能产生 12 至 17 个块,然而在试验的最初 24 小时内却没能产生任何区块。几次尝试后,Mempool 改变了策略,限制每区块最多包含 4 MB 的 WeatherSV 交易。终于网络中其它节点开始接受和传播 0.25 聪 / 字节的交易,WeatherSV 只是支付了额外费用来消除低费用交易给 Mempool 带来的问题。

将工作量证明(PoW)用作信息价值信号的谬误(下)

在节点自己发现新区块后,若想减少竞争区块出现的可能性,那么节点需要确保自己能够尽快让尽可能多的节点了解自己所构建区块的内容和结构,使这些节点的区块验证速度越快更好。虽然这不是很多(或任何)节点都做的事情,但流式区块模板是即将上线的 Teranode 系统里在规划中的一个功能,我认为这个功能将可以向网络产生出一些显著的代价高昂信号。

节点不仅可以直接告知其它节点它们的区块中含有哪些交易,还可以告知交易在 Merkle tree 中的顺序。这意味着,当找到解决难题的随机数时,其他节点已经知道了 99.9% 验证区块时所需的信息,这时只需要处理剩下 0.1% 的信息即可。相较于不使用该机制的节点,以及除了区块头外还必须传播区块里所有交易排列顺序(还要传播所有其他矿工没有的交易)、然后等待其它节点构建出区块以确认区块有效性的节点,使用流式区块模板互相连接节点将会更具优势

试想一下,某个节点挖出了一个包含 10 亿个交易的区块,而其他节点由于没有模板,需要大约 20 秒来验证该区块。在这 30 秒期间,一旦接收者已经知道了另一个节点的区块模板,这时来自另一个节点的区块就可以介入并先声夺人,抢先被验证。这意味着每当这个节点发现一个新区块时,都有 5% 的机会成为孤块。假设这个节点掌握着 10% 的网络算力,那么相当于它每天都要损失一个区块给那些能够明确告知其它节点挖矿模版的节点。

最终,为了尽可能快地知道其它已被发现的区块,节点还必须尽量获知其他节点的区块模板。当节点把自己的区块模板推送给其它有效节点时,保留同伴节点最多模版信息的节点就能够在短时间内完成对任何区块的验证,同时也让它们及时更新不包含任何刚生成的有效区块内交易的区块模版,确保算力代理人的算力尽量不会浪费在已失效的区块模板上。

所以,你会发现:在节点依赖交易费收益而且区块非常大的情况下,工作量证明实际上并不是节点所展现的“代价高昂的信号”。事实上,节点获得奖励是因为连接性好且对网络中其他节点的信息掌握得最好。生产出最多区块的节点有可能只是因为它们投资了足够多的算力,但是它们却可能在与连接性更好的节点进行孤块竞赛时多次失败。

同样的道理,生产区块数量较少但获取了丰厚交易费的节点,也可能是网络连接性不佳的节点,而且它还无法通过增加对自身算力的投入来掩盖这一事实。但这些节点仍能赢得区块,因为他们的策略是尽可能扩大费用池,赢得大量交易的打包权。

将工作量证明(PoW)用作信息价值信号的谬误(下)

我认为,只有基础设施和连接性最佳的节点,以及在任何时刻都了解其竞争对手正在做什么的节点才可以被称为“最佳节点”——失去的区块最少,因此它们的算力供应商在损失最小的情况下获取了最大收益。由于算力供应商是决定哪些区块有利可图的一方,甚至早于那些寻求巨大回报的节点。将出于低风险的考量,他们将自然地更少参与那些奖励巨大的区块,更多地参与回报合理、但只有很小概率会在孤块竞赛中失利的区块。

因此,节点的连通性和实时计算其它节点活动的能力成为了它们展示出的“代价昂贵的信号”。一个健康节点能够收获的奖励是算力,而选择能够持续发出“代价高昂的信号”的节点的算力运营商,他们会获得最小化的工作量证明损耗。

流式区块模板将是非常密集且昂贵的,运行起来价格不菲。举例来说,如果一个节点与其它 10 个节点共享信息,而每个区块中平均有 10 亿个交易,那么该节点需要对其索引每个节点都建立一个 64GB 大小的 Merkle tree,并进行持续地更新和管理。

流式区块模板可能是比特币中需要解决的最有趣的和具有挑战性的计算问题之一,但能够掌握这个技术的节点运营商将会因更少的工作量损耗而获得回报,并由于其所展示出的代价昂贵信号,将吸引更多的算力。

是的,但这和其它工作量证明的应用有什么关系?

我想说,这与其他工作量证明的应用有很大关系,因为看起来这些应用在设计之时,并没有完全理解比特币区块竞争中代价昂贵的信号是什么。

这些应用全部基于这样的误解:即工作量证明是一种昂贵的信号,而不是展示昂贵信号所得到的奖励。并且还把这种误解进一步带到其他工作量证明的应用中。

将工作量证明(PoW)用作信息价值信号的谬误(下)

工作量证明在构建区块的过程中起作用,因为它是累进的。每一个添加到最长有效链的区块都表明,构建它的节点认为前一个区块是它在前一个解决方案中看到的首个有效扩展。这意味着节点认同前一个区块在数学意义上是正确、合法的,并且自身的工作量证明也符合当时的网络要求。

虽然当区块补贴占主导时,网络还是由算力竞争来定义。但随着网络竞争向大区块过渡,激励措施将转变为建设更快的网络和建设存储和计算系统,以实现网络所需的实时系统。这些就是“代价高昂的信号”。

工作量证明是节点从外部获取的奖励,但其运用模式是动态且残酷的。如果节点由于连接性不佳而使自己的区块成为孤块,那么它将很快失去算力。如果节点的区块由于错误编译或非法交易而被拒绝,那么它也将会更快失去算力。这些不良后果促使节点应该对自己的算力供应商以诚相待,并努力向他们证明自己是网络中最有价值的节点。

对随机信息应用工作量证明一点也不复杂。但在信息战中,它是一种钝器,因为了解用户偏好和稳固关系才是当务之急。我为什么要在意一条排名很高的信息,难道就因为有人花了1万美元打造了一个很大的数值?这个数值能给我带来什么呢?能向我保证什么呢?

工作量证明的积累保障了比特币区块链的安全,使得攻击该链非常困难。它之所以有效,是因为它用于验证单一数据结构——区块链本身。如果我把它应用到一张图片或其它网络内容上,我到底在传递什么信号?如果你向我展示一个已经应用了工作量证明的网络内容,我为什么要关心它?工作量证明既不建立在其他工作的基础上,也无法让其它事项在它的基础上建立,那么此处工作量证明的目的到底是什么?对此我可能是一名逆向思维者,但据我所知,工作量证明只是让矿工们赚了一大笔钱,这些矿工让人们相信它很重要,同时又给外界一个迷惑的指向,让人们觉得有人愿意花最多的钱来获得关注。

我不在意有人在这上面浪费钱,但这一切对我的回报在哪里?当我看到信息时,我希望它能根据我的喜好进行排名,基于我想看到什么和我的关注点。我不关心那些神奇的数字,我也不知道它们能给我的生活带来什么价值。如果你想引起我的注意,请给我一些有用的信息,不要给我你花钱买来的神奇数字。

来源:比特币协会 BA

免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。