摘要:然后這個主開發(fā)者會審批這個“pullrequest”,如果合格了,他就會將這部分代碼合并到主代碼庫,這個過程叫“merge”,中文譯成“合并”。如果主開發(fā)者認(rèn)為這個“pullrequest”不合理,他就會拒絕,英文叫“Close”。...
引言
比特幣分叉是一個非常復(fù)雜的工程。任何一次比特幣分叉,從理念提出,到社區(qū)討論,到代碼設(shè)計,到宣傳和推廣,到礦工和用戶部署,這是一個非常復(fù)雜的工程。這樣的工程其實(shí)在人類的分工協(xié)作歷史當(dāng)中甚至是算得上是史無前例的。參與比特幣的人和公司太多了,不同文,不同種,各自的背景相差太遠(yuǎn)太遠(yuǎn),但卻要協(xié)調(diào)一致。我們?nèi)祟愖鳛橐粋€物種,歷史上這是第一次干這樣的事。我們現(xiàn)在是歷史的見證人。無論我們怎么吵翻臉,執(zhí)有不同理念的人相互罵傻逼,都是可以理解的。哪怕是比特幣最后被我們搞失敗了,我認(rèn)為也是可以理解的。
其他區(qū)塊鏈產(chǎn)品的升級也差不多。
比特幣
第1章 比特幣分叉就是比特幣軟件升級
在這么復(fù)雜的工程面前,我們作為普通的用戶,可以做的第一件事就是清晰了解這個工程里的概念。這些概念是溝通的語言,是我們參與討論的基礎(chǔ)。好,我們先來搞清楚比特幣分叉這個最基礎(chǔ)的概念。到底什么是分叉?
比特幣就是一套軟件,這套軟件很復(fù)雜。我們這些玩比特幣的人,在各自的電腦上和手機(jī)上運(yùn)行這些比特幣相關(guān)的軟件,這些軟件要能相互連接,形成一個網(wǎng)絡(luò)。比特幣分叉就是比特幣這些軟件升級的過程。
我們使用微信,微信每隔幾個星期就要升級一個版本,增加些新功能啦,改改字體了,修修bug之類的。比特幣這套軟件同樣是要升級的,也想增加新功能,也要修改漏洞,也要做界面的美化。
你看我們在手機(jī)上裝一個微信,騰訊公司發(fā)布新版本時,其實(shí)我們往往是愿意升級就升級的,不愿意就拉倒。只不過是新功能你用不著而已。如果你用很老版本的微信,你不升級,如果我用最新的微信想跟你視頻,可能就會提示,對方微信版本太低,不支持視頻通話。
但比特幣網(wǎng)絡(luò)這套軟件,要比微信這樣的單一公司發(fā)布的產(chǎn)品要復(fù)雜很多很多。比特幣的升級也要復(fù)雜很多。比特幣大部分的特性升級,是和微信的升級差不多,用戶可以選擇升和不升,影響不大,只不過你能不能享受新特性的區(qū)別罷了。但涉及到一些核心層面的特性升級,以及一些重大漏洞的升級,那幾乎是要絕大多數(shù)人同時升級,才能勝利讓比特幣這套軟件勝利運(yùn)行下去。如果你不升級很可能就會出問題。一旦涉及到比特幣核心層面特性的變動,這樣的升級,往往就被稱為分叉。
所以不要怕分叉,比特幣要分叉了,就是要做一次重要的特性升級了。如果你是用微信,我們都喜歡新版本對吧,我們也需要新的手機(jī)對吧,為什么啊,因?yàn)橛猩壈 1忍貛欧植妫褪潜忍貛派壈。@是好事兒。怕什么怕,沒見過軟件升級嗎?得多沒見過世面,才會怕啊,鄉(xiāng)巴佬才怕。
比特幣分叉
第2章 比特幣分叉的前半部分——設(shè)計分叉
下面我們要高清楚的一些分叉過程的更細(xì)節(jié)的概念。因?yàn)楸忍貛欧植妫吘故且粋€很復(fù)雜的系統(tǒng)工程,為了完成這個工作要分很多步驟的。我以前是機(jī)械設(shè)計工程師,當(dāng)過好幾年的項目經(jīng)理,要管好一個項目,可難了,不過有方法論,叫項目管理,這是一套科學(xué),有很多書要讀。比特幣分叉也是一個項目,怎么執(zhí)行,怎么管理,也是要講科學(xué)的。我們先來講這套科學(xué)知識體系中的設(shè)計部分。
比特幣協(xié)議升級,一般是有人先提出一個概念,然后很多很多人都會去討論,然后有人寫成代碼,然后有礦工和用戶去測試和執(zhí)行代碼,然后就是分叉結(jié)束了。但慢慢來,我們先說前半部分,就是從概念提出到寫好代碼這部分。因?yàn)槲覀兘^大多數(shù)人其實(shí)不知道這些開發(fā)者是在干嗎的,到底怎么提概念,怎么討論,怎么寫代碼,最后誰的代碼說了算。
好,為了講明白比特幣分叉的前部分,我先給大家講一個故事,一個辦公室的故事。
你在一家公司的一個部門,比如火幣的產(chǎn)品研發(fā)部,部門一共5個同事,其中一個部門經(jīng)理。現(xiàn)在部門要向公司提交下個月的辦公用品采購計劃。部門經(jīng)理先用wrod文檔寫了一份采購申請單,并且在申請單上填上了自己計劃要買的東西。然后經(jīng)理將這個文檔上傳到部門的共享文檔上。
同事A將文檔復(fù)制了一份,然后在后面添加了自己想要采購的東西,然后上傳到共享文檔申請經(jīng)理審批。同事B、C、D也分別復(fù)制了一份,分別添加了自己想要買的東西,并且申請審批。
部門經(jīng)理審批了A的采購計劃,認(rèn)為合理,他就將A的需求合并到自己的那份申請單后面。接著部門經(jīng)理又審批了同事B的計劃,他認(rèn)為不合理,他就拒絕了B的需求,直接丟棄了B的計劃單。然后繼續(xù)審批C和D的。要么合并,要么丟棄。
然后這個同事B就很生氣,認(rèn)為這不合理,他就越過部門經(jīng)理,直接向公司提交了一份單獨(dú)的采購申請單。
好故事講完了,同志們,上面這個故事,就是一個典型的比特幣分叉的設(shè)計過程。把以上這個例子中的“采購申請單”,換成一個“程序開發(fā)項目”,上述過程就是一個典型的“立項”、“分支”、“請求”、“合并”、“分叉”的過程。
2009年有一個程序員,叫中本聰,寫了一個程序,叫bitcoin,將代碼上傳到了github,公開出去,形成一個主代碼倉庫,這個主代碼倉庫就叫bitcoin
然后有很多其他程序員看到了這個bitcoin代碼倉庫,覺得很有意思,就分別將這個代碼復(fù)制下來研究,形成一個“branch”(中文譯成分支),在分支上加上自己想要的特性,然后向主代碼管理員提交申請,叫“pull request”,中文叫“請求”。申請將自己的修改部分合并到主代碼倉庫里。
然后這個主開發(fā)者會審批這個“pull request”,如果合格了,他就會將這部分代碼合并到主代碼庫,這個過程叫“merge”,中文譯成“合并”。
如果主開發(fā)者認(rèn)為這個“pull request”不合理,他就會拒絕,英文叫“Close”。
但如果提這個“pull request”的人覺得他是對的,他可以獨(dú)立出去,不和這個主開發(fā)者玩了,自己立個項,取個別的名字,然后自己合并代碼。這樣就形成了一個“fork”,中文譯成分叉。這個分叉和比特幣協(xié)議升級的那個分叉不是同一個東西啊,名字相同,含義不同。
以上是所有參與者都是有開發(fā)權(quán)限的流程,但如果是一個項目組外的人,看到了這個項目,并且想提交一份特性的代碼“pull request”,那他就得先對這個主代碼倉庫進(jìn)行“fork”,然后再提交“pull request”。這個沒有開發(fā)權(quán)限的人叫沒有提交代碼權(quán),提交代碼權(quán)英文叫commit權(quán)限。
這就是開源軟件管理的過程。開源軟件的代碼更新,和漏洞修復(fù)都是使用這一套流程。
比特幣就是一套開源軟件,一開始有只有一個代碼倉庫,是中本聰建立的,叫Bitcoin,后來有很多人"fork"了Bitcoin,并提交了“pull requests”,然后被合并新代碼,比特幣就一直這樣走了很多年,特性變的越來越多,代碼也越來越復(fù)雜。也有人程序的請求沒有被合并,甚至有些人干脆自己“fork”并獨(dú)立出去,形成新的分叉。就形成了一個包含新特性升級的版本的比特幣軟件。
現(xiàn)在比特幣這套開源軟件有非常多的分叉,最著名的就是bitcoin core、bitcoin unlimited、bitcoin classic、bitcoin XT、Bcoin……
第3章 比特幣分叉的后半部分——執(zhí)行分叉
好,我們搞懂了比特幣分叉前半部分,那接下來就是分叉的后半部分。這就是中國人的主場了。這個分叉前半部分啊,其實(shí)沒啥咱中國人的事兒,都是人家美國人和歐洲的人主場,這就和中國足球隊跑到巴薩羅那去踢球,一丁點(diǎn)兒存在感都不會有。就是去被人欺負(fù)的。在2015年和2016年中國礦池老板和交易所還組織去美國跟開發(fā)者談判,人家吊都不吊你,根本就不帶你玩,就叫你玩泥巴。分叉這事啊,一直是老外欺負(fù)中國人。但到了分叉后半部分,老外就說,媽的,日了狗了,到了中國人的主場。
比特幣分叉的前半部分是將代碼寫好了,這時候比特幣軟件至少會有兩個版本,一個是不包含分叉的新特性的老版本,一個是包含分叉特性的新版本。有時候啊,分叉特性還會有好幾種不同的特性呢。就比如bitcoin core, Bitcoin unlimited、bitcoin classic、bitcoin XT、Bitcoin abc都是包含了不同特性的比特幣軟件。
比特幣分叉的后半部分就是用戶,特別是礦池和交易所要安裝這些分叉前半部分寫好的軟件版本,這里就存在你是否安裝新版本,還是要留在老版本上,如果你安裝新版本,你又是想安裝哪一個新版本呢?
這時候麻煩就來了,鐺鐺鐺鐺。。。。。比特幣分叉的前半部分是設(shè)計圖紙,后半部分是按讓圖紙上的設(shè)計工作起來,這是實(shí)際生產(chǎn)環(huán)節(jié),這個過程搞不好就會出問題的。
如果大家不統(tǒng)一安裝一個版本的比特幣軟件,就有可能會造成比特幣網(wǎng)絡(luò)的分裂,就會分成兩個幣。如果大家能夠統(tǒng)一安裝一個版本的比特幣軟件,或者安裝可以相互兼容的版本,那比特幣分叉勝利完成,比特幣網(wǎng)絡(luò)就會升級到新的版本。
BCC的分裂就是礦工們分成了兩波,其中一小波安裝了bitcoin abc這個包含了新特性版本的比特幣軟件,另一大波還留在原來的不包含新特性的比特幣軟件版本。從而導(dǎo)致了分裂的出現(xiàn)。
談到這個分不分裂的問題,就到了今天的高潮了。但是,高潮之前我們先來點(diǎn)前戲,我們先來搞懂兩個組織比特幣協(xié)議升級的工具,軟分叉和硬分叉。
第4章 比特幣分叉工具——軟分叉和硬分叉
我們講比特幣協(xié)議升級,什么叫升級啊,先拋開“升級”這個明顯帶有褒義的詞,我們說成是比特幣協(xié)議的修改,對吧。所謂的升級就是對協(xié)議的修改。
好問題來了,修改的具體含義是什么?請大家認(rèn)真思考,并謹(jǐn)慎回答這個問題,修改比特幣協(xié)議的具體含義是什么?給大家100秒的時間,現(xiàn)在倒計時,一百,一,時間到。答案揭曉。對任何協(xié)議的改變就存在兩種,一是規(guī)則收緊;二是規(guī)則放寬。對不對,對不對。對。
比如對比特幣區(qū)塊大小這個規(guī)則來說,現(xiàn)在的協(xié)議里的規(guī)則size<=1M,如果要擴(kuò)容,將區(qū)塊上限設(shè)定為size<=2M,這就是規(guī)則放寬。如果要縮容,將區(qū)塊上限設(shè)定為size<=5K,就是規(guī)則縮小。
另外還能派生出其他方法,比如先規(guī)則收緊,再規(guī)則放寬;或者先規(guī)則放寬,再規(guī)則收緊。但這本質(zhì)上是兩次規(guī)則修改,可以拆分來分析。
這種對規(guī)則的放寬舊節(jié)點(diǎn)是能識別的,因?yàn)樾乱?guī)則會超越老規(guī)則的范圍嘛,這樣舊節(jié)點(diǎn)會拒絕承認(rèn)。就比如老規(guī)則要求比特幣區(qū)塊大小<=1M,然后按新規(guī)則打包出一個2M的區(qū)塊,那老規(guī)則肯定拒絕承認(rèn)啊。
而對規(guī)則的收緊舊節(jié)點(diǎn)則無法識別,所以舊節(jié)點(diǎn)不會拒絕,但新節(jié)點(diǎn)會識別出超越了規(guī)則收緊后的舊節(jié)點(diǎn)行為,就會對舊節(jié)點(diǎn)進(jìn)行拒絕。
以上這兩段話非常重要啊,我再重復(fù)一下下,OK,現(xiàn)在我是復(fù)讀機(jī),復(fù)讀上面兩個氣泡。
對規(guī)則的放寬舊節(jié)點(diǎn)是能識別的,并且舊節(jié)點(diǎn)會拒絕承認(rèn)。而對規(guī)則的收緊舊節(jié)點(diǎn)則無法識別,所以舊節(jié)點(diǎn)不會拒絕,但新節(jié)點(diǎn)會識別出超越了規(guī)則收緊后的舊節(jié)點(diǎn)行為,就會對舊節(jié)點(diǎn)進(jìn)行拒絕。
結(jié)論來了,規(guī)則收緊就是軟分叉,規(guī)則放寬就是硬分叉。
為了更清晰地說明這個軟分叉還是硬分叉,我打一個比方。我們假設(shè)微信的視頻通話功能設(shè)了IP過濾功能,老版本呢,只能允許中國的IP地址使用視頻通話功能。如果馬化騰搞出一個新版本來,將視頻通話功能的IP列表加上了美國的IP,那就是規(guī)則放寬了。這時候老版本就不讓啊,哎,怎么有來自美國的IP,給Y屏蔽了,不讓它跟我們視頻,分叉。這就是硬分叉。
但如果馬化騰搞了一個新版本的微信,并且只允許北京市的IP地址才可以視頻通話,其他的地方都不能視頻通話,那這就是規(guī)則縮小。老版本一看,哎呀,來自北京的朋友啊,來來來,我們來視頻通話,接受啊,不分叉。這就是軟分叉。但新版本一看,你妹,你的IP來自廣東,給你屏蔽了,分叉。所以對新版本來說,老版本就是一個硬分叉。
OK,但是,先別開心,還有更復(fù)雜的設(shè)計 。
但這兩種都是對現(xiàn)有的規(guī)則進(jìn)行修改,如果在現(xiàn)有規(guī)則的基礎(chǔ)上再增補(bǔ)新規(guī)則呢?或者對現(xiàn)有規(guī)則的基礎(chǔ)上進(jìn)行刪除規(guī)則呢?這種情況就非常特殊了。
如果要對比特幣部署一個協(xié)議改變,這個改變是增加一個新規(guī)則,請問,這是規(guī)則收緊呢,還是規(guī)則放寬呢?答案是要看情況。
如果老規(guī)則明確定義清楚了,不允許出現(xiàn)這個新規(guī)則,答案就是規(guī)則放寬,如果老規(guī)則的定義不清楚,對這個新規(guī)則是模糊的,出了就視而不見,那就是規(guī)則收緊。而同樣的,前者就是一個硬分叉,后者就是一個軟分叉。
隔離見證就是一個典型的增加新規(guī)則的分叉。在比特幣交易驗(yàn)證的老規(guī)則下,是有一個叫anyonecanspend的交易,就是發(fā)一筆交易,這筆交易任何人都可以花,這種交易在老規(guī)則下是合法的。然后隔離見證就是利用這個老規(guī)則,增加了一個新規(guī)則,驗(yàn)證這個anyonecanspend的交易需求額外增加一個條件,就是難度見證數(shù)據(jù),就是witness數(shù)據(jù)。這就是規(guī)則的增補(bǔ),但因?yàn)槔弦?guī)則是不知道witness這個數(shù)據(jù)的,所以老規(guī)則視而不見。這就是一個軟分叉。
好,現(xiàn)在我們講完了比特幣的軟分叉和硬分叉這兩個工具。這就是兩個工具,本質(zhì)上是沒有詞性的,但現(xiàn)在好像硬分叉成了貶義詞,大家聽到硬分叉就害怕。這就是要講高潮部分了,比特幣分裂。讓我們來說明,比特幣的軟分叉和硬分叉這兩個比特幣協(xié)議升級工具,到底怎么對比特幣進(jìn)行分裂和不分裂的。
硬分叉和軟分叉都是比特幣協(xié)議升級的部署方式。比特幣協(xié)議不作更改時,即絕大多數(shù)時間里比特幣系統(tǒng)運(yùn)行時,所有節(jié)點(diǎn)追隨最長鏈。除非最長鏈在節(jié)點(diǎn)看來是包含了非法的區(qū)塊。
硬分叉是指協(xié)議規(guī)則放寬。這樣新規(guī)則部署后,如果有節(jié)點(diǎn)沒有升級,針對新的規(guī)則的區(qū)塊未升級的節(jié)點(diǎn)會認(rèn)定其為非法。這個時候,舊節(jié)點(diǎn)就會放棄追隨這條包含非法規(guī)則的鏈,哪怕它是最長鏈也一樣會放棄。這種情況下,未升級的節(jié)點(diǎn)就會主動分裂出去。
軟分叉是指協(xié)議規(guī)則收緊。這樣新規(guī)則部署后,新規(guī)則是舊規(guī)則的一個子集,未升級的節(jié)點(diǎn)并不會認(rèn)為新規(guī)則的區(qū)塊是非法的。所以簡單想,軟分叉不升級的節(jié)點(diǎn)并不會主動分裂出去,并且依然追隨最長鏈規(guī)則。但軟分叉也有可能會造成區(qū)塊鏈分裂。只要加上追隨最長鏈這個規(guī)則就可以想明白。
軟分叉是規(guī)則收緊,即新規(guī)則是舊規(guī)則的子集。所以未升級的節(jié)點(diǎn)會視已經(jīng)升級的節(jié)點(diǎn)打包的區(qū)塊是合法的區(qū)塊。但已升級的節(jié)點(diǎn)卻會視未升級的節(jié)點(diǎn)打包的區(qū)塊是非法的區(qū)塊。所以未升級的節(jié)點(diǎn)繼續(xù)堅持最長鏈原則,但已經(jīng)升級的節(jié)點(diǎn)則會無視未升級的節(jié)點(diǎn)是否是最長鏈。
如果已經(jīng)升級的節(jié)點(diǎn)的算力更大,那未升級的節(jié)點(diǎn)打包出的區(qū)塊會因?yàn)樗鼈冏冯S最長鏈而被孤立。但如果是已經(jīng)升級的節(jié)點(diǎn)的算力更小呢?結(jié)局就是已經(jīng)升級的節(jié)點(diǎn)會獨(dú)立挖一條鏈而分裂出去。
軟分叉造成區(qū)塊鏈分裂的風(fēng)險主要是升級過程中支持的算力過小。只要執(zhí)行軟分叉的算力不占有絕對的優(yōu)勢,無法使用追隨最長鏈規(guī)則孤立掉不升級的算力打包的區(qū)塊,那就會分裂。所以說,軟分叉無論多小的算力都是可以成功發(fā)起對比特幣的分裂。
這和硬分叉造成分裂的風(fēng)險是一樣的。因?yàn)閺脑砩希卜植嬷胁簧壍墓?jié)點(diǎn)就是對已經(jīng)升級的節(jié)點(diǎn)發(fā)起的一次軟分叉(規(guī)則收緊)。
避免硬分叉和軟分叉造成分裂的辦法也都是一樣——使用更大的算力閾值才允許部署。考慮到出塊幸運(yùn)值的原因,至少要75%算力才可以保持安全。
第5章 普通用戶在分叉期間應(yīng)該注意什么
基本上比特幣分叉就是這樣了。我喝杯水先,然后我講最后一個部分,分叉過程中,我們普通用戶該怎么辦。這個部分很簡單的。所以水還是不喝了。
比特幣分叉就是軟件升級的過程用戶需要注意的最重要的知識點(diǎn)有兩個,第一個是掌握私鑰。第二個是做好重防保護(hù)。
因?yàn)楸忍貛欧植妫瑹o論是軟分叉還是硬分叉,都有可能會帶來分裂。但只要用戶拿著私鑰,那怎么分,都是自動擁有了分裂后的所有的幣。所以拿著私鑰很重要。
使用一個鏈上錢包保存你的幣,就根本不用擔(dān)心分裂問題,就比如這次演講的組織者賣的庫神硬件錢包,這就是一個鏈上錢包。這還是一個冷錢包,安全性不錯。挺好用的。
不過我們還是要面對現(xiàn)實(shí),比特幣確實(shí)很難用,對很多用戶來說,可能真的搞不清楚私鑰是個啥玩意。第一推薦真的自己去搞清楚來,如果實(shí)在是搞不清楚,那就存放在講信用的交易所吧。比如火幣網(wǎng),他們會幫用戶分離好幣。
后一個知識點(diǎn)叫重防保護(hù)。
首先講明白,重放攻擊其實(shí)根本就不是攻擊。目前幣圈流傳的各種關(guān)于重放攻擊的言論有點(diǎn)過于危言聳聽了。
重放攻擊,這里的“攻擊”根本就不是別人對你發(fā)起的某種侵略或偷盜行為。而是因?yàn)楸忍貛艆^(qū)塊鏈分裂后的兩個分支鏈,都有相同的地址、私鑰和交易格式。你在分裂點(diǎn)前的幣,自動會被分裂后的兩條鏈都承認(rèn)。
如果你使用分裂點(diǎn)前的幣發(fā)起一筆交易,在兩條鏈上這筆交易都會有效。這就是顯得你發(fā)了兩筆交易,這里的另外一筆,就是“重放”。
我打個比方來解釋這個,在國軍退守臺灣后,蔣公將大陸的很多機(jī)構(gòu)都照樣在臺灣復(fù)制了一遍。比如在臺灣也建了清華大學(xué)。而在大陸的北京,也是有一個清華大學(xué)。
如果你在美國給清華大學(xué)寫一封信,就是用紙,讓郵遞員送的那種信。但收件地址上只寫了“中國清華大學(xué)XXX收”
這個收件地址即可以解讀為是北京的清華大學(xué),也可以解讀為臺灣的清華大學(xué)。這下郵遞員麻煩了,他干脆將你的信復(fù)印一遍,送到兩個大學(xué)去。
這就是重放攻擊。因?yàn)楸緛砟阒幌爰慕o臺灣的清華大學(xué),但現(xiàn)在卻被重放到了北京的清華大學(xué)。
所謂的防范重放攻擊,就是想辦法讓你發(fā)的交易,只在一條鏈上有效,在另一條鏈上無效。從而可以避免“重放”。
大多數(shù)比特幣的分叉是不需要用戶擔(dān)心啥重放保護(hù)的。首先是分叉并不一定會分裂,沒分裂就不會有重放,其次是如果會分裂,那分叉的代碼往往會寫好防重防攻擊,用戶不需要擔(dān)心。但如果遇到了分裂了,而且任何一個幣都沒有包含重放代碼,那用戶是需要自己處理好重放保護(hù)。
處理的辦法很多,也非常簡單的。可以使用一種叫讓分裂后的兩條鏈上的幣污染分裂前的幣的辦法。
分裂后,你可以分別從分裂后的兩條鏈上分別買一點(diǎn)幣,發(fā)到你分裂前的地址上,以污染你的幣。這樣你將分裂前的幣發(fā)送交易時,因?yàn)檩斎霂в辛宋廴驹矗@樣就只能在其中一條鏈上有效了。具體的操作也非常簡單。我們拿BCH和BTC的分裂來說,我們假設(shè)BCH是需要用戶做重放保護(hù)的,實(shí)際上是不需求的。
分裂前你要將幣存在自己掌握私鑰的錢包里。分裂后,你去交易所分別將買一點(diǎn)BTC和BCC,然后發(fā)到你的地址上。然后你再去下載一個BCC錢包,將私鑰導(dǎo)進(jìn)這個錢包。對BCC錢包來說,它只能接受到來自分裂后的BCC鏈上發(fā)來的那一點(diǎn)幣,而對于BTC錢包來說,它只能接受到來自分裂后的BTC鏈上的那一點(diǎn)幣。
這樣你的兩個錢包里的幣,分別包含了一點(diǎn)來自“未來(分裂后)”的幣,從而導(dǎo)致各自在對方鏈上是無效的。這樣你的幣就安全了。
第6章 結(jié)束語
分叉是必須的,只要市場接受,分裂也是好東西,祝比特幣和分裂幣都越來越好。