摘要:在第一期,我們從區(qū)塊鏈的不可能三角談起,談一談如果要追求極致的效率,究竟要犧牲什么。今天,我們來介紹另一個不可能三角。這個不可能三角包括三個目標。超高吞吐率最終確認交易的平均吞吐率超過稱之為超高吞吐率。
最近幾期,Conflux 計劃推出一系列的科普文章,從一些簡單的技術(shù)原理開始,幫助大家辨別一些項目宣傳的概念中,哪些概念是可能實現(xiàn)的,哪些概念如果要實現(xiàn),是需要有妥協(xié)的。
在第一期,我們從區(qū)塊鏈的“不可能三角”談起,談一談如果要追求極致的效率,究竟要犧牲什么。目前在區(qū)塊鏈媒體中,有一個流傳很廣的概念叫“不可能三角”,即效率、安全、去中心化三者不可并存。和“不可能三角”出現(xiàn)同樣頻繁的概念,是“不可能三角”被公鏈某個項目打破。在一些媒體宣傳 Conflux 的時候,也曾經(jīng)使用過這個說法。
不過,Conflux 從未在官方宣稱“打破不可能三角”,我們認為這并不是一個嚴謹?shù)母拍睢V荒苷f,這個概念被提出來的時候,還沒有人把這三件事情同時做好,并沒有人通過嚴謹?shù)姆治鲎C明它不可能。
今天,我們來介紹另一個不可能三角。無論一個區(qū)塊鏈是公有鏈還是聯(lián)盟鏈,是 PoW 還是 PoS, 是采用中本聰共識還是 BFT 還是其他的什么方式,都繞不開它。這個不可能三角包括三個目標。(為了便于理解,我們避免采取嚴謹?shù)男问交Z言去定義它,而是大概描述一下想法與思路)
1. 全部節(jié)點同步與驗證在公鏈網(wǎng)絡(luò)中,公鏈網(wǎng)絡(luò)的正確性與安全性依賴于一些節(jié)點的背書。例如,在比特幣或以太坊中,根據(jù)協(xié)議,每一個礦工挖出區(qū)塊時,要保證新區(qū)塊和歷史上的每一個區(qū)塊每筆交易都是正確的。也就是說,比特幣礦工出塊時,在為之前所有的區(qū)塊進行正確性背書。在 EOS 中,超級節(jié)點通過簽名對區(qū)塊的正確性背書。我們這里稱為“參與共識的節(jié)點”。
“全部節(jié)點同步與驗證”要求每一個被確認的交易,都得到過所有參與共識的節(jié)點(攻擊者除外)的同步與驗證。
這個目標是和安全相關(guān)的。我們想象一個場景,有一個人想通過偽造無效簽名,制造非法交易,盜走你的資產(chǎn)。如果只有一小部分參與共識的節(jié)點同步和驗證了這個交易,而其他節(jié)點不同步這個交易,直接采信那一小部分節(jié)點的判斷結(jié)果。如果這樣的話,將一筆非法交易混入交易歷史的可能性,就會高于每個參與共識的節(jié)點都進行同步和驗證。二者的安全性是不一樣的。
2. 超高吞吐率最終確認交易的平均吞吐率超過 11000 TPS 稱之為超高吞吐率。 (每筆交易的大小按 250 字節(jié)計)
3. 低帶寬要求對于每一個參與共識的節(jié)點,網(wǎng)絡(luò)帶寬的最低配置要求不高于 20 Mbps (2.5 MB/s)。
這個目標是和去中心化相關(guān)的,參與的門檻越低,能參與共識的人就越多,越有利于去中心化。
以上就是這個不可能三角的三個目標。原因理解起來也很簡單,如果一個節(jié)點只有 20 Mbps 的帶寬,那么每秒只能下載 2.5 MB 的數(shù)據(jù),大約是 10000 筆交易。如果網(wǎng)絡(luò)中最終確認交易的平均吞吐率超過 11000 TPS, 這個只有 20 Mbps 帶寬的節(jié)點是沒有能力同步和驗證每一筆交易的。
那么面對這個困難,做出取舍的方案又有哪些呢? 1. 放棄全節(jié)點同步與驗證在這些方案中,Sharding 是一個很著名的解決方案。Sharding 方案的大體思路是,整個區(qū)塊鏈在邏輯上分出若干個 Shard, 將沒有關(guān)聯(lián)、互不沖突的交易分到不同的 Shard 中去, 每個 Shard 由一部分礦工負責同步和驗證。對于礦工來說,不需要為其他 Shard 中的交易正確性負責。
Sharding 方案是一個提高吞吐率的思路,但這個思路犧牲了一部分的安全性。畢竟,如果有一個人想通過偽造簽名,制造非法交易盜竊你的資產(chǎn),全網(wǎng)中每一個節(jié)點都幫你防范非法交易,和只有一小部分節(jié)點幫你防范非法交易,二者的安全程度是不同的。不過,對于只是存?zhèn)€零花錢的賬戶地址,相對于安全性,可能用戶對交易成本更敏感。所以這一方向是非常有探索價值的。
但如果用 Sharding 方案下的 TPS 和別人全節(jié)點同步與驗證下的 TPS 比,就很不科學了。
另外一個思路是,通過零知識證明或可驗證計算等密碼學工具,允許一個節(jié)點不必同步每一個交易,只需要同步區(qū)塊頭及一些密碼學的元素,也可以驗證一個區(qū)塊的 Merkle Root 是正確的。當然,這個思路上有很多坑需要去解決,如果有機會,我們會寫一篇文章展開討論一下。
這里的放棄高 TPS,是指在現(xiàn)有的網(wǎng)絡(luò)條件下,放棄 10000 TPS 以上的吞吐率。Conflux 保留了去中心化和安全性,就需要保留全節(jié)點同步與驗證和低帶寬要求,以實現(xiàn)家用網(wǎng)絡(luò)條件也可以當?shù)V工,每一筆交易都得到了每一個礦工的驗證。如果要保留這兩點,效率是有天花板的。
3. 低帶寬要求在一些共識機制中,普通用戶不參與對交易的同步與驗證,而是通過一些方式選出少數(shù)特殊的節(jié)點來進行共識。這時,我們可以假設(shè)每一個參選的節(jié)點都準備了足夠的計算機資源,例如更好的 CPU, 更大的硬盤, 更大的網(wǎng)絡(luò)帶寬。這時,也就沒必要將“最低配置要求”設(shè)的很低了。
下一次,如果您看到一個項目聲稱大于 10000 TPS,甚至是喊出無限可擴展的口號時,您就需要來看一下在這個不可能三角中,它放棄了哪一角。是放棄了第一點還是第三點?如果是放棄第一點,項目是采用了 Sharding 方案?還是做出了其他的修改?這種修改會不會帶來安全性問題,如何解決?如果是放棄第三點,高 TPS 是否基于更高的網(wǎng)絡(luò)帶寬要求?還是說在網(wǎng)絡(luò)帶寬無限的條件下無限可擴展?
順便推薦一下我們的線下活動~在本期Conflux Meetup(杭州站),我們?yōu)榇蠹已埖搅薈onflux CTO伍鳴、Conflux研究總監(jiān)楊光、TOP Network Co-founder & CEO Steve Wei來一起聊一聊《下一代公鏈和DApps生態(tài)前景》。
點擊報名
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/17944.html
摘要:在第一期,我們從區(qū)塊鏈的不可能三角談起,談一談如果要追求極致的效率,究竟要犧牲什么。今天,我們來介紹另一個不可能三角。這個不可能三角包括三個目標。超高吞吐率最終確認交易的平均吞吐率超過稱之為超高吞吐率。 showImg(https://segmentfault.com/img/remote/1460000018479164?w=1080&h=460);最近幾期,Conflux 計劃推出...
摘要:當時孫宇晨為了給出場的波場造勢,主動碰瓷以太坊,在推特上直接列出了條波場優(yōu)于以太坊的理由。但如果是波場取代了以太坊的地位,我將對人類失去希望。不論波場與以太坊是否真有合作的可能性,商業(yè)戰(zhàn)場上的相愛相殺也大抵如此。 摘要:波場與以太坊將達成正式合作?是遲來的愚人節(jié)玩笑還是一笑泯恩仇? showImg(https://segmentfault.com/img/bVbrfU7?w=952&h...
摘要:北京時間月日,公鏈項目與星球日報及區(qū)塊律動聯(lián)合主辦的共識之夜將拉開帷幕。據(jù)悉,共識之夜將于星球日報與區(qū)塊律動主辦的生態(tài)大會當晚正式開啟。 showImg(https://segmentfault.com/img/bVbuNyu?w=1206&h=971);北京時間7月10日,公鏈項目En-Tan-Mo與Odaily星球日報及區(qū)塊律動聯(lián)合主辦的Staking Con After Part...
摘要:北京時間月日,公鏈項目與星球日報及區(qū)塊律動聯(lián)合主辦的共識之夜將拉開帷幕。據(jù)悉,共識之夜將于星球日報與區(qū)塊律動主辦的生態(tài)大會當晚正式開啟。 showImg(https://segmentfault.com/img/bVbuNyu?w=1206&h=971);北京時間7月10日,公鏈項目En-Tan-Mo與Odaily星球日報及區(qū)塊律動聯(lián)合主辦的Staking Con After Part...
閱讀 3864·2021-09-23 11:51
閱讀 3057·2021-09-22 15:59
閱讀 856·2021-09-09 11:37
閱讀 2063·2021-09-08 09:45
閱讀 1259·2019-08-30 15:54
閱讀 2056·2019-08-30 15:53
閱讀 484·2019-08-29 12:12
閱讀 3282·2019-08-29 11:15