作者:VitalikButerin
原标题:《HardForks,SoftForks,DefaultsandCoercion》
发表时间:2017年3月14日
在区块链的相关话题讨论中,有一个非常重要的讨论是关于:在协议升级机制中,是首选软分叉好还是硬分叉好。软分叉和硬分叉的一个基本区别在于,软分叉通过严格地减少有效的交易数目来改变协议的规则,所以遵循旧协议规则的节点们依然可以保留在新的链条上,而硬分叉则是说允许先前无效的交易和区块使他们变得有效,所以用户们必须升级他们的客户端,这样他们才可以留在硬分叉后的新的链条上。在硬分叉中,有两种子类型的硬分叉:1.完全扩展硬分叉,其完全地拓展有效的交易集,并且因此旧规则能够有效地兼容新规则,2.双向硬分叉,并且其中的两个规则集均不兼容。
这里用一张维恩图来说明分叉的类型:
通常引用的两个优点如下所示:
硬分叉会使得开发人员在进行协议升级时会更具有灵活性,因为他们不需要额外考虑这个新的规则是否适合旧的规则。
Chain Hill Capital推出6000万美元Web3游戏专项基金,专注亚洲区块链游戏领域:4月12日消息,Chain Hill Capital宣布推出一支规模为6000万美元的Web3游戏专项基金,旨在积极投资亚洲区块链游戏领域,并助力Web3游戏走向主流游戏玩家。该基金将致力于支持亚洲游戏创业者,带来高品质的Web3游戏。
此外,Chain Hill Capital还将与来自腾讯游戏、育碧、网易游戏的专家顾问为投资项目提供全方位的支持和指导。[2023/4/12 13:58:37]
软分叉对用户而言更加方便,因为用户们不需要额外的升级就可以继续保持在新的链条上。
软分叉不太可能会导致链条分裂。
软分叉在真正意义上来说,只需要得到矿工们/验证器们的同意。而硬分叉则需要用户选择同意。
除此之外,硬分叉的主要批评点在于,硬分叉都是“强制性”的。这里所指的强制性不是指得物理的力量,相反,她是网络效应的一种强制性。也就是说,如果网络将规则从A改到了B,那么即便你个人更偏向于A,如果大多数用户都喜欢B并且切换成了B,那么即便你个人不喜欢B,也不赞同切换成B,但是为了能够和其他人同步留在同一个网络上,你也必须切换成B。
Web3安全基础设施Trusta Labs完成超300万美元种子轮融资:1月17日消息,据官方推特,Web3安全基础设施Trusta Labs宣布完成超300万美元种子轮融资,SevenX Ventures和元璟资本(Vision Plus Capital)领投,HashKey Capital、Redpoint China Ventures、GGV Capital和SNZ Holding参投,所筹资金将用于新产品研发、促进新用户吸纳和转化以及对价值用户的留存和运营。据介绍,Trusta Labs专注于Web3安全基础设施,于2022年10月成立,并在次月获得Gitcoin Open Data Hackathon冠军。[2023/1/17 11:16:16]
硬分叉的支持者们通常被嘲笑为:试图对网络产生“恶意接管”的影响,并且“强迫”用户们与他们一起并行。此外,链条分裂的风险通常在于硬分叉是不安全的。
我个人观点是,这些批评指正是错误的。并且在许多情境下,这些情况往往是背道而驰的。这个观点并不是特定针对以太坊,或者是比特币,或者是其他的区块链;它源于这些系统的一般特性,并且适用于它们中的任何一个。此外,下面的论点只适用于有争议的改变,其中至少有一个选区有大部分不赞成;如果改变这件事情不是非常有争议性的话,那么它可以非常安全地完成,不管这个分叉的形式是怎么样。
Web3解决方案提供商AIKON完成1000万美元A轮融资:9月29日消息,Web3解决方案提供商AIKON宣布完1000万美元A轮股权融资,Morgan Creek Digital领投,Up2 Opportunity Fund、Hestia Investments、Yugen Partners、Mighty Capital、Alpha Edison和Think+ Ventures参投。新资金将确保AIKON能够加速扩大其区块链解决方案业务。
据悉,AIKON提供基于Open Rights Exchange (ORE) 网络的解决方案,由ORE代币提供支持,允许AIKON用户利用包括Ethereum、Polygon、Algorand、Telos、WAX等区块链的好处。AIKON正在增加对Avalanche区块链的兼容性,还发布了面向企业的加密和NFT多签钱包ORE Vault,产品已完成测试版,并为客户提供ORE ID的法币入口体验。(Newswires)[2022/9/29 22:38:50]
首先,让我们讨论强制性的问题。无论是软分叉还是硬分叉,都多多少少改变了协议的方式,使得部分用户不喜欢。尤其是当这个协议得不到100%支持的时候,改变这个协议会让一部分的用户不喜欢。此外,几乎不可避免的是,在任何情况下,异议者们更加重视与大部分人群保持同步的网络效应,这超过了他们对于协议上自己的偏好。因此,在网络效应这个意义上来说,两种分叉都是强制性的。
域名服务Velas Web3 Domains获Velas赠款计划资助:8月7日消息,区块链项目Velas发推称,Velas域名服务Velas Web3 Domains获得其赠款计划资助,成为Velas生态系统的一部分。
去年10月消息,总部位于瑞士的科技公司Velas已向建立在Velas区块链之上的初创企业拨款1亿美元,这比今年早些时候的500万美元初始承诺大幅增加。赠款计划旨在支持Velas生态的发展,并在Web3.0中扩展其功能。与同年8月份宣布的最初500万美元赠款计划一样,新的资金计划将为每个项目分配高达10万美元的资金。[2022/8/8 12:08:38]
然而,软分叉和硬分叉之间存在着本质性的区别:硬分叉是选择性加入,而软分叉则让用户无路可选。为了方便一个用户来加入一个硬分叉的链条,他们必须亲自安装软件包来实现分叉规则,并且不同意规则改变的用户群体们的反应,比他们重视的网络效应还要强烈,理论上他们可以停留在旧的链条上-而且,实际上,这样的事情已经发生了。
这在完全扩展硬分叉和双向硬分叉的情况下都是适用的。然而,在软分叉的情况下,如果分叉成功,那么没有分叉的链条就不存在了。因此,软分叉显然在体制上更偏向于强制而非分离,而硬分叉则有相反的倾向。我个人的道德观念使得我更支持分离而不是强制,虽然其他人可能不这么认为。
Web3应用Ramper获得300万美元种子轮融资:3月1日消息,Web3基础设施应用Ramper宣布获得300万美元种子轮融资,由Hashed领投,其他投资者包括Terra, Polygon, Goodwater Capital, Samsung NEXT, Golden Ventures, R7 Capital, 500 Global, Maple VC以及其他天使投资人。[2022/3/1 13:29:25]
如果我不得不猜测原因的话,尽管我刚刚说了这些依据,软分叉与硬分叉相比,依旧被列为“更少强制性”的选择,我会认为说,可能硬分叉给用户的感觉是,硬分叉“强制”用户们安装软件更新,而在软分叉的情况下,用户们什么都可以不用干。然而,我不得不说,这种直觉是错误的。重要的并不是个体用户是否必须执行简单的官僚步骤点击“下载”按钮,而在于用户们是否被强制要求接受一个协议的变化,即使他们根本是不想接受的。并且通过这个指标,如上所示,这两种类型的分叉最终都是强制性的,并且硬分叉在给予用户自由的这一方便还是稍微比软分叉要好的。
现在,让我们来看看极具争议的分叉,特别是那些矿工们/验证器喜好和用户喜好相冲突的分叉。这里有三种情况:(i)双向硬分叉(ii)完全扩展硬分叉,(iii)所谓的“用户激活软叉”,第四类是矿工在没有用户同意的情况下激活软分叉。晚一点我们会在后文提到它。
首先,我来讲讲双向硬分叉。在最为理想的情况下,这个情景就非常简单了。两个币在市场上进行交易,交易者决定两个币的相对价值。从ETH/ETC的案例中,我们有着绝大多数的证据表明,矿工们绝大多数都喜欢根据价格的比率来分配他们的算力给到币,以最大化他们的利润和收益,而不会考虑他们的历史形态观点来决定他们的算力分配问题。
即使一些矿工将意识形态偏好倾向于一方或另一方,那么极有可能会有足够的矿工愿意在价格比率和哈希算力之间的不匹配来套利,并且使价格比率和哈希算力形成一致。如果一系列矿工想要联合起来在这个链条上不进行挖矿,那么这个激励就会存在过度缺陷的问题。
这里有两个边缘位置的情况。第一个可能性是:由于低效的难度调整算法,挖矿的价值下降因为币的价值下降,但是挖矿的难度却并不会因此下降。这就会使得挖矿非常的不赚钱也不划算。没有一个矿工会在亏算不盈利的情况下继续推动链条往前走,直到它的困难恢复平衡。这不是以太坊的情况,但这及其可能是比特币的情况。因此,少数算力链很可能永远不会离开地面,因而它会死亡。请注意,这是不是一件好事,答案取决于你对强制和分裂的看法。从我上面写的个人观点来看,我认为这样的少数算力链敌对难度调整算法不是一件好事。
第二种边缘情况是,如果差异非常巨大,大算力的链条可以对小算力的链条发动51%的攻击。但即使是ETH/ETC分流比例在10:1,这种攻击情况也没有发生。所以这肯定不是一个确定的答案。然而,如果矿工在主导的链条上更喜欢强制性并且允许偏离分裂,那么这些矿工们总会有办法达到的。
接下来,我们来看看完全扩展硬分叉。在SEHF中,存在非分叉链条在分叉规则下有效的属性,因此如果分叉链具有比非分叉链更低的价格,那么分叉链的算力值会比非分叉链的算力值要更低,正因如此,非分叉链条最终会被原始客户端和分叉客户端所接受成为最长链。那么渐渐的,分叉链会被“淹没”。
有一个论点是这样认为的,这样的分叉成功是有强烈的故有偏见的,因为分叉链会被淹没被抛在价格中,使得币的价格更低,这使得分叉链被淹没的可能性更大。这个论点对我来说还是非常有道理的,所以这是一个很好的理由来进行双向硬分叉而不是一味地扩展。
比特币非常多的开发者们建议,在硬分叉发生后来手动进行双向硬分叉来解决这个问题。但是更好的选择是,使用内置的双向硬分叉。例如,在比特币的情况下来举例,你可以添加一些规则来禁止一些未使用的操作码,然后在没有分叉的链上进行包含了这个操作码的交易,所以在分叉的规则下,没有分叉的链在这个时候起,会永远的无效。在以太坊的案例中,关于计算状态如何工作的各种细节来看,几乎所有双向硬分叉都是自动的。根据不同基础架构,其他链条也会有不同的属性。
上面提到的最后一种类型的分叉是用户激活软分叉。在UASF中,用户可直接激活软分叉规则,而无需考虑是不是得到矿工们的共识;矿工们可能会被排挤在经济利益之外。如果有非常多的用户不跟随这个UASF,那么这个币就会被分割开,这将导致一个与完全扩展硬分叉情景相同的情况。即使UASF是选择性的,它也使用了经济的不对称性来使自己更偏向于成功。
然而,用户激活软分叉是一个危险的游戏。例如,我们来假设一个项目的开发人员想要创建一个UASF补丁,该补丁将以前接受所有交易的未使用操作码转换为只接受符合一些新功能的规则的交易操作码,这无论在上还是技术上都会有所争议,矿工都不太会会喜欢这个功能。矿工们有一个聪明又狡猾的方式来对抗这种情况:他们可以单方面地实施一个矿工激活软分叉,能够让使用了软分叉创建的功能总是会失败。
现在,我们有三种规则:
操作码X始终有效的原始规则。
操作码X只有在其他交易符合新规则时才有效。
操作码X始终无效的规则。
请注意,第2点是关于第1点的软分叉,第3点是关于第2点的软分叉。现在,第3点上有强烈的经济压力,因此软分叉并不能实现它的目标。
因此,我的结论是这样的:软分叉是一个危险的游戏,尤其是在它们是有争议的情况下,矿工们开始进行反击,这个游戏将会越来越危险。完全扩展硬分叉也是一个危险的游戏。矿工激活软分叉是强制性的,用户激活软分叉就没有那么的强制性了,但是由于经济上的压力的形成,用户自己选择激活软分叉多多少少还是有强制性在里面,这也具有一定的危险性。如果你真的想进行一个具有争议性的改变,并且坚持认为自己这样做付出的社会代价是值得的,那么你就做一个干净纯粹的双向硬分叉吧,花些时间添加一些重放攻击保护,然后让市场这个无形的手帮助你理清楚。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。