专业的
中文比特币论坛

比特币协议升级——分叉详解

比特币协议升级——分叉详解

比特分叉币,一个瞅着挺具技术感的词汇,背后实则是个超繁杂且引人入胜的系统工程。从起初的一个思路,到最后于全球范畴内成千上万的节点上运行,此间历经了理念的冲撞、代码的编撰、社区的较量以及最后的用户抉择。介入其中的人,来自四面八方,讲着各异的语言,有着天差地别的文化背景与技术信仰,却得协同一致,推进一个去中心化网络的升级。这事本身,就仿若一场对人类协作能力的极限检验。哪怕最终比特币确实走向了失败,在这一历程当中所累计的经验以及所吸取的教训,也完全能够得到理解,甚至能够被铭记于心。

对我们这般普通的比特币用户来讲,面对这般宏大的工程,第一步并非去编写代码,也并非去拉拢矿工,而是明晰地领会其中的概念。唯有领会了,方才能看懂新闻,方才能做出自身的判断,才会知晓自己手中的币究竟发生了什么。

比特币是基于一套软件所构成的,我们得清楚这一点。它类似手机里的微信,存在不断升级的需求,要修复漏洞,增添新功能,甚至优化界面。微信由腾讯公司掌控,点击一下“更新”即可币圈合约,这是简单易行的,就算不更新,也不过是无法发送新表情包,却并不妨碍与他人聊天。可比特币不同,它不存在一个中心化的“公司”,是通过全球无数台运行软件计算机形成其共同维护的网络,所以比特币的升级极为复杂。

其中大部分并非关乎核心规则所在的升级情形,在实质上的确与微信大致好像,堪称是处于“可供选择进行更新”的类别范畴。要是你实施了升级操作,那么便能够运用上新的区块链领域里所具备的全新特性状况;要是你并未选择升级,同样是依旧能够于旧有的环境当中正常开展收发交易的行为举动,对于它所产生的影响程度并不是很大的。

但是,一旦关联到比特币最底层规则的修改,像区块大小、共识算法这类核心特性,又或者修复了一个会导致网络瘫痪的重大漏洞,情形就全然不一样了。这时,就要求诸多个人中绝对大多数人——从事矿井之人、交易场所、普通使用者——都达成统一意见,同时升级到新版本的软件,网络方可平稳过渡。这种核心层面的重大升级,便是我们时常提及的所谓“分叉”。

因此,千万别一听闻分叉便恐惧。于比特币的领域当中,分叉常常意味着一回关键的特性进展。它好似一场精心筹备的、需多方协同合作的大规模转移。

可将这个过程划分成前后两个半场,其中上半场是“图纸设计”,下半场是“施工落地”。

我们能将上半场的故事,想象成一个发生在办公室里的故事。某天,有个身为开发者的员工,觉得当下办公流程存在一处能够改进的地方,就比如说采购申请单的格式类似于比特币协议太陈旧了,需要增添一个“紧急程度”的选项。他撰写了一份详尽的建议也即比特币改进提案,BIP,发送到了公司群里也就是开发者邮件列表、论坛。大家开始七嘴八舌展开讨论,有人讲这个想法不错,有的人说会加重财务的负担,另外还有人提出了更优的修改方案。几次经历“撕扯”以及得到进行修改这个状况以后,最终大致得到于众多人员而言的认可,关于这个改进方面的情况。于是,这位员工着手开始对申请单的模板予以修改,也就是将想法转变成为代码。

在代码范畴内,此过程极为严谨。比特币代码最初由中本聪置于一个名为GitHub的代码托管平台上,进而形成了一个主代码仓库,也就是master branch。其他程序员目睹后,若想于其上进行某些改进,并非能直接在主仓库处修改,而是得先将一份完整代码复制至自身名下,这便是Fork,即复制分支。身处自身的这个分支当中,他能够毫无拘束地增添新特性、对代码予以修改变更。待他认为代码已然编写完成,便会朝着主代码仓库的管理者递交一份申请,这份申请称作Pull Request(简称为PR),其含义是“恳请将我所撰写的代码融入进去”。

能够对主代码进行维护的那些人,会针对这个PR展开审核,若是代码具备较高质量,且思路良好,还契合比特币的发展方向,那么就会通过审核,将处于这个分支上的代码,通过Merge的操作合并进主仓库,到了这个时候,新功能所对应的代码便正式成为了比特币官方代码构成中的一部分。要是审核没能通过,开发者能够选择去关闭PR,或者,要是他笃定自己的方向没错,他能够直接自己重新开始,从这个分支着手,构建一个全新的、独自运行的项目——这便是另一种含义上的“分叉”,像后来的比特币现金(BCC)便是如此产生的。这里所讲的“分叉”意指的是代码层面的分道扬镳。

是这样的,图纸已然设计完毕,嗯,代码也已经写完,如此这般比特币软件便拥有了新老两个不同的版本。紧接着到来的便是下半场,具体是怎样的,那便是思索如何能够使得全世界范围内的用户以及矿工都去安装上这个全新的版本?这可是决定比特币网络究竟是能够成功实现升级还是会走向分裂的最为关键的时刻。

下半场的关键所在是以共识为核心,新版本的软件需要与老版本达成兼容状态,又须提供一条平稳顺畅的过渡路径,此处涵盖两个核心工具,分别为软分叉与硬分叉,大致理解起来,软分叉属于那种具备向后兼容性的升级方式,类似于你将马路的车道宽展了,然而老司机仍然能够于原先的车道上行驶,只是无法享受到新车道所带来的便利之处。硬分叉是那种“不兼容”的升级,这就好比你对交通规则做了改变,把原本靠左行驶变成了靠右行驶,如此一来,在新旧规则之下的汽车是没办法在同一条道路上行驶的。

倘若升级关联硬分叉,并且众人未能达成一致,那么网络的确会一分为二。一部分人运行遵循新规则的软件,造就一条新链以及新币种;另一部分人坚守旧规则,留在老链之上。2017年的比特币现金(BCC / BCH)便是这般情形。那时,一部分矿工与开发者觉得应当借助硬分叉直接扩充区块,他们安装了含有新特性的ABC版本软件;而另一大部分人则更倾向于经由隔离见证等软分叉方案去解决问题,留在了原本的核心版本上。彼此之间相互处于不兼容的状态,一条链由此分裂成为两条,进而诞生了比特币这个币种,以及比特币现金这个币种。

基于此情形能够明显看出,比特币分叉可不是一个单纯的技术方面的动作行为,而是一场将技术、治理以及博弈融合为一体的繁杂的社会性质的实验。对于其前半程予以理解明白,就是要知晓代码是怎样进行演进变化的;对于其后半程予以理解明白,就是要明白共识是如何得以形成的。对于我们这些普通的用户而言,所能做的事情便是持续保持学习进取的态度,将这些相关概念搞清楚弄明白,这样子才能够在喧嚣热闹的市场环境当中,看懂每一次升级背后所蕴含的逻辑道理,从而做出属于自身的理性的选择决策。

币圈合约带单-丽金财经

赞(0)
未经允许不得转载:丽金财经 » 比特币协议升级——分叉详解

评论 抢沙发

丽金财经

丽金财经是专业的中文比特币论坛,比特币用户可以在论坛上分享对数字货币以及币圈的经验和见解。丽金财经帮助新人学习和了解元宇宙区块链世界。