中杯星巴克
中杯星巴克

https://mediumstarbucks.substack.com

擴容方案 I

(编辑过)
這是一個稍微技術一些,但要理解目前區塊鏈世界繞不過的主題。

接下來一個系列,我們會來談一個大家都聽過,卻又似懂非懂的主題:擴容技術。這是一個稍微技術一些,但要理解目前區塊鏈世界繞不過的主題,就讓我們開始吧!


[ 簡介 ]

在評斷某條鏈的性能時,最重要指標是交易手續費以及交易速度。大家都希望有更快的交易速度與更低的手續費。因為整個區塊鏈產業的快速發展,很多才沒幾年前設計出來的架構,放到幾年後就已經顯得過時,也產生了許多對於性能升級的需求。

要提高效能,能從Layer 1或Layer 2去著手。L1擴容指的是在區塊鏈基層協議上改進,L2擴容指的是去再想辦法弄一條鏈,架在L1之上,讓它能夠與L1互動,用各種方始減輕主鏈的負擔。

從Layer 1上著手是釜底抽薪的作法。例如可以直接不用Blockchain,改成DAG、Holochain、Hashgraph等等技術來實現DLT。或是改用一個更強調性能的共識機制,例如Solana採用的PoS + PoH組合,這邊可以參考之前談共識機制的文章。

L1擴容的另一個思路是調整一條鏈的底層參數,有兩種最簡單的方式:「增加每個Block的儲存空間」,目前Bitcoin是1MB,Ethereum大概是15M gas;或是「縮短塊與塊之間的時間」,Bitcoin是10分鐘,Ethereum大約是12秒。

但這兩種方式都對節點有更高的要求:需要更強更大的硬體設備,以及更快的網路速度。這會導致符合規定的節點數變少,也就是變的不那麼去中心化。這涉及了設計理念的問題,反正以太坊發展到目前為止,給「去中心化」更高的優先級。之前BSC被駭的時候,幣安能停機來處理,究其本質就因為它一點都並不去中心化,當然,多去中心才叫做去中心,以及我們到底需要怎樣程度的去中心,都是個哲學問題。

所以之前講的三難問題,都是針對L1層面來說的。要進行L1的擴容,可以透過更新節點來進行升級,但這種更新不是強制性的,節點自己能選擇要不要更新,所以會產生分岔。如果更新過的與不更新的節點無法進行互動,我們稱之為硬分叉。相對的,如果更新過的與不更新的節點還能繼續互動,我們稱之為軟分叉。有關分叉的內容可以參考之前《黑話》那系列的文章。

L2的擴容技術就更五花八門了,最常聽到的有:Plasmazk RollupOptimistic Rollup等等,別怕,我們接下來都會談到。

總的來說,一條鏈可以有的優秀品質包含了:reliability、security、efficiency、privacy。在分析一個擴容方案的時候,心中記著這四點,再看這個方案在其之間做了怎樣的取捨,就能快速對一個擴容方案有所掌握。接著讓我們來針對一些知名的擴容方案吧!


[ Bitcoin上的擴容 ]

  • 現在Bitcoin的TPS大約是3左右,手續費則是1鎂附近。這東西是動態的,大概知道個數量級就行。
  • Bitcoin上增加每個Block容量的提案是一個硬分叉,接受的節點分出去的鏈被叫做比特幣現金(BCH),而沒有接受升級的就還是原先的BTC。
  • 隔離見證(Segregated Witness):喜歡把一切詞彙簡稱的工程師也把它稱為SegWit,主要概念就是把Signature這個欄位的資料拿到其他地方去做,讓Block上每一筆交易的資料簡化,降低每一筆交易佔用的空間,以達到更高的TPS。
  • 在比較複雜的情況下,Signature可以佔到所有資料的3/4,也就是剔除之後,理論上TPS可以上升四倍,算是一個短期的擴容方案。這個軟分叉,在2017年的時候已經被實施。
  • BTC上還有過的知名軟分叉是Taproot,這是一個底層密碼學上的升級,可以簡單理解成,透過採用新的密碼架構,可以降低複雜交易的數據量,讓複雜交易看起來跟簡單交易很像,達到增強隱私性的效果。
  • Bitcoin上還有過一個東西叫做Lightning Network(閃電網路),因為Ethereum上也做過類似的方案,且讓我們放到後面一起講。

Source: ethereum.org

[ Ethereum上的擴容方案 ]

  • Ehereum在Layer 1的升級上,除了大家熟知的從PoW轉換到PoS之外,目前的計畫主要是想引入分片技術(Sharding)
  • 在L2擴容的方案上有:Payment channel側鏈 Sidechain等離子體 PlasmazkRollupOptimistic RollupValidiumVolition。在寫這一篇的當下(2022.10),前三個基本被淘汰,zkRollup跟Optimistic Rollup是當下的主流,而最後兩種有點像是zkRollup跟Optimistic Rollup的小改版。

Source: ethereum.org

[ 分片 Sharding ]

  • 困難度高,但如果真的成功,算是個一勞永逸的方案。
  • 概念就是把所有的節點平均且隨機的分組,一組就是一個分片,每個分片能夠獨立的去處理交易、驗證交易、執行合約。
  • 所以理論上,把Ethereum分成N片之後,效能應該要可以變成N倍。
  • 困難點一是分片與分片之間如何溝通,如何去相信那些它自己沒有經手驗證過的交易資料?困難點二是分片之後,每個分片中的節點數等於是變少了(與不分片相比),也可以理解成更中心化,這樣受到51%算力攻擊的可能性也會大大上升。
  • 前者目前是朝向結合用zk proof去做:分片可以提出一個證明(proof),在理論上,那個分片就是可以被相信的。後者主要是通過隨機分配節點,加上隨機的分配需要驗證跟執行的交易請求,讓一群同夥剛好在同個分片中,一起作惡的機率降低。
  • 分片是被放在以太坊2.0的升級計畫路線圖中的,讓我們拭目以待吧。

希望這一篇可以讓你對擴容到底想要做什麼有一個初步的理解,今天就先說到這邊,我們回頭見,Be Happy & Stay Tuned!

CC BY-NC-ND 2.0 版权声明

〈中杯星巴克〉是一個談組合管理的自媒體。我們會先從區塊鏈講起,再到DeFi,最後談如何把DeFi納入自己的投資組合當中。如果覺得內容有幫助的話,也請不要藏私的分享給你所有的朋友喔。你的點讚與分享,將會對這個無營利的自媒體有很大的幫助!

第一个支持了这篇作品
加载中…

发布评论