新聞中心
區(qū)塊鏈可擴展性一直是個熱門話題。幾乎所有的區(qū)塊鏈網(wǎng)絡都將每秒交易量(TPS)作為賣點。然而,TPS 并不是比較區(qū)塊鏈網(wǎng)絡的有效指標,這也使得評估它們的相對性能成為挑戰(zhàn)。此外,高 TPS 通常要付出代價。這就出現(xiàn)了一個問題:這些網(wǎng)絡是否真的有那么高擴展性,還是它們只是提高了吞吐量?

目前創(chuàng)新互聯(lián)已為上1000家的企業(yè)提供了網(wǎng)站建設、域名、網(wǎng)絡空間、網(wǎng)站托管、服務器租用、企業(yè)網(wǎng)站設計、舞鋼網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
我們首先來看看如何定義可擴展性,為實現(xiàn)可擴展性做出了哪些取舍,以及為什么有效性證明是可擴展性的終極解決方案。
并非所有的交易都平等
首先我們要確定,簡單的 TPS 指標并不是可擴展性的準確衡量標準。
為對節(jié)點執(zhí)行交易進行補償(并阻止用戶用不必要的計算來擾亂網(wǎng)絡),區(qū)塊鏈會按照鏈上計算收取一定比例費用。在以太坊?上,計算負擔的復雜性以 gas 來衡量。由于用 gas 衡量交易復雜性非常方便,因此該術(shù)語將在本文中也應用于非以太坊區(qū)塊鏈,盡管它通常是以太坊專有的。
交易在復雜性上存在顯著差異,那對應的 Gas? 也是如此。比特幣?是無需信任的點對點交易的先驅(qū),只支持基本的比特幣腳本。這種地址對地址的簡單轉(zhuǎn)移消耗的 gas 很少。相比之下,以太坊或 Solana? 等智能合約?鏈,支持虛擬機?和圖靈完備的編程語言,允許進行更復雜的交易。因此,像 Uniswap 這樣的 DApp 需要更多的 Gas。
這就是為什么比較不同區(qū)塊鏈之間的 TPS 沒有意義。相反,我們應該比較的是計算能力,或者是吞吐量。
所有區(qū)塊鏈都有一個(可變的)區(qū)塊大小和區(qū)塊時間,它們決定了每個區(qū)塊可以處理多少個「計算單元」以及新出塊的速度。這兩個變量共同決定了區(qū)塊鏈的「吞吐量」。
什么限制了可擴展性?
區(qū)塊鏈的終極目標是實現(xiàn)去中心化、包容性最大化的網(wǎng)絡。要實現(xiàn)這個目標,有兩個特性必須得關(guān)注。
硬件要求
區(qū)塊鏈網(wǎng)絡的去中心化是由網(wǎng)絡中最弱的節(jié)點驗證驗證區(qū)塊鏈以及其保持狀態(tài)的能力所決定。因此,運行一個節(jié)點的成本(硬件、帶寬和存儲)應盡可能低,以讓更多的個體成為無需信任網(wǎng)絡中的無需許可參與者。
狀態(tài)增長
狀態(tài)增長指的是區(qū)塊鏈增長的速度。一條區(qū)塊鏈在單位時間內(nèi)的吞吐量越大,區(qū)塊增長速度就越快。全節(jié)點存儲網(wǎng)絡歷史,它們必須能夠驗證網(wǎng)絡的狀態(tài)。通過使用樹狀等高效結(jié)構(gòu),以太坊的網(wǎng)絡狀態(tài)得以儲存和引用。隨著狀態(tài)增長,新的葉子和分支添加到其中,使得執(zhí)行某些行動變得越來越復雜和耗時。隨著鏈的增長,節(jié)點執(zhí)行最差情況也會惡化,從而導致驗證新區(qū)塊的時間不斷增長。隨著時間推移,這也增加了同步一個全節(jié)點的總時長。
增加吞吐量的不利影響節(jié)點數(shù)
運行一個節(jié)點的最低要求以及節(jié)點數(shù)量是:
- 比特幣:350GB 硬盤空間,5M/s 帶寬,1GB 內(nèi)存,CPU 大于 1Ghz。節(jié)點數(shù)量約 1 萬
- 以太坊:500GB 以上的 SSD 硬盤空間,25 M/s 帶寬,4 至 8GB 內(nèi)存,CPU 2-4 核。節(jié)點數(shù)量約 6 千
- Solana:1.5TB 以上的 SSD 硬盤空間,300M/s 帶寬,128GB 內(nèi)存,CPU 12 核以上。節(jié)點數(shù)量約 1.2 千
請注意,區(qū)塊鏈的吞吐量對節(jié)點的 CPU、帶寬和存儲要求越高,網(wǎng)絡上的節(jié)點數(shù)量就越少,導致去中心化程度越弱,網(wǎng)絡的包容性越差。
同步全節(jié)點的時間
當?shù)谝淮芜\行節(jié)點時,需要與現(xiàn)有的所有節(jié)點進行同步,下載并驗證從創(chuàng)世區(qū)塊到鏈頂端的網(wǎng)絡狀態(tài)。這個過程應盡可能快且有效,以允許任何人都可以成為無需許可的協(xié)議參與者。
以 Jameson Lopp 的 2020 年比特幣節(jié)點?和 2021 年節(jié)點同步測試為指標,下表比較了在普通消費級 PC 上同步一個比特幣與以太坊與 Solana 的完整節(jié)點所需的時間。
上表顯示,增加吞吐量會導致更長的同步時間,因為越來越多的??數(shù)據(jù)??需要處理和存儲。
盡管節(jié)點軟件在不斷地優(yōu)化(降低磁盤占用空間,加快節(jié)點速度,增強崩潰恢復能力,組件??模塊化??等等),以應對區(qū)塊鏈持續(xù)增長帶來的挑戰(zhàn),但節(jié)點顯然仍然無法跟上吞吐量增加的步伐。
應該如何定義可擴展性?
可擴展性是區(qū)塊鏈領域中誤解最多的術(shù)語。雖然提升吞吐量是可取的,但它也只是難題的一部分。
可擴展性意味著在相同的硬件上有更多的交易。
所以,可擴展性可分為兩類。
?排序可擴展性
排序是網(wǎng)絡中交易的排序和處理行為。如前所述,任何區(qū)塊鏈都可以通過提高區(qū)塊大小和縮短區(qū)塊時間來微弱地增加其吞吐量,直至對其去中心化的負面影響顯著到無法忽視為止。但是,調(diào)整這些簡單的參數(shù)并不能達到所需的提升。以太坊 EVM? 理論上可以處理高達約 2 千 TPS?,但這不足以滿足長期區(qū)塊空間需求。為擴展排序,Solana 做出了創(chuàng)新:利用可并行的執(zhí)行環(huán)境和一個巧妙的共識機制,讓吞吐量的效率大大提高。但是,盡管有這些改進,它既不充分,也不具備可擴展性。隨著吞吐量的增加,Solana 運行節(jié)點和處理交易的硬件成本也在增加。
驗證可擴展性
驗證可擴展性是在不增加硬件成本加重節(jié)點負擔的情況下增加吞吐量的方法。具體來說,指的是像有效性證明這樣的密碼學創(chuàng)新,讓區(qū)塊鏈得以可持續(xù)地擴展。
什么是有效性證明 Rollup
有效性證明 Rollup(也稱為 ZK-Rollup)將計算和狀態(tài)存儲轉(zhuǎn)移到鏈下,鏈上只保留少量的特定數(shù)據(jù)。底層區(qū)塊鏈上的一個智能合約維護 Rollup 的狀態(tài)根。在 Rollup 上,一批高度壓縮的交易,連同當前的狀態(tài)根,發(fā)送到一個鏈下的證明器。證明器計算交易、生成結(jié)果和新狀態(tài)根的有效性證明,并將其發(fā)送給鏈上的驗證器。驗證器驗證有效性證明,存儲 Rollup 狀態(tài)的智能合約將其更新為證明器提供的新狀態(tài)。
有效性證明 Rollup 如何在相同的硬件要求下進行擴展?
證明器對硬件要求確實高,但它們不會影響區(qū)塊鏈的去中心化,因為交易的有效性是由數(shù)學上可驗證的證明來保證的。
重要的是驗證證明的要求。由于所涉及到的數(shù)據(jù)被高度壓縮,并很大程度上通過計算被抽象化,它對底層區(qū)塊鏈節(jié)點的影響是最小的。
驗證器(以太坊節(jié)點)不需要高端硬件,批次的大小也不會增加硬件要求。只有狀態(tài)轉(zhuǎn)換和少量的調(diào)用數(shù)據(jù)需要由節(jié)點處理和存儲。這允許所有以太坊節(jié)點用現(xiàn)有的硬件可以來驗證有效性 Rollup 的批量交易。
交易越多越便宜
在傳統(tǒng)區(qū)塊鏈中,交易越多,區(qū)塊空間占用越大,也就越昂貴。這就導致用戶需要在手續(xù)費市場上競價來優(yōu)先打包交易。
而對有效性證明 Rollup 來說,這種動態(tài)是相反的。在以太坊上驗證一批交易有一定成本。隨著一批交易內(nèi)交易數(shù)量的增加,驗證該批交易的成本增加速度會以指數(shù)級降低。有效性證明中,一個批次里交易數(shù)量增多,盡管批量交易驗證費用增加,但單筆交易費用反而更便宜,因為總交易成本由同一批次內(nèi)所有交易均攤。有效性證明希望一個批次內(nèi)有盡可能多的交易,這樣驗證費用就可以由批次內(nèi)所有用戶平攤。當批次規(guī)模增長到無限大時,每筆交易的平攤費用就會接近于零,也就是說,有效性證明的交易越多,對每個用戶來說就越便宜。
dYdX,一個由有效性證明驅(qū)動的 DApp,經(jīng)常有超過 1.2 萬交易的批次規(guī)模。對比在以太坊主網(wǎng)和在有效性證明上,同樣的交易的 Gas 消耗,可以說明可擴展性的提升:
在以太坊主網(wǎng)上結(jié)算一筆 dYdX 交易:200,000 Gas
在 StarkEx 上結(jié)算一筆 dYdX 交易:低于 500 Gas
從另一個方面來看,有效性證明 Rollup 的主要成本與同一批次的用戶數(shù)量成線性比例。
為什么 Optimistic Rollup 不像大家想的那樣可擴展
從理論上來講,Optimistic Rollup 提供了與有效性證明幾乎相同的可擴展性優(yōu)勢。但有一個重要的區(qū)別,Optimistic Rollup 針對平均情況進行優(yōu)化,而有效性證明針對最壞情況進行優(yōu)化。因為區(qū)塊鏈系統(tǒng)是在極端對抗的條件下運行的,針對最壞情況進行優(yōu)化是實現(xiàn)安全的唯一途徑。
在 Optimistic Rollup 的最壞情況下,用戶的交易不會被欺詐檢查器檢查。因此,為了質(zhì)疑欺詐,用戶必須同步一個以太坊全節(jié)點,一個 L2 全節(jié)點,并自己計算可疑的交易。
在有效性證明 Rollup 的最壞情況下,用戶只需要同步一個以太坊全節(jié)點來驗證有效性證明,這就節(jié)省了計算負擔。
與有效性證明相比,Optimistic Rollup 的成本與交易數(shù)量呈線性關(guān)系,而不是用戶數(shù)量,這也使得它的交易更昂貴。
最后的難題 — Rollup 狀態(tài)的無需許可訪問
用戶只需運行一個以太坊節(jié)點就能保證交易的有效性。然而,用戶和開發(fā)人員可能會出于各種目的想要查看、運行 Rollup 的狀態(tài)和執(zhí)行。「索引 L2 節(jié)點」完美滿足了這個需求,它不僅可以讓用戶看到網(wǎng)絡中的交易,而且也是生態(tài)系統(tǒng)運作所必需的關(guān)鍵基礎設施?。像 The Graph?、Alchemy? 和 Infura? 這樣的索引器,還有 Chainlink? 這樣的預言機網(wǎng)絡,以及區(qū)塊瀏覽器,無需許可的索引 L2 節(jié)點都可以完全支持。
結(jié)論
許多解決區(qū)塊鏈可擴展性的方案錯誤地集中在增加吞吐量上。但是忽略了吞吐量對節(jié)點的影響:處理區(qū)塊和存儲歷史網(wǎng)絡的硬件要求不斷增加,會妨礙網(wǎng)絡的去中心化。
而有效性證明密碼學的出現(xiàn),不給節(jié)點不斷加重成本負擔,允許廣泛的去中心化的情況下,讓區(qū)塊鏈可以實現(xiàn)真正的可擴展性?,F(xiàn)在同樣的硬件可以進行更多復雜且強大交易計算。這就逆轉(zhuǎn)了手續(xù)費市場的困境 — 有效性證明上的活動越多,就越便宜!
文章題目:如何定義區(qū)塊鏈的可擴展性?
本文路徑:http://www.5511xx.com/article/cdidhcp.html


咨詢
建站咨詢
