当前位置:首页 > 物联网 > 区块链
[导读] 为了确保区块链网络的平稳运行,新的区块必须具备向其它节点快速传播的能力。很多研究都就“如何在尽可能小的宽带条件下实现区块传播”这一课题展开了深入的探讨。简而言之,占用的宽带越小,则传播的速率就越

为了确保区块链网络的平稳运行,新的区块必须具备向其它节点快速传播的能力。很多研究都就“如何在尽可能小的宽带条件下实现区块传播”这一课题展开了深入的探讨。简而言之,占用的宽带越小,则传播的速率就越快。正因为这样,Graphene协议才使用公认宽带占用最少的方案来完成区块传播。

区块传播的原理和宽带的阻塞点

当达世币用户进行交易时,交易会在不同的计算机或节点上传递,也就是说,许多节点都会参与到交易的发送进程当中。最终,几乎每个节点都会存有这一交易的信息,以便完成对交易的处理。在这个过程当中,所有未经处理的交易都会存储在内存当中并被统称为mempool。通常情况下,该交易会在两分半钟之内被写入在一个区块中,在这种情况下,该交易被视为有效并且已经由网络处理。

以上述知识为基础,如果一个节点需要传播一个区块上的所有交易,那么它将有如下选择:一是传递包含所有交易的整个区块,这也是最早的比特币所采用的方法;二是为区块中的所有交易及其次序传递标识符,以便接收到标识符的节点能够基于mempool中已有的交易来构建区块,而Compact Blocks、Xthin和Graphene正是借助这种方式来减少区块传播所需的带宽。


Graphene如何缓解对宽带占用过大的问题

基于Graphene协议还原新区块的节点往往会构建两个数据结构:首先,它会构造一个包含区块中的所有交易的布隆过滤器;其次,它构建包含区块中的所有交易的IBLT(即可逆的布隆查找表)。随后,这些不附带整个节点的数据结构都会被发送到各个节点上。接收这些数据结构的节点将通过布隆过滤器传递mempool中的所有交易,从而提供区块中所有交易的列表。然而,由于布隆过滤器可能存在一定的误报率,因此列表中的交易可能会多于实际数量,也可能会遗漏mempool中的交易。考虑到这一隐患,接收数据结构的节点将会从IBLT中解压缩待处理的交易,从而识别任何误报或遗漏的交易。最后,接收数据结构的节点还会在必要的情况下向其它节点查询遗漏的交易。

自此,Graphene协议的这两个数据结构足以恢复区块中的整个交易集合。那么,接下来的步骤就是将还原的交易回归到正确的顺序了。第一个版本的Graphene协议会通过布隆过滤器和IBLT来传递有关顺序的信息。虽然这些信息占用的宽带并不大,但还是会随着区块中的交易数量的增加而增加。举几个例子,当区块中的交易少于256笔时,每笔交易占用的宽带还不到1字节;当区块中的交易少于65,000笔时,每笔交易占用的宽带还不到2字节;而当区块中的交易少于1600万笔时,每笔交易占用的宽带还不到3字节。相比之下,如果达世币的区块可以处理1600万笔交易,那么这一平均交易量将达到维萨卡的24倍。

Bitcoin Unlimited进一步推进了Graphene协议的发展。去年11月,比特币现金的区块链出现了硬分叉,此次分叉的目的是为了更改共识准则并要求区块以既定顺序进行交易。这种顺序选择也被称作规范次序。在此更改之后,借助Graphene协议进行的区块传播可以不包含顺序信息。此举进一步强化了Graphene协议的优势——区块可以变得极大,而最佳的布隆过滤器和IBLT却可以维持极小的状态。

Graphene协议面临的挑战

虽然Graphene协议具备上述优势,但现实的情况却更加复杂。由马萨诸塞大学阿默斯特分校的研究人员开发的Graphene协议应用实例假定所有的内存中都存有所有的交易。而达世币在亚利桑那州立大学创建的实验室的研究人员则认为,mempools将不可避免地存在一些差异,也就是mempool分歧。此外,研究还表明,随着网络的发展,mempool分歧还会进一步恶化。这意味着由Umass研究人员计算的IBLT解码的概率在实践中将变得更小。换言之,Graphene协议的性能不会像预期的那样优秀。

在由达世币核心团队赞助的Nakul Chawla暑期实习期间,我们探讨了如何从容地应对IBLT解码失败的情况。实际上,任何节点都可以提供另一个布隆过滤器和IBLT。在获得布隆过滤器和IBLT之后,它们就可以组合在一起,从而实现完成解码。我们甚至可以借鉴同时向三个节点申请布隆过滤器和IBLT的BitcoinXT的经验。换句话说,我们可以尝试解码第一次完整响应,如果解码失败,我们就可以参考其它节点的补充响应,并将它与第一次完整响应的数据相结合。在这次实习期间,我们确定了导致无限循环的畸形IBLT,并提供了简单有效的应对措施,不仅如此,我们还研发出了使用Graphene协议的实用工具。我们已经对这个客户端进行了一些测试,但在广泛的网络推广之前,我们还需要做一些收尾工作。即使在上线前经历一些挫折也是虽败犹荣和有益的。不过,在我看来,前期的这些工作已经起到了抛砖引玉的作用,催生了更妙的创意。

达世币未来将如何应用Graphene协议?

我们需要明确的一点是,目前达世币还没有引入Graphene协议的具体计划,因为团队需要在Evolution上线后才能做出相关的规划。我们期待届时能出现更适宜达世币网络新属性的创意。Graphene协议确实具有许多优良的性能,但我在上文中并没有提到它的一个重大缺陷,也就是众所周知的毒块攻击。具体来说,恶意矿工可以开挖含有大量未广播到网络上的交易的区块,在这种情况下,Graphene协议将始终无法解码。这样的攻击虽然不会造成毁灭性的后果,但却会像持续打嗝一样带来不适或不便。

我们希望能在未来为大家带来有关毒块攻击的更多讲解,然后讲解如何通过亚利桑那州立大学区块链研究实验室的方法来降低这种攻击的风险并且同时维持快速的大型区块传播。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭