作者Ayukawayen (鮎川彦)
看板DigiCurrency
标题Re: [闲聊] 治理 分叉 开发 去中心化 的讨论
时间Mon Jun 13 22:04:06 2022
想起以前看Vitalik讲UASF(使用者驱动软分叉)和UAHF(使用者驱动硬分叉)的文章的心得
软分叉和硬分叉的差别在:
软分叉後新节点产生的区块,未升级的旧节点也会接受。
硬分叉後新节点产生的区块,未升级的旧节点不会接受。
(包含非矿工的客户端,虽然只有矿工节点会产生区块。其他节点只接收并判断是否接受)
再考量旧节点产生的区块新节点是否接受就可以列出以下四种情形:
新节点 接受 旧节点的区块 新节点不接受旧节点的区块
旧节点 接受 新节点的区块 A B
旧节点不接受新节点的区块 C D
照此定义,AB是软分叉,CD是硬分叉。
UASF应该是B,目的是旧节点不必要升级,只需要足够矿工节点升级。
UAHF是D。
(状况A感觉有点像没有分叉,只是加了新协定,因为彼此的区块都可以接来接去)
结果就是
UAHF:
我的链比你短的时候,你不接受我的链。你的链比我短的时候,我不接受你的链。
我的链比你长的时候,你还是不接受我的链。你的链比我长的时候,我也还是不接受
你的链。
UASF:
我的链比你短的时候,你不接受我的链。你的链比我短的时候,我不接受你的链。
我的链比你长的时候,你会接受我的链。但你的链比我长的时候,我不接受你的链。
而且如果你的链现在比我长,但未来哪一天你的链比我短了一个单位(注:链的长短是
用难度判断而不是区块数),那你的链会被替换成我的链,相对地不管我的链比较短的
状态持续多久,我都不会换成你的链。
※ 引述《azuel (Observer)》之铭言:
: 经典的案例就是ETH hardfork之後,原本的"旧ETH"本应该要死了,但节点和矿工还在
: 运作,因此旧规则的ETH被改名成为ETC。
: 新旧谁好是不一定的事情,ETC是老字号但是打不赢ETH,BSV是新品牌但是打不赢BCH。
: 当然ETC之後,ETH还是经历过了几次的hardfork,都没有再发生一样的事情,多少也
: 显示了早期ETC事件留下来的经验,对於後续hardfork有比较完善的处置。
The DAO fork的背景是:确实没有共识而且未来也不会有共识,这个分歧比较是哲学性
而不是技术性的分歧。少数派即使知道自己是少数也不打算接受多数派的立场。
所以这次分叉的选项应该是对共识分歧的处理方式,而不是技术升级的处理方式。
和其他升级分叉的状况有所不同。
最後是硬分叉让没有共识的两个群体分开形成两条链。
(不过The DAO事件大概也不容易用软分叉解决)
Vitalik的意思大概是这样:
用软分叉处理共识分歧,等於强制少数派接受多数派的选择。
硬分叉後少数派还有一条比较小的链可以跑自己的规则,软分叉的话连小的链都没有了
,一定要留着照多数派的规矩跑(因为新节点产生的区块旧节点会接受,无法阻止新节点
区块上链)。
事实上这也没办法解决共识分歧,像BCH後来自己就硬分叉出新的链不跟多数派玩了。
--
ethereum:0x09B25bd7d9B8dE2914C8314a2E0059A6a8ADEadE
polygon :0x09B25bd7d9B8dE2914C8314a2E0059A6a8ADEadE
smartbch:0x5a8B6db897003C8aFA62066d3bE876Fd8BBe9082
bitcoincash:qqjzmy6mjp8sp97c7thhflv9s2j96xk0q5pr26dftl
simpleledger:qqjzmy6mjp8sp97c7thhflv9s2j96xk0q5dcppcf4p
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.243.24.157 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DigiCurrency/M.1655129050.A.48A.html
※ 编辑: Ayukawayen (111.243.24.157 台湾), 06/13/2022 22:33:40
1F:推 john371911: 推。好复杂。 06/14 00:50