幣圈子分析:數字貨幣是軟分叉和硬分叉是什麼意思?

買賣虛擬貨幣

想想大家會經常在新聞和論壇裡看到某某幣將要進行分叉,到底分叉是什麼?軟分叉和硬分叉又是什麼?下面就來給大家分析分析。比特幣是一套軟體,對軟體程式碼進行修改升級就經常會涉及到兩個概念,一個叫硬分叉,一個叫軟分叉。這到底是什麼意思呢?社羣裡最常見的定義說是對共識的修改。但“共識”具體指的是什麼,很難理解。我們還是多實際的修改程式碼層面來看下它們的定義吧。

硬分叉和軟分叉在bitcoin.org上都有定義,但定義其實很模糊,為了防止我胡說(質疑bitcoin.org上的定義,確實讓我誠惶誠恐。),我摘錄原文:

硬分叉被定義成這樣:

A permanent divergence in the the block chain, commonly occurs when non-upgraded nodes can’t validate blocks created by upgraded nodes that follow newer consensus rules.

https://bitcoin.org/en/glossary/hard-fork

區塊鏈發生永久性分歧,在新共識規則釋出後,部分沒有升級的節點無法驗證已經升級的節點生產的區塊,通常硬分叉就會發生。

軟分叉的定義是這樣的:

A temporary fork in the block chain which commonly occurs when miners using non-upgraded nodes violate a new consensus rule their nodes don’t know about.

https://bitcoin.org/en/glossary/soft-fork

當新共識規則釋出後,沒有升級的節點會因為不知道新共識規則下,而生產不合法的區塊,就會產生臨時性分叉。

社羣對區塊擴容是該執行硬分叉還是軟分叉的爭議,我猜bitcoin.org上的這兩個模糊的定義應該負主要責任。最大的責任是原文中的“consensus rules(共識規則)”定義不清晰,如果我們在去bitcoin.org上尋找“consensus rules(共識規則)”是什麼意思,原文是這樣的:

The block validation rules that full nodes follow to stay in consensus with other nodes.

https://bitcoin.org/en/glossary/consensus-rules

完整節點為了和其他節點維持共識而遵循的區塊驗證規則。

這個對共識的定義,在邏輯上就犯了迴圈認證的謬誤,這個定義就是說“共識就是為了維持共識的規則”。這和許三多說的話是一樣的:“有意義就是好好活。”“那什麼是好好活呢?”“好好活就是做有意義的事情。”其實他根本就沒有回答什麼是好好活,以及什麼是有意義。

另外這兩個定義中把硬分叉定義為“permanent divergence(永久性分叉)”,和把軟分叉定義為“temporary fork(臨時性分叉)”,這種幾乎是文字遊戲的定義法,讓社羣很多人害怕硬分叉。認為硬分叉是一個非常可怕的事。

“共識”這個詞忽悠了太多的人了。其實在“不破壞共識”包裝下的軟分叉,本質上和硬分叉是一樣要修改相同的物件的,而且更可怕的代價是向前相容,即要求不升級的軟體去忽視升級過的軟體生產的資料和程式碼,冒這種風險得來的好處僅僅是懶得升級軟體。我想任何理智的人都是不願意接受這種風險收益比的。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;