登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 理工学类 > 数学与应用数学 > 正文

寻找可伸缩的区块链结构: 工作证明与BFT复制外文翻译资料

 2022-08-06 09:08  

英语原文共 14 页,剩余内容已隐藏,支付完成后下载完整资料


摘要

比特币加密货币展示了跨越数千个节点的全球共识的效用,永远改变了数字交易的世界。在比特币的早期,其基于概率工作证明(PoW)的共识结构(也称为区块链)的性能并不是一个主要问题。比特币成为一个成功的故事,尽管它在一个小时的时间和理论峰值吞吐量只有7个交易每秒。

今天的情况完全不同,早期PoW区块链的糟糕性能可伸缩性不再有意义。 具体来说,现代加密货币平台的趋势,如Etalum,是支持在区块链结构上执行任意分布式应用程序,需要更好的性能。然而,这种方法使加密货币平台偏离了最初的目的,进入了数据库复制协议的领域,特别是经典的状态机复制,特别是它的拜占庭容错(B FT)变体。在本文中,我们比较了基于PoW的区块链和基于BFT状态机复制的区块链,重点是它们的可伸缩性限制。我们还讨论了最近的建议,以克服这些可伸缩性限制,并概述了关键的未决开放问题,以寻求“最终”区块链结构。

关键词:比特币、区块链、拜占庭容错、共识、工作证明、可伸缩性、状态机复制

1.导言

分布式共识因其有限的可伸缩性而没有得到广泛的使用,几十年来被认为是一种同步原语,仅用于迫切需要一致性的应用程序,而且只在少数节点之间使用。然而,中本聪的比特币加密货币证明了分散共识在数千个节点之间的效用,彻底改变了数字交易的世界。

虽然比特币协议在传统的分布式计算意义上并没有实际实现共识,但它非常接近

于概率协议的共识。简而言之,像比特币这样的加密货币的目标是在分布式分类账上完全订购交易,也称为a区块链。比特币区块链由一个由块组成的哈希链组成:每个块包含一个有序的事务集和前一个块的哈希(从最初的所谓的“起源”块开始)。关键部分是哈希链的工作证明(PoW)方面:比特币块包含比特币矿工(即试图向链中添加块的节点)必须以这样的方式设置的非CES,即整个块的散列小于已知目标,这通常是一个非常小的数字。事实上,在比特币中,挖掘的难度与目标成反比,在系统的整个生命周期中都是动态调整的。调整是间接的与块的挖掘率,参与系统的节点的计算能力相关,以保持预期的块挖掘率大约每10分钟一个块。这个10分钟的延迟(每个块)通常被称为块频率,是比特币中两个关键的“神奇数字”之一,另一个是块大小,比特币中的块大小设置为1MB。

在比特币的早期,其基于概率PoW的区块链的性能可伸缩性并不是一个主要问题 。 即使在今天,比特币工作的共识延迟约为一个小时(对于推荐的6块事务确认),并且每秒峰值吞吐量最多有7个事务(最小的200-250字节事务)。最重要的是,比特币网络使用了大量的力量,2014年,这一力量被粗略估计为0.1-10 GW。

然而,区块链需求变化迅速,高延迟和低吞吐量的比特币类区块链成为一个主要 挑战。相比之下,全球领先的信用卡支付公司平均每秒服务大约2000笔交易,其峰值容量旨在维持每秒超过10000笔交易。此外,现代加密货币平台的趋势,如Etalum,是以智能契约的形式支持在区块链结构上执行图灵-完整代码,这 些协议大致上是自定义的、自动执行的程序(分布式应用程序),它们自动执行数字合同的属性。事实上,智能合约区块链被视为许多行业分布式分类账的候选技术。显然,在许多预期的智能合约用例中,分布式应用需要比比特币提供的更好的性能。银行业是一个突出的例子,其中潜在的区块链用例远远超出了数字支付,例如证券贸易结算和贸易融资。

智能契约用例使区块链远远超出了其最初的加密货币目的,回到数据库复制协议的领域,特别是经典的状态机复制。事实上,智能契约可以建模为状态机,其在分布式环境中的多个节点之间的一致执行可以使用状态机复制来实现。对于区块链来说,一个特别有趣的状态机复制协议家族是拜占庭容错(BFT)状态机复制协议家族,它承诺尽管马里的参与,但仍然会达成共识-甘特(拜占庭)节点。在三十多年的研究中,BFT协议原型被证明是实用的,达到了网络允许的实际最小延迟,并支持每秒数万个事务。然而一般来说,BFT和状态机复制协议在节点(副本)的数量上往往受到挑战, 并且在对区块链至关重要的这方面还没有经过测试。

总之,区块链共识技术的今天,PoW和BFT,坐在两个相反的两端的可伸缩性频谱。粗略地说,基于PoW的区块链提供了良好的节点可伸缩性和较差的性能,而基于BFT的区块链为少量的副本提供了良好的性能,没有很好的探索和直观的非常有 限的可伸缩性。 这种区块链可伸缩性的当前状态如图1所示。考虑到复制数量和性能之间看似固有的权衡,今天还不清楚对于许多用例相关的“最佳点”来说,最优区块链解决方案是什么,在这些用例中,节点n的数量从几十到1000(或者几千)不等。

图1.本文讨论了PoW和BFT协议不同家族的性能和可伸缩性的说明。 接触到灰色区域的系 统的实际、现实世界的性能有待进一步研究。 因此,他们在灰色区域的定位目前完全是推 测性的,只是为了动机性的目的。

在本文中,我们概述了最近为提高频谱俩边的可伸缩性所做的一些工作,并在寻找“终极”区块链结构的过程中着重强调了有趣的方法和开放的问题。首先,在第二节中,我们比较了基于PoW的区块链和基于BFT状态机复制的区块链。然后,在第三节中,我们概述了扩展PoW和BFT协议的新方法。在第4节中,我们最后提出了几个有待解决的问题,这些问题将在不久的将来得到解决。

2 .Po W vs.BFT区块链

表1给出了一组重要的区块链属性的PoW共识和BFT共识之间的高级比较。这些属 性包括节点标识管理、共识最终性(或双重、在区块链中临时分叉的可能性)、共识节点和客户端数量的可伸缩性、性能(延迟、吞吐量、功耗)、对手的可容忍功率、网络同步假设,以及最后但并非最不重要的是,存在底层区块链协议的正确性证明。这组属性当然不是详尽无遗的,但我们认为它对于比较两个区块链家族具有代表性。在本节的其余部分,我们将更详细地讨论表1。

表1. 高级比较PoW和BFT区块链共识家族的一组重要的区块链属性。条目提出了理想的特征,并突出了一个共识家庭比另一个家庭的优势。

节点标识管理.如何在PoW和BFT协议中管理节点标识可能是它们最基本的区别。PoW区块链的特点是完全分散的身份管理——例如,任何人都可以下载比特币矿工的代码,并开始参与协议,基本上只知道一个对等点。这是PoW区块链的一个非常强大的特性,也是当涉及到所谓的“公共”区块链时,允许任何人参与其中的主要原因。这种公共区块链有时也被称为“无权限”区块链-无权限参与是由PoW实现的,因为PoW本质上解决了在匿名网络中臭名昭著的Sybil攻击。具体来说,在基于PoW的区块链中,节点影响PoW共识结果的能力取决于节点的计算能力。

相反,BFT协商一致的方法通常要求每个节点知道参与协商一致的整个对等节点集。这反过来又需要(逻辑上)集中的身份管理,其中受信任的一方向节点颁发身份和密码证书。从直觉上讲,基于BFT的区块链的这一方面使它相对于PoW区块链处于不利地位。尽管如此,在一些新兴的区块链应用程序(例如银行、金融、土地和房地产所有权分类账)中,出于法律和合规原因,无论如何都可能对节点的已知身份提出要求。这解释了为什么BFT共识协议是所谓的“许可”区块链的选择技术,这需要知道区块链参与者的身份。

共识的终结.粗略地说,通常被非正式地称为“共识终结性”(有时称为“前向安全”)的是一个属性,它要求在某一时间点附加到区块链上的有效块永远不会从区块链中删除。在标准的分布式计算术语中,“一致性终结性”来自总序(原子)广播的总序和协议属性的组合,这是所有状态机复制协议的原始基础(总序广播反过来相当于协商一致)。将此属性转换为区块链术语,可表述如下:

定义1(共识终局)如果一个正确的节点p在附加块b之前将块b附加到它的区块链副本中,那么没有正确的节点q在b之前将块b附加到它的区块链副本中。

基于PoW的区块链不能满足共识的最终性。要了解原因,请注意,除了不需要身份管理外,PoW还充当随机并发控制机制,其中块频率被调整,以便块冲突(即不同块的并发附加在

区块链)是罕见的。然而,由于并发控制只是概率的,而且在网络上的块传播可能需要一些时间,因此确实会发生冲突,从而在基于PoW的区块链上产生即使所有节点都是诚实的也容易发生的临时分叉。这些临时叉子(详情见图2)用比特币最长(最困难)叉规则或GHOST规则等规则来解决。然而,临时叉子的存在本身并不意味着协商一致的最终结果。正如我们在下面更详细地讨论的那样,缺乏共识最终性直接影响PoW区块链的共识延迟,因为事务需要后面跟着几个块,以增加事务最终不会被修剪和从区块链中移除的概率(我们说的是多块确认)。

图2. 说明违反协商一致的最终结果、分叉和解决冲突的情况。

相反,所有BFT和状态机复制协议都满足了协商一致的最终性。这使得基于BFT的

区块链与PoW相比具有明显的优势,因为应用程序、用户和智能合同可以立即确认最终将交易纳入区块链。

可伸缩性.虽然将区块链的可伸缩性问题(系统中的节点和客户端数目)与区块链性能(延迟和吞吐量)问题脱钩是不完全可能的,但我们首先关注的是POW和BFT技术在实践中已经被证明有效的节点和客户端的数量。

一方面,比特币网络具有数千个挖掘节点的特点,在实践中展示了基于PoW的区块链的节点可伸缩性。尽管如此,值得一提的是,将矿工分组到采矿池中(目标是分割采矿奖励,使采矿在财务上更可预测)困扰着比特币,有效地集中了加密货币。我们注意到,挖掘池集中化不是比特币的一个具体特征,而是更多的一个特征。

另一方面,一般来说,BFT和状态机复制被认为是可伸缩性差的协议(例如,参见Brewer的CAP定理)。然而,在复制传统应用程序(如数据库)以容错的背景下发明的BFT协议从来没有被真正地测试过它们的可伸缩性,例如,n=10或n=20节点,特别是考虑到许多区块链应用程序的相当温和的性能目标。直观地说,由于它们密集的网络通信,通常每个块涉及多达消息,BFT协议在数据库和系统社区中被认为是不可伸缩的。即使是对于其耐崩溃的对应程序,即Paxos、Zab和Raft等复制协议,也是如此,这些协议在许多大

规模系统中使用,但实际上只在少数几个复制件上使用。

最后,当涉及到客户端数量的可伸缩性时,PoW和BFT协议都支持数千个客户端,

并且规模很好。

性能.除了比特币每秒最多7笔交易的非常有限的性能(以当前块大小)和6块确认的1小时延迟外,基于PoW的区块链面临着固有的性能挑战。正如我们已经讨论过的,PoW区块链的两个主要性能相关参数是块大小和块频率。 以提高吞吐量为目标来增加块大小的代价是增加延迟,因为更大的块在网络上的传播延迟更长。这些较长的延迟反过来又对区块链安全产生了负面影响:较长的延迟可能会增加分叉的数量和发起双支出攻击的可能性,因为在PoW区块链中可能存在临时链叉和缺乏共识的最终性。当块频率增加时,类似的安全挑战也适用,目的是减少多块确认的延迟。在基于PoW的区块链中,如果调整块频率和块大小的确切安全含义一般而言涉及到,应该谨慎处理。考虑到这一点,有限的性能似乎是PoW区块链固有的,而不是特定实现的工件。

相反,现代BFT协议已经被证实以实际的网络速度延迟来维持数以万计的事务,不

仅作为原型,而且作为实用系统。

对抗. PoW和BFT考虑不同的对手。在PoW区块链中,重要的是对手控制的总计算(散列)功率。起初,比特币被认为是坚不可摧的,只要对手控制不到50%的散列功率。多年后,人们发现比特币的挖掘实际上是脆弱的,即使只有25%的计算能力被对手控制。相反,BFT投票方案最多容忍n/3损坏的节点。只有当网络被允许(不时地)完全异步时,这个界限才成立-加强同步假设使提高这个阈值成为可能。 经典的BFT共识的n/3阈值可以推广到一般的对手结构,其中对手可以控制节点的不同子集。

网络同步.比特币依赖于节点的本地时间来戳一个块。粗略地说,如果块的时间戳大于最后11个块的中位数,则该块被接受为有效。此外,时间戳在计算挖掘难度和保持块频率方面起着主要作用。因此,活的需要松时钟同步。然而,也可能损害区块链一致性的时间戳操作攻击是可以想象的(参见“Zeitgeist攻击”)。虽然这种攻击是针对主要的PoW区块链的,如比特币,但它们已经在一些PoWaltc oins的背景下成功地执行了。

BFT协议通常不依赖于任何物理时钟. 但是,由于FLP协商一致的不可能性结果, 最终需要同步通信来确保活动,因为协商一致是不可能在一个纯异步系统中与潜

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[255178],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图