區塊鏈100問(區塊鏈100問:26-30)
26. 為什么區塊鏈被譽為“制造信用的機器”?
區塊鏈并不是一種新發明的技術,而是一系列技術的集成,包括非對稱加密技術、時間戳、共識機制等。
以比特幣為例,區塊鏈通過時間戳(Timestamp)和工作量證明(Proof of Work)機制解決了雙重支付(Double Spending)和拜占庭將軍問題(Byzantine Generals’ Problem),即保證同一筆比特幣不可能被花費2次,并且在可能有作惡節點的去中心化的區塊鏈網絡中,保持節點間的一致。非對稱加密機制保證私鑰的安全性,時間戳保證區塊按時間先后順序連接成鏈,工作量證明機制解決了在去中心化系統中如何公平地分發 2100萬 個比特幣的問題。
區塊鏈技術所具備的特點建立了一種“去信任化”的協同機制,讓組織之間的合作不用再以“雙方互相信任”為前提,因為代碼已經解決了多方之間的信任問題。因此區塊鏈也被譽為“制造信用的機器”。
27. 區塊鏈分叉是什么?
中心化系統中升級軟件十分簡單,在應用商店點擊“升級”即可。但是在區塊鏈等去中心化系統中,“升級”并不是那么簡單,甚至可能一言不合造成分叉。
簡單說,分叉是指區塊鏈在進行“升級”時發生了意見分歧,從而導致區塊鏈分叉。因為沒有中心化機構,比特幣等數字資產每次代碼升級都需要獲得比特幣社區的一致認可,如果比特幣社區無法達成一致,區塊鏈很可能形成分叉。
以比特幣為例,2017年7月,為了解決比特幣區塊鏈擁堵問題,一些比特幣愛好者提出,將比特幣的區塊容量上限進行提升,然而原有比特幣社區認為區塊容量的提升會導致比特幣網絡往中心化發展,雙方意見無法達成一致,最終導致比特幣區塊鏈的分叉,一分為二,誕生了后來的比特幣現金(Bitcoin Cash)。根據分叉后的區塊鏈是否能兼容舊區塊鏈,分叉又分為“硬分叉”和“軟分叉”。
28. 軟分叉和硬分叉是什么?
硬分叉,是指當區塊鏈代碼發生改變后,舊節點拒絕接受由新節點創造的區塊。不符合原規則的區塊將被忽略,礦工會按照原規則,在他們最后驗證的區塊之后創建新的區塊。
而軟分叉是指舊的節點并不會意識到區塊鏈代碼發生改變,并繼續接受由新節點創造的區塊。礦工們可能會在他們完全沒有理解,或者驗證過的區塊上進行工作。
軟分叉和硬分叉都"向后兼容",這樣才能保證新節點可以從頭驗證區塊鏈。向后兼容是指新軟件接受由舊軟件所產生的數據或者代碼,比如說 Windows 10 可以運行 Windows XP 的應用。而軟分叉還可以"向前兼容"。向前兼容是指舊軟件可以接受由新軟件所產生的數據以及代碼,比如你用 Word 2013 保存的文檔,假如仍然可以用 Word 2011 打開,就是一種“向前兼容”。
29. 什么是公有鏈 ?
公有鏈即公共擁有的區塊鏈,公有鏈不單獨屬于任何個人或機構,是開放性區塊鏈平臺,任何人無需經過許可,都可以作為節點自由加入和退出公有鏈,并且任何人都有機會和權利參與到公有鏈的系統治理和發展過程中,一起來維護和促進生態的發展。公有鏈的節點可以自由讀取賬本數據,并且可以參與全網的共識過程,有機會將交易數據寫入賬本。像比特幣和以太坊等都是典型的公有鏈系統。
30. 什么是聯盟鏈?
聯盟鏈也叫許可鏈,是一種由多個機構共同管理的區塊鏈。與公有鏈中任何人都可以獲取和維護數據、參與共識過程不同的是,在聯盟鏈中,只有聯盟成員可以加入網絡,且其內部權限設計較為復雜,需按照規則來制定用戶在鏈上的讀寫權限和記賬權限。除被指定的預選節點為記賬人外,其他接入節點可以讀寫和發送交易,共同記錄交易數據,但不過問記賬過程。參與方產生的數據只有自己能看到,其他參與者的數據需通過對方授權密鑰來查看,這樣就保證了數據的隱私和安全。
由于聯盟鏈的注冊許可限制等特征,常被用于公司級別的貿易、合作等領域。目前已有比較知名的聯盟鏈有 R3 區塊鏈聯盟、Hyperledger Fabric、企業以太坊聯盟(EEA)等,而這三者也是當前最具影響力的三大企業聯盟鏈。