回答

0

有两种不同类型的变化,有以不同的方式进行部署:

  • 软叉:进一步限制了什么是有效的,哪些不是。
  • 硬叉:使以前无效的东西有效。

为了保持向后兼容性,即允许人们在感觉舒适时升级并且不受变化的影响,比特币目前仅限于执行软叉。在新规则下有效的事务和块在旧规则下也是有效的,因此未升级的节点也将它们视为有效,并且在版本之间没有持久分支。

在硬分叉中,网络的升级部分接受对未升级的节点看起来无效的东西,所以我们有一个持久分叉,其中升级的节点拥有自己的区块链,未升级的节点将拥有它们。这是一种危险的情况,因为从一个初始网络有两个网络,并且它们之间可能会有一些干扰(例如重放攻击)。这就是在以太坊对以太坊经典之叉发生的事情。

软叉的一个例子是segwit的建议:交易对非升级的节点仍然有效,他们将能够更新他们本地的分类账视图(虽然他们可能无法完全验证一个事务的有效性),升级后的节点强制执行扩展的有效性规则。另一方面,块增加是一个硬分叉,因为未升级的节点不会接受更大的块,停留在小块分叉上,而升级的节点会接受它们,从而创建一个大块分叉。

这些是基本的两种更新,虽然有一些混合版本,并且分类往往不那么清楚(由于系统的复杂性)。

引入新功能的另一种方法是在基本区块链(例如Lightning或Sidechains)上层叠附加功能。在这些方面,我们并不试图修改区块链,这需要大部分的社区参与,相反,功能是在较小的范围内实施的,只需要参与者选择参与,允许感兴趣的各方使用它或不。

(免责声明:我是闪电协议的实施者)

相关问题