在最近的YouTube访谈中,瑞安·查尔斯(Ryan X. Charles)和nChain首席技术官史蒂夫·施德斯(Steve Shadders)讨论了即将在2月份推出的比特币SV(BSV)网络创世(Genesis)协议升级的具体细节。访谈的主题围绕比特币规则和共识规则之间的差异。本文旨在阐明这些问题,并就如何保持比特币SV网络向前发展提供一些观点。
什么是比特币规则?
比特币规则定义为所有节点都必须遵守的规则集。一个例子是通货膨胀时间表(50 -> 25 -> 12.5 -> 6.25…),以及代币可以铸造的时间(只有当找到一个区块,coinbase交易)。
什么是共识规则?
共识规则定义为在给定时间点,哪些节点必须同意有效的内容。例如,在类星体(Quasar) 升级中,默认区块大小为2GB。节点可以随时更改此设置,而且矿工似乎大多已设置了512MB的上限,因为我们还没有看到超过此上限的区块。
[caption id="attachment_241564" align="aligncenter" width="625"]

图片来源:
Blockchair[/caption]
有何区别?
施德斯在
&t=259" target="_blank" rel="noopener noreferrer">@4:19解释了这一点,因为比特币规则是不可变的 (无法更改) ,而共识规则是可变的。我要补充的是,未来共识规则将受市场力量的引导,而不是一成不变。
创世升级的真正目的是消除协议开发人员的中央规划,使矿工能够控制网络,根据市场力量管理自己的设置,并允许他们无限扩容。
通过取消比特币核心施加的所有限制并优化软件,比特币SV节点团队为矿工们提供了一个良好的起点,开始拥有这个网络。
矿工与协议开发人员之间的关系
过去,默认设置决定了矿工如何管理节点。默认值不会更改,因为没有动机这么做。区块奖励大部分是固定的;费用相对较低,而矿工的利润率大多与其相对的哈希值有关。随着块状奖励的减少,交易费用必须弥补损失的矿工收入,以稳定采矿动机。因此,矿工必须能够处理大量交易,才能获得前进的费用,这意味着节点软件必须能够扩容。
目前为止,在BTC、BCH和大多数BSV中,矿工们已经采取了经济计划,并允许未雇用的协议开发人员指导他们如何开展业务。这是荒谬的。
直到去年,我们才看到BSV矿工对网络拥有更多的控制权,这主要是因为协议开发人员对规则集的定义变得更加宽松。
在类星体升级中,该软件不太可能能够处理2GB的区块。即使矿工试图开采这么大的区块,它也会被其它节点拒绝,因为他们可能已经设置了较低的上限。矿工不想冒着跳出来可能导致亏损的风险,因此他们与其他矿工达成了共识。
这里的区别是关键的;矿工们共同建立了这个512MB的上限,而不是被告知要设置该上限。这是交易的供求关系和所谓的竞争机制。
OP_Codes必须是不可变的
[caption id="attachment_241567" align="aligncenter" width="568"]

资料来源:
Twetch[/caption]
通过使op_codes可变并禁用某些代码,因为它们“太难”修复,限制了许多潜在的用例。围绕op_codes的分歧产生的戏剧性后果甚至是将比特币现金从比特币SV分裂的因素之一。
锁定比特币的编程语言非常重要,因为它与
&t=660" target="_blank" rel="noopener noreferrer">可消费和不可消费的代币保持一致。如果代码被任意禁用,旧的代币可能变得毫无用处。此外,通过增加评估方式的复杂性,代币可能会被盗——这正是核心通过添加P2SH和Segwit所做的。