logo

新手教學

投資理財

區塊百科

賽道專題

幣種分析

優惠福利

市場週報

活動優惠搜尋

NEW EVENT

最新活動

幣安

web3 community

加入每日幣研 Telegram 群組,即時掌握幣圈最新資訊

HOT ARTICLES

熱門文章

    什麼是區塊鏈擴容?鏈上鏈下擴容?有 Layer 2 之外的擴容方案?

    東東

    2023/07/11

    擴容是區塊鏈已持續多年的議題之一,當年比特幣分叉出了比特幣現金 (BCH),也是因為擴容路線上的歧異,彼此無法達成共識就乾脆另外分叉出一條鏈。以太坊的擴容之路已經持續數年,直到今日都還在擴容中,尚未完成,但擴容是什麼?為什麼要有這東西?

    擴容其實就是擴增區塊鏈網路容量,可以想像成增加網路頻寬

    為什麼區塊鏈要擴容?

    過去區塊鏈一直被抱怨的問題之一,就是太慢又太貴。比特幣鏈上轉帳,從一個錢包將比特幣轉到另外一個錢包,大約需要 20-30 分鐘的時間才能確認,這時間跟國際轉帳相比很快,跟國內轉帳或一般支付相比超慢。

    以太坊快一點,如果鏈上沒有處於壅塞狀態,大約 5-10 分鐘就能確認,但跟國內轉帳或一般支付相比還是太慢。

    不只慢,交易需要花手續費,手續費依據當時鏈上狀況而定,順暢的時候手續費比較低,交易熱絡甚至有點壅塞的時候手續費高,一般情況下大約介於台幣數十到數百元之間,這跟國際轉帳相比並不算貴,但跟國內轉帳、一般支付相比還是太貴。

    區塊鏈想普及到日常生活,就必須更快、更便宜。

    那為什麼區塊鏈這麼慢又貴?跟區塊鏈本身能乘載的交易量有關。區塊鏈基本的運作是這樣:有人在鏈上發起交易,礦工或節點會檢查和處理這筆交易,其他礦工與節點也會來驗證這筆交易,每一段時間將一批已驗證的交易一起打包成區塊上鏈。

    處理交易是很快,但處理完還要驗證,驗證完還要打包區塊上鏈,區塊本身也有限制,整體來說區塊鏈的運作犧牲了部分速度與效率,來換取去中心化與安全。但如果區塊鏈想要普及到日常生活,就得更快更便宜。

    區塊鏈的不可能三角

    這是以太坊的創辦人,俗稱 V 神的 Vitalik Buterin 提出過的一個說法,關於區塊鏈的不可能三角,也被稱為區塊鏈的三角悖論或三角困境。

    它指的是目前的區塊鏈網路無法同時滿足這三者,去中心化、安全性、可擴展性,最多只能同時追求兩者,必然至少會犧牲其中一個。假設又要安全又要快,那就會犧牲掉部分的去中心化才能做到,又要去中心化又要安全,就得犧牲部份的可擴展性。

    比特幣網路歷經多年驗證,非常去中心化也非常安全,但比特幣的交易速度,平均來說只有每秒 5-7 筆交易。而以太坊,在擴容前也只能做到平均每秒 15 筆左右,這數字簡稱 TPS (Transactions Per Second)-每秒交易量,如果要讓區塊鏈能普及到日常生活,需要多高的 TPS? 

    生活中常見的刷卡交易,參考 VISA 和 Master 的數字也許會讓我們有個概念,關於 VISA 究竟可以達到多高的 TPS 網路上查到多種數字,最低的是 1700,最高的是 24000,也許是理論值跟實際值的差異,而 Master 的 TPS 大約 5000,這些數字都很明顯比區塊鏈要快很多。

    區塊鏈擴容,就是要讓區塊鏈網路能更快速地處理更多交易,擴展區塊鏈網路的容量,想像成增加網路頻寬,升級電腦規格,讓我們能更快速地完成更多事情。

    擴容有哪些方式?

    區塊鏈是虛擬的,區塊和鏈是概念,並不是真的有摸的到實體的一條鏈子,呈現起來類似下圖:

    交易打包成區塊,跟上一塊舊區塊相連,也會跟後面的新區塊相連,塊與塊之間透過加密算法驗證,一塊接著一塊就像鏈子一樣所以叫做區塊鏈,交易上鏈就不可更改,持續運行下去這條鏈會愈來愈長。

    想擴展區塊鏈網路的容量,讓它可以承載更多交易,有兩種擴容方向:

    鏈上擴容 - 直接在區塊鏈上動手,透過調整區塊鏈本身的規則來擴容。例如調整區塊大小、調整出塊時間、分片等等。

    鏈下擴容 - 不更動區塊鏈本身,從別的地方下手來擴容,例如另外新增一條鏈、點對點之間開啟狀態通道等等。

    鏈上擴容-提升區塊鏈吞吐量

    直接在區塊鏈上動手,透過調整區塊鏈本身的規則來擴容。如果把區塊鏈想像成捷運或火車,區塊鏈擴容就像要設法提高運量,所謂的鏈上擴容,就是直接去改列車、改車站。

    加大區塊大小

    把每個區塊限制的空間加大,每次就可以打包更多筆交易了阿~

     

    看示意圖,是不是覺得下面這條鏈感覺可以裝更多東西?

    以比特幣為例,比特幣的區塊容量限制為 1 MB,平均紀錄一筆交易需要 256 bytes 的容量,也就是說平均一個區塊共可以打包 4096 筆交易。

    1 MB = 1024 KB,1 KB = 1024 bytes 

    2017 年的時候因為擴容路線之爭,從比特幣分叉出了另外一條鏈,分叉出了另外一種比特幣,被稱之為比特幣現金 (BCH),當時比特幣現金將區塊容量提升到 8 MB,後來又再度提升到 32 MB。

    並不是區塊大小提高幾倍就可以把交易數量提高幾倍,還必須看不同鏈上的不同規則,不同的交易內容可能會有不同的交易大小,更複雜的交易會需要更大的容量。

    如果用捷運的比喻,加大區塊大小就像是把車廂變大,更大的車廂可以擠進更多乘客,整體運量上升。但車廂當然不可能無止盡加大,這會受到原本設計的限制。

    區塊大小影響的是一個區塊可以打包幾筆交易,但打包之前節點依然必須先處理交易,如果節點能處理的交易已達上限,繼續增大區塊大小並無法提高多少交易量。如果車站在入口閘門處就已經塞住,就算車廂增大可以容納更多旅客,但人根本卡在前面進不了站,運量並不會因此而有提升。

    增加出塊頻率

    把打包區塊的速度加速,同樣時間之下可以出更多區塊。 

    加速出塊,雖然每個區塊能容納的交易數量一樣,但同樣時間之下區塊變多了,整體可打包的交易也變多了。

    比特幣的平均出塊時間是 10 分鐘一塊,對應上一段提到的每個區塊可容納 4096 筆交易,換算就是平均一秒 6.82 筆交易,這是理論值,實際上出塊時間略有浮動,也不一定每個區塊都能完整打包 4096 筆交易。

    以太坊在轉換到 POS 機制後,目前的出塊時間大約是 14 秒一塊,有些公鏈更快,可以做到 3-6 秒出一塊。但並不是出塊時間比較快就等於可乘載交易數量一定比較多,還得看區塊大小以及交易內容等等綜合評估。

    如果用捷運來比喻,增加出塊頻率就像是增加發車班次,本來兩分鐘一班車,改成一分鐘一班車,運量就提升了。

    分片

    分片的概念複雜了一些,可以用分工來理解它。


    Original diagram by Hsiao-wei Wang, design by Quantstamp.

    分片並不是區塊鏈獨有的概念,在傳統的數據庫處理中就有這個概念,簡單說就是不必每個伺服器都儲存所有資料,而是把資料切分成幾個部分,分散儲存在不同伺服器。

    區塊鏈的運作中,原本是所有礦工與節點都要驗證所有交易,有點重工 (重複工作),透過分片技術,部分節點驗證部分交易,用分工的方式提升整體效率。

    例如假設原本共有 500 個節點,因為每個節點都要驗證所有交易,也許原本的處理上限是每秒 500 筆;現在把這 500 個節點拆成 10 組,每組只要負責驗證十分之一的交易,這樣一來處理上限就提高了 10 倍變成 5000 筆。

    但本來交易會被 500 個節點驗證,現在只會被 50 個節點驗證,看起來安全性下降了,參與的節點變少,51% 攻擊變容易了,解決方案之一是每次都透過隨機抽樣的方式來分配節點。

    分片簡單說就是一種分工,在同樣的節點數量之下,增加可處理的交易數量。如果用捷運的概念來理解,有點像是增加閘門、增加月台,列車大小一樣、車站大小一樣,但增加閘門數、月台數,可以放更多人進站,也同時可以開更多車,運量就提升了。

    鏈上擴容需要直接對區塊鏈動手,必然會受限於區塊鏈原本的設計,就像在現實世界中若要直接修改捷運車廂、車站一定很困難,限制很多成本很高,另外一種作法是鏈下擴容。

    鏈下擴容 – 其中有些也被稱為 Layer 2 擴容

    不更動區塊鏈本身,從別的地方下手來擴容。如果一樣用捷運的比喻,那鏈下擴容就是不改列車、車站,透過其他方式例如增加接駁公車、另外開新的支線來提升運量。

    鏈下擴容有五種方式:側鏈、狀態通道、Rollups、Plasma、Validium,這部分在技術上比較艱深,這篇作為入門科普文只會簡單帶過,試著用生活化一些的方式描述,想更進一步了解的建議閱讀這篇:

    Layer 2 究竟是什麼?盤點 Layer 2 解決方案

    側鏈

    側鏈的概念像是在原本的捷運之外再建立一條支線,或是加開接駁公車,由其他公司來營運,走不同的系統,跟原本的捷運線不能直接共通,需要出站,需要重新買票。

    側鏈是另外一條鏈,有自己的節點、共識、安全性,和主鏈之間用某種方式相互合作。

    狀態通道

    至於狀態通道,是一種點對點之間的通道,有點類似在我家和公司之間開了一個傳送門,兩地之間傳來傳去其實並沒有透過捷運,但每過一段時間總結傳送次數後一次打包進出明細給捷運公司。

    運作在區塊鏈中就例如 A 錢包和 B 錢包之間開啟狀態通道,彼此之間的交易其實都在鏈下進行,並沒有每筆交易打包上鏈,如此就可以避開區塊鏈本身的容量限制,一段時間後才會將這段期間的所有明細一次打包上鏈,同時關閉通道 (可以再次開啟)。

    Layer 2

    至於另外三種 Rollups、Plasma、Validium 都屬於 Layer 2 解決方案,只是各自使用的技術不同。Layer 2 簡單說起來就是建立在 Layer 1 主鏈上的第二層鏈,目前最多的是以太坊的 Layer 2,也就是建立在以太坊之上,承接了以太坊安全性的另外一條區塊鏈。

    跟側鏈的差異在於側鏈有自己的節點、共識、安全性,但 Layer 2 不需要,它是依賴主鏈而生的一條鏈,用捷運的比喻來解釋依然是一條支線,但這次使用跟原本捷運相同的系統,彼此高度相關。

    Layer 2 簡稱 L2

    概念都類似,在 L2 鏈上處理交易,一段時間之後再將多筆交易合併打包回主鏈。因為不用每筆交易上主鏈,就可以避開主鏈本身的交易容量限制,大部分交易都在 L2 上處理,累積多筆交易之後再合併為一筆打包回主鏈即可。

    而根據不同的打包方式、跟主鏈之間的驗證方式,又區分為幾種類型,目前最主流的 L2 方案為 Rollups,其中非常有潛力的方案為 ZK-Rollups,採用零知識證明,難度較高在過去較為小眾,但 V 神在 2023 年的公開演講中提到他認為零知識證明在接下來十年非常重要。

    zkSync Era 上線!zkSync 生態介紹,領取 zkSync 空投教學

    擴容後的以太坊可以有多快?

    之前的以太坊區塊鏈還是採取 POW 共識機制,當時平均每秒交易次數 (TPS) 大約是 15 筆,跟 VISA 相比之下確實是太慢了,許多後發的平台公鏈也都超過這數字,例如Solana 的 TPS 大約介於 2000 - 3000 之間,理論值號稱可以到 65000 TPS。

    以太坊的擴容方案基本上是鏈上 X 鏈下同時進行,鏈上部分更改了共識機制,從 POW 調整成 POS,出塊時間稍稍快了一些,也會持續提升區塊容量,並採取分片技術,同時搭配 Layer 2 為主的鏈下擴容方案。

    所以擴容後的以太坊到底可以有多快?

    2022 年 7 月,在以太坊社區會議 (ETHCC) 上,以太坊創辦人 Vitalik Buterin (V 神) 和以太坊的開發人員介紹了 Ethereum 最新的未來路線圖 (Roadmap)。

    以太坊未來的發展會分為五個關鍵的部分,而這五個部分都是同時進行的,它們分別是:The Merge、The Surge、The Verge、The Purge、The Splurge。

    其中的 The Merge 指的是將主網和信標鏈合併,從 POW 共識機制轉向 POS 的重大合併事件,這個合併已經在 2022 的 9 月 15 日完成,從那天起以太坊的挖礦成為歷史,從此轉換成 POS 機制。

    以太坊合併 2.0|甚麼是 The merge?以太幣會否因 PoS 暴升?

    一旦五大路線完成升級,以太坊的主鏈將可以達到,甚至超越 10 萬 TPS (Transaction Per Second),同時擁有超過 64 個分片,一口氣處理大量交易。對比現在以太坊只有約 15 TPS 來數的話,完成升級後的以太坊將會快近 10000 倍。

    以太坊發展路線:Merge, Surge, Verge, Purge, Splurge 到底是什麼? 

    如果區塊鏈在未來生活中的應用不只是金融支付,那我們就不能只是單單拿 VISA、Master 的 TPS 來參考。如果區塊鏈在日常中的應用可以就像我們現在使用網路一樣自然而然,那區塊鏈的擴容目標顯然必須設定的更大,Google 在現今平均每秒約處理 40000 次搜尋,這數字或許可以做為區塊鏈擴容的初步目標。

    延伸閱讀:

    以太坊 3 大革新|ETH 未來關鍵發展:L2 擴容/ 智能合約錢包/ 隱私

    四大 Layer 2 的 StarkNet 是什麼?潛在空投教學、生態介紹

    zkEVM 空投教學|詳解 zk-EVM 潛力項目:zkSync、Scroll、Linea、Herodotus、Taiko

    東東

    加密貨幣愛好者 | 2017 入圈,認為區塊鏈是下個世代的網路,期待區塊鏈與加密貨幣普及到日常生活的那一天。

    為什麼區塊鏈要擴容?

    每日幣研 市場週報

    每週兩則電子報,全方位從總體經濟、鏈上數據、融資近況、項目動向快速解讀加密貨幣市場

    訂閱週報

    logo

    首頁

    全部文章關於我們聯絡我們網站聲明 隱私權政策

    HK

    TW

    ©台灣每日幣研版權所有