前段时间,特斯拉创始人马斯克发推表示,狗狗币在理想情况下可将区块确认时间加快10倍、将区块大小增加10倍,并降低手续费用100倍,然后它将轻松获胜。
这个表态引起了加密行业很多KOL的批评,以太坊创始人Vitalik今日也撰文谈及此事,表示简单地提升区块链网络参数会导致更多的麻烦,并详细阐述了区块链网络提升性能所需要面对的问题与限制,故此链捕手对本文进行了翻译,并作出不影响原意的删减。
你能将区块链的可扩展性推进多远?正如马斯克希望的那样,你能否真正实现「将区块确认时间缩短10倍,将区块大小增加10倍并将手续费降低100倍」,而又不会导致极端的中心化并损害使区块链的基本属性?如果没有,你能走多远?如果你更改共识算法怎么办?更重要的是,如果你更改技术以引入诸如ZK-SNARK或分片之类的功能,会发生什么情况?
事实证明,无论分片与否,都有重要且相当微妙的技术因素限制了区块链的扩展性。在许多情况下,这些限制都有解决方案,但是即使有了解决方案,也存在局限性。这篇文章将探讨这些问题。
节点需要足够分散
在凌晨2:35,你会收到来自世界另一端合伙人的紧急电话,他帮助你管理矿池。从大约14分钟前开始,你的合伙人就告诉你,你的矿池和其他几个人从仍然承载着79%网络的区块链中分离出来。根据你的节点,多数链的区块是无效的。这里出现了余额错误:关键区块似乎错误地将450万枚额外代币分配给了一个未知地址。
一个小时后,你正在与其他两个小矿池进行电报聊天。你最终看到有人将一个链接粘贴到一条推特上,其中包含一条已发布的消息。这条推文的开头是「宣布新的链上可持续协议发展基金」。
到了早上,在推特与社区论坛上的争论无处不在。但是到那时,这450万枚代币中的很大一部分已经在链上转换为其他资产,并且进行了数十亿美元的DeFi交易。79%的共识节点,以及所有主要的区块链探索者和轻钱包的节点都遵循了这一新链条。也许新的开发者基金将为某些发展提供资金,或者也许所有这些都被领先的交易所吞并。但是,不管结果如何,该基金在所有意图和目的上都是既成事实,而普通用户则无力反击。
Vitalik Buterin:由于安全问题只用少量ETH质押:金色财经报道,以太坊联合创始人Vitalik Buterin由于担心安全问题和保持安全的复杂性,他只用少量的ETH质押。Buterin在Bankless Podcast上表示,他并没有把他所有的以太坊质押,只是 \"相当小的一部分\",因为在网络上安全投资需要多重签名,这仍然是一个棘手的过程。如果你把你的ETH质押,访问它的钥匙必须在某个在线系统上公开。为了安全起见,它必须是一个多重签名,而用于抵押的多重签名仍然相当难以设置,它在很多方面都变得很复杂。[2023/6/30 22:10:38]
这可以在你的区块链上发生吗?你所在区块链社区的精英可能协调得很好,包括矿池、区块浏览器和托管节点。他们很可能都在同一个电报频道和微信群组中。如果他们真的想对协议规则进行突然更改以促进自己的利益,那么他们可能会这样做。要使这种协同的社会攻击无效,唯一可靠的方法是通过被动防御,而这个群体实际上是分散的:用户。
想象一下,如果用户正在运行验证区块链的节点,然后自动拒绝破坏协议规则的区块,故事将会如何发展。如果每个用户都运行一个验证节点,那么攻击很快就会失败:一些矿池和交易所会在这个过程中分叉出来,看起来相当愚蠢。
但是,即使一些用户运行验证节点,攻击也不会让攻击者大获全胜;相反,它会导致混乱,不同的用户会看到不同的区块链视图。至少,随之而来的市场恐慌和可能持续的分裂将极大地减少攻击者的利润。驾驭这样一场旷日持久的冲突的想法本身就会阻止大多数袭击。
Paradigm研究合伙人Hasu的推特
如果你有一个由37个节点运行程序和80000个被动侦听程序组成的社区来检查签名和阻止区块头,则攻击者获胜。如果你的社区中每个人都运行一个节点,那么攻击者就会失败。我们不知道针对协同攻击的群体免疫力的确切阈值是多少,但有一件事是绝对清楚的:更多的节点是好的,更少的节点是坏的,我们肯定需要几十个或几百个以上的节点。
Vitalik:因FTX的中心化性质,其崩溃是不可避免的:11月12日消息,以太坊联合创始人Vitalik Buterin表示,FTX的巨大崩溃是不可避免的,因为它的中心化性质。在被问及FTX和其他加密货币公司今年的崩溃时,V神说:“今年我们看到了大量这样的事情,因为它们的模式从根本上说是坏的”。
Buterin指出,FTX的营销类似于“1930年代独裁者”的“个人主义风格”,这与加密货币精神完全相反。(decrypt.co)[2022/11/12 12:54:33]
节点工作的限制在哪里?
为了最大限度地增加可以运行节点的用户数,我们将重点放在常规的消费类硬件上。完整节点处理大量事务的能力存在三个关键限制:
计算能力:安全运行一个节点的CPU所需的百分比是多少?
带宽:考虑到当前互联网连接的现实情况,一个区块可以包含多少个字节?
存储:我们可以要求用户存储多少GB磁盘?另外,它必须多快才能被读取?
许多人错误地认为,使用「简单」技术可以使区块链扩展多远,这是由于对这些数字过于乐观。我们可以逐一审视以下三个因素:
1)计算能力
错误的答案:100%的CPU能力可以花在块验证上。
正确答案:大约有5-10%的CPU能力可用于块验证。
限制比例如此之低的主要原因有四个:
我们需要一个安全边际来覆盖DoS攻击的可能性;
节点脱机后需要能够同步区块链。如果我断开网络一分钟,我应该能够在几秒钟内赶上;
运行节点不应很快耗尽电池电量,使所有其他应用程序变慢;
节点还需要执行其他非区块生产任务,主要围绕在p2p网络上验证和响应传入的事务和请求。
Vitalik Buterin:加密开发人员将从“加密冬天”中受益:2月22日消息,在面临包括以太坊在内的所有主要加密货币的价格和市值快速下跌的情况下,Vitalik Buterin表达了他对这种情况的看法。Vitalik Buterin声称,许多开发商赞成熊市,因为它允许专注于开发技术最先进的产品和服务,而不会被金融和投机问题分心。V神认为,通过获得加密社区的适当认可,最可持续和最有效的加密项目可以从“加密冬天”中显着受益。
Vitalik Buterin 表示,他无法可靠地预测加密行业的未来动态。他考虑了以下两种主要情况。第一个是“加密货币冬天”,长期衰退将影响所有主要加密货币的资本化,包括比特币、以太坊等。(crypto.news)[2022/2/22 10:07:15]
请注意,直到最近,大多数对「为什么只有5-10%?」的解释专注于一个不同的问题:由于PoW区块是随机出现的,因此验证区块所花费的时间较长,会增加同时创建多个区块的风险。
有许多解决此问题的方法。但是这些修补程序不能解决其他四个问题,因此它们无法像许多人最初认为的那样在可拓展性方面带来巨大的收益。
并行性也不是万能的。通常,即使是看似单线程的区块链客户端也已经并行化:签名可以由一个线程验证,而执行则由其他线程完成,并且有一个单独的线程在后台处理事务池逻辑。而且,越接近所有线程100%的使用率,运行节点所消耗的能量就越多,并且抵御DoS的安全边际也越低。
2)带宽
错误的答案:如果我们每2-3秒就有10MB的数据块,那么大多数用户的网络速度都>10MB/秒,因此他们当然可以处理。
正确答案:也许我们可以每12秒处理1-5MB的块,虽然很难。
Vitalik:有研究证明 EIP 1559 大大减少了平均交易等待时间:1月18日消息,Vitalik今日在推特上转发了北京大学和杜克大学共同研究关于 EIP 1559的论文《EIP-1559的实证分析:交易费用、等待时间和共识安全》,并表示,此篇论文特别提到 EIP 1559 大大减少了交易的平均等待时间的确认。
据了解,这篇论文研究证明,EIP-1559通过简化费用估算、缓解区块内已付gas价格差异以及减少用户等待时间,大大改善了用户体验。然而,EIP-1559对gas费波动和普遍安全性的影响很小。此外,研究还发现,当以太坊的价格波动较大时,等待时间明显较长,研究还验证了较大规模的区块会增加兄弟区块的存在。[2022/1/18 8:56:09]
如今,我们经常听到关于互联网连接可以提供多少带宽的广告统计数据:通常听到100Mbps甚至1Gbps的数字。但是,由于以下几个原因,宣传的带宽数据和实际带宽之间存在很大差异:
「Mbps」是指「每秒数百万个比特」,一个比特是一个字节的1/8,因此需要将宣传的比特数除以8才能得到宣传的字节数;
就像所有公司一样,互联网提供商经常说谎;
总是有多个应用程序使用相同的互联网连接,因此节点无法占用整个带宽;
p2p网络不可避免地会带来其自身的开销:节点经常会多次下载并重新上传同一区块。
当Starkware在2019年进行实验时,他们首次发布了500kb的区块,这是因为交易gas成本的降低首次使这种可能性成为可能,实际上有几个节点无法处理该大小的区块。
自那以后,区块链处理大型数据块的能力已得到提高,并将继续提高。但无论我们做什么,我们仍远不能天真地获得以MB/秒为单位的平均带宽,说服自己我们可以接受1s的延迟,并能够拥有如此大小的数据块。
以太坊创始人Vitalik看好以太经典属不实消息 只是提醒社区不要太浮躁:今日,有传闻称以太坊创始人Vitalik Buterin不再看好以太坊(ETH),转投以太经典(ETC),经核实其属于不实消息,Vitalik发布的推文只是提醒社区成员不应过于浮躁,他表示,如果大家关注的只是“兰博基尼”这些东西,那么他会选择离开。 ????[2017/12/28]
3)存储
错误答案:10TB。
正确答案:512G。
正如你可能猜到的那样,这里的主要论点和其他地方一样:理论和实践之间的区别。理论上,你可以在亚马逊上购买8TB的固态硬盘。实际上,用来写这篇博客文章的笔记本电脑有512GB,如果你让人们去买自己的硬件,他们中的许多人会变得懒惰(或者他们买不起800美元的8TB固态硬盘),而使用中心化的供应商。
而且,即使你可以将区块节点安装并运行到一些存储磁盘上,高水平的活动也很容易迅速烧毁磁盘,迫使你不断地购买新磁盘。
此外,存储大小决定了新节点能够联机并开始参与网络所需的时间。现有节点必须存储的任何数据都是新节点必须下载的数据。初始同步时间(和带宽)也是用户运行节点的主要障碍。在写这篇博客时,同步一个新的geth节点花了我大约15个小时。
分片区块链的风险
如今,在以太坊区块链中,运行一个节点已经对许多用户构成挑战。因此,我们遇到了瓶颈。核心开发人员最关心的问题是存储大小。因此,目前,在解决计算和数据瓶颈方面的努力,甚至是对共识算法的更改,都不太可能导致大量的gaslimit增加。即使解决了以太坊最大的突出DoS漏洞,也只能使gaslimit增加20%。
解决存储大小问题的唯一方法是无状态和状态到期。无状态性允许一类节点在不维护永久性存储的情况下验证区块链。状态到期会清楚最近未访问的状态,从而迫使用户手动提供续订的证明。
这两种路径都已经使用了很长的时间,并且关于无状态性的概念验证实现也已经开始。这两项改进相结合,可以极大地缓解这些担忧,并为大幅提高gaslimit打开空间。但是,即使在实施了无状态和状态到期之后,gaslimit可能也只能安全地增加大约3倍,直到其他限制开始占主导地位为止。
分片从根本上绕过了上述限制,因为它将区块链上包含的数据与单个节点需要处理和存储的数据解耦。它们使用先进的数学和密码技术来间接验证区块,而不是节点通过亲自下载和执行来验证区块。因此,分片区块链可以安全地拥有非分片区块链无法达到的交易吞吐量水平。这确实需要大量的密码学智慧来创建高效而简单的完全验证方式,成功地拒绝无效区块,但这是可以做到的:理论已经很成熟,基于规范草案的概念验证已经在进行中。
以太坊正计划使用二次方分片,因为节点必须能够处理单个分片和信标链(必须为每个分片执行一定数量的管理工作),所以总可拓展性受到限制。如果分片太大,节点将无法再处理单个分片,如果分片太多,节点将无法再处理信标链。这两个约束的乘积形成了上限。可以想象,通过进行立方分片甚至指数分片,可以走得更远。在这样的设计中,数据可用性抽样肯定会变得复杂得多,但这是可以做到的。但是,以太坊不会比二次曲线走得更远。原因是,交易分片实际上无法实现额外的可拓展性增益,除非其他风险变得非常高。
那么这些风险是什么?
1)最小用户数
可以想象,只要有一个用户愿意参与,非分片区块链就可以运行。分片区块链不是这样的:没有一个节点可以单独处理整个区块链,因此需要足够的节点来一起处理。如果每个节点可以处理50个TPS,而区块链需要处理10000个TPS,那么链上至少需要200个节点才能运行。
如果该区块链在任何时间出现少于200个节点的情况,那要么节点无法跟上区块链,要么节点无法检测到无效区块,或者可能会发生许多其他不良情况,这具体取决于节点软件的安装方式。
如果分片区块链的容量增加10倍,则最小节点数也将增加10倍。那么,你可能会问:为什么我们不从一点点容量开始,在看到大量用户涌入时再增加容量;而如果用户数减少,则减少容量?因此我们能掌握实际需要它的部分。?
这里有一些问题:
区块链本身无法准确地检测到有多少个唯一节点,因此这将需要某种治理来检测和设置分片数量。超出容量限制很容易成为分裂和冲突的源头。
如果许多用户突然意外退出,该怎么办?
增加分叉启动所需的最小节点数,会使得抵御恶意收购变得更加困难。
几乎可以肯定,最低节点数最好不超过1000。因此,似乎很难证明具有超过数百个分片的区块链是合理的。
2)历史可检索性
用户真正珍视的区块链的重要属性是永久性。当公司破产或失去维护该生态系统的能力时,存储在服务器上的数字资产将在10年后被清除。另一方面,以太坊上的NFT是永久存在的。
是的,人们将在2371年仍在下载和检索你的加密猫。
但是一旦区块链容量过高,存储所有这些数据就会变得更加困难。如果某个时刻遇到了很大的风险,历史的某些部分中将没有人来存储。
量化这种风险很容易。以区块链的数据容量为单位,乘以30即可得到每年以TB为单位存储的数据量。当前的分片计划的数据容量约为1.3MB/秒,因此约为40TB/年。如果将其增加10倍,则将变为400TB/年。
如果我们希望数据不仅可以访问,而且可以方便地到达,则还需要元数据,因此每年需要4PB,或者10年后需要达到40PB。这是大多数分片区块链可以安全获得的合理上限。
因此,看起来在这两个维度上,以太坊分片设计实际上已经大致瞄准了相当接近合理的最大安全值。参数可以增加一点,但不能增加太多。
总结
尝试扩展区块链的方法有两种:基本的技术改进和简单的增加参数。首先,增加参数听起来很有吸引力:如果你在餐巾纸上进行数学运算,就很容易说服自己,家用笔记本电脑每秒可以处理数千笔交易,不需要ZK-SNARK、rollups或分片。不幸的是,这种方法从根本上有缺陷,其中有很多微妙的原因。
运行区块链节点的计算机无法耗费100%的CPU容量来验证区块链;他们需要很大的安全边际来抵抗意外的DoS攻击,他们需要备用容量来执行诸如在内存池中处理的事务。并且用户不希望在计算机上运行节点以使该计算机无法同时用于任何其他应用程序。
带宽同样也有开销:10MB/s的连接并不意味着你每秒可以拥有10MB的块,每12秒最多可能有1-5MB的块,与存储相同。增加运行节点的硬件配置并将节点的运行限制在特定参与者上并不是解决方案。对一个要去中心化的区块链来说,普通用户能够运行节点并且拥有一种运行节点的常见活动文化是至关重要的。
基本的技术改进肯定是起作用的。当前,以太坊的主要瓶颈是存储容量,无状态性和状态到期可以解决此问题,并允许将其增加多达约3倍,因为我们希望运行一个节点比现在变得更容易。分片的区块链可以进一步扩展,因为分片的区块链中没有单个节点需要处理的交易。
但即便如此,容量还是有限制的:随着容量的增加,最低节点数也会增加,而归档链的成本也会增加。
但是我们不必太担心:这些限制足够高,我们可以在区块链完全安全的情况下每秒处理超过一百万笔交易。但要做到这一点,而不牺牲区块链的去中心化,还需要付出努力。
作者?|?VitalikButerin
编译?|?Alyson
昨日,内蒙古发展改革委公众号发布了关于对《内蒙古自治区发展和改革委员会关于坚决打击惩戒虚拟货币“挖矿”行为八项措施》公开征求意见的公告,一些矿圈的读者向我们留言询问有关政策该如何理解的相关问题.
1900/1/1 0:00:00亲爱的AEX安银小伙伴:AEX安银将于2021年05月26日日11:00上线GTC并同步开通USDT交易对。我们将同步开启“GTC全球首发,瓜分18,888GAT”活动.
1900/1/1 0:00:00亲爱的用户:币安逐仓杠杆已增加BURGER、MASK、MDX资产,并开放BURGER/BUSD、BURGER/USDT、MASK/BUSD、MASK/USDT、MDX/BTC、MDX/BUSD、.
1900/1/1 0:00:00本文来自:链捕手,作者:VitalikButerin,编译:Alyson,星球日报经授权转发你能将区块链的可扩展性推进多远?正如马斯克希望的那样,你能否真正实现「将区块确认时间缩短10倍.
1900/1/1 0:00:00Glassnode数据显示,从上周三市场崩盘开始,持有10,000至100,000枚BTC的比特币巨鲸总计购买了122,588枚BTC。这表明新入场的持币者确实在进行恐慌抛售,而巨鲸在继续接盘.
1900/1/1 0:00:00对于任何想要进入加密货币甚至创造自己的代币的人来说,MEME类项目是一种公平的游戏。所需要的只是一份加密货币合同和一些交易网站上的一些账户.
1900/1/1 0:00:00