TON、Solana 和 以太坊 2.0 的對比

翻譯:MetaCat

摘要

自 2017 年編寫最初的 TON 白皮書[1] 以來,出現了許多新的區塊鏈項目,例如 Solana 和 Ethereum 2.0。在本文中,我們將 TON 與其中一些比較有代表性的區塊鏈項目進行了對比。

1. 對比形式

根據 TON 原白皮書第2.8 和2.9 節對區塊鏈項目的分類進行形式比較

1.1 對比指南

我們根據以下標准對區塊鏈項目進行分類,在 TON 白皮書[1] 的第 2.8 節中有更詳細的解釋: 

  • 單區塊鏈/多區塊鏈項目

  • 共識算法:PoW(工作量證明) ) / PoS (proof-of-stake)

  • 對於 PoS 項目,精確的共識算法(例如 dPOS 或 BFT)

  • 對於支持任意(圖靈完備)智能合約的多區塊鏈項目,我們必須進一步考慮的問題:
    1> 成員區塊鏈的類型和規則:同質、異構、混合
    2> 主鏈的存在
    3> 原生支持分片、靜態和動態分片
    4> 區塊鏈之間的交互:松耦合/緊耦合

除此之外,簡化分類區塊鏈項目在TON 白皮書[1] 的 2.8.15 中進行了介紹,並且在第 2.9 節的开頭給出了包含最流行區塊鏈項目的基本屬性的表格。

2. Solana

2.1 Solana 概述

Solana [2] 在 2020 年代是一個有點不尋常的項目:它是一個專爲非常快速地執行專門的交易而優化的單一區塊鏈項目。在這方面,它類似於 EOS [8](2016-2018 年开發)的前身 BitShares 項目[9](2013-2014 年开發),但使用被稱爲 Tower Consensus [3] 的 PBFT [10] 變體代替dPOS。Solana 聲稱每秒生成一個區塊,甚至更快;然而,這是有代價的,因爲下一個區塊是在前一個區塊完成之前生成的(引用官方博客文章[4],“與PBFT 不同, Tower Consensus 更喜歡活躍性而不是一致性”)。這可能會導致創建短暫的分叉。當驗證者分布在世界各地的不同地點時,在現實生活中完成一個塊需要多次往返(樂觀情況下的 PBFT 本質上是一個三階段提交協議),因此最好的情況需要幾秒鐘。官方文檔的解釋似乎暗示一個區塊通常在 16 輪投票後最終確定,每輪預計持續大約 400 毫秒;這意味着6.4 秒的完成時間。 

我們可以說,Tower Consensus 雖然正式成爲 PBFT 的變體,但與 dPOS 共識協議相比更好,後者提供更短的區塊生成時間,但以更長的區塊完成時間爲代價。 

Solana 的另一個有趣特性是,它經過高度優化,可以執行非常簡單的預定義交易,這些交易不會改變账戶數據,但账戶余額可能除外。這允許大規模並行執行和驗證交易。在這方面,Solana 類似於EOS 的前身BitShares,它使用 dPOS(具有短的塊生成時間和長的塊完成時間)並且針對非常簡單的預定義交易的大規模執行進行了優化。除此之外,Solana 的設計方式是,與生成這些交易所需的時間相比,在高端 GPU 上驗證交易正確順序的速度可能會加快千倍。 

最終,Solana 聲稱每秒能夠執行多達 700,000 次簡單交易(根據[11] 的實際數字是 65,000 而不是 700,000),前提是它們不改變帳戶狀態並且不需要太多數據,並且僅在所有帳戶的所有數據都適合 RAM (譯者注:隨機存取存儲器)的情況下。同樣,這與 BitShares [9] 幾年前的承諾非常一致。主要區別在於,與 BitShares 相比,Solana 確實提供了對區塊鏈軟件未預定義的交易類型的支持;爲此,使用了一種稱爲 Berkley Packet Filter 的虛擬機變體,該機器的預編譯程序可以上傳到 Solana 區塊鏈中,然後在交易中引用[12][13] ,Solana 形式上是圖靈完備的,但通常引用的性能指標僅與非常簡單的預定義交易有關,並且僅適用於所有帳戶的所有數據都放入 RAM 的情況,因此我們認爲與 BitShares 的比較仍然有效。 

總而言之,Solana 是 TON 白皮書[1] 中 2.8.15 術語中的“第三代區塊鏈項目備擇方案”,最終與 EOS [8] 的前身 BitShares [9] 非常相似,但有進一步的優化。它在形式上是圖靈完備的,但實際上只能執行多種預定義類型的大量非常簡單的交易,或者更少量的更一般的事務;它聲稱能夠平均每秒生成一個以上的塊,並在未來的硬件升級後每秒執行 700,000 次簡單交易(實際數字似乎是 65,000 而不是 700,000 [11])。它是一個固有的不可擴展的專業單區塊鏈項目,如果不進行完整的重新設計,則不提供或不可能提供對分片或不同工作鏈的支持(我們參考 TON 白皮書[1] 的 2.8.16 來解釋爲什么這樣的重新設計非常困難)。在這方面,它與 EOS [8] 相比之下,TON 允許即時部署任何復雜智能合約,由於共識機制具有更短的交易和區塊最終確認時間,並且可能最重要的是動態分片,因此可以提供更高級別的安全性。隨着負載的增加,後者會自動將區塊鏈擴展爲越來越多的分片鏈,從而提供任何單區塊鏈架構都不可能實現的可擴展性(比如在Solana 中實現)。 

很自然,Solana 的前輩,其他單區塊鏈或松散耦合的多區塊鏈項目,如EOS 等沒有分片支持的項目,在早期階段看起來很壯觀,但事實證明是短暫的,因爲這些概念不可避免地衝擊了在後期階段對其可擴展性和穩定性產生負面影響的限制。2021 年9 月 Solana 區塊鏈[5] 崩潰的早期跡象表明,在意外激增的交易“造成內存溢出”後,該區塊鏈實際上停滯了 17 個小時,這導致許多驗證器崩潰,迫使網絡減速並最終停止”,引用自描述此故障的官方文件。這讓我們質疑 Solana 在現實交易中的未來表現,而不是特制的非常簡單的交易,只涉及少量不同的账戶,並在非常特定的測試環境中執行,數百個強大的驗證服務器位於一個數據中心或在附近的幾個數據中心。TON 在這方面似乎更加穩健。

2.2 隱喻:Solana 是一輛超級蒸汽機車

Solana 是一個有趣的例子,它展示了一種古老的工程方法,將衆所周知的固有局限性推向了極致。因此,它讓我們想起了技術史上幾個類似的故事,我們現在想把它們聯系起來。 

其中之一當然是 1938 年英國 LNER A4 4468 Mallard 蒸汽機車創下的 203 公裏/小時的世界記錄。在常規客運服務期間,它沒有達到這些平均速度,而是以150 公裏/小時的速度運行。然而,當時它保持着所有機車、蒸汽機車、柴油機或電力機車的世界記錄。盡管如此,這是一條技術死胡同,後來的所有高速列車,如日本的新幹线、法國的 TGV 或德國的 ICE,都是多單元電動列車。有趣的是,所有現代高速列車都是這樣。

多單元電動列車意味着每個車廂中都有一個發動機甚至多個發動機,而不是由蒸汽機車牽引的傳統列車。我們看到了分片的力量。我們看到了爲什么即使在 1938 年就很明顯,未來屬於電動火車:電動發動機可以很容易地在整個火車上擴展和分布,而蒸汽機技術不能以這種方式擴展。 

想到的第二個技術故事是 2000 年初英特爾的 Pentium 4 CPU。英特爾承諾在幾年內逐步將這些處理器的時鐘頻率提高到 10 GHz,並達到前所未有的性能水平。在實踐中,Pentium 4 運行實際代碼的速度通常比上一代 Pentium 3 慢,時鐘頻率更低,而英特爾在達到 4 GHz 的邊界後無法實現最初承諾的時鐘頻率增長。在那之後,英特爾完全重新思考了其 CPU 开發路线圖,並基本上恢復到具有較低時鐘速度的 Pentium 3 架構(更名爲Intel Xeon 或 Intel Core 2),但在一個物理設備中安裝了越來越多的CPU 內核。這種方法被證明更具可擴展性和耐用性,現在我們可以根據需要購买 64 核處理器。同樣,基於使一個計算核心越來越快的方法失敗了,多核方法(可以比作多單元火車和區塊鏈中的分片)被證明是可行的。 

第三個技術故事是超級計算機的故事,例如 Cray,它在 1970 年代和 1980 年代很流行,但後來被由數千個商用 CPU(通常是英特爾和AMD CPU 的服務器版本)組成的集群所取代。如今,排名前 100 位的超級計算機都是商用 CPU 集群。再次,“分片”或“多單元系統”战勝了單單元系統的超級優化。 

我們想通過將 Solana 比作超級蒸汽機車,來結束我們對技術歷史的探索,它利用了古老技術範式的所有可能的技術優化,但最終是不可擴展的和技術死胡同。我們可以贊揚和欽佩在設計和運行這些技術奇跡時所採用的獨創性;但它們仍然是技術死胡同。 

3. 以太坊 2.0

TON 與以太坊 2.0 的比較有些復雜,因爲截至 2022 年以太坊2.0 的开發和部署仍然不完整。讓我們描述一下目前已知的情況[6]-[7]。

向以太坊2.0 的過渡將分幾個階段進行。首先,將部署一個新的 Beacon 區塊鏈(信標鏈)[6](其作用類似於原始 TON 白皮書術語中的主鏈)。這個 Beacon 區塊鏈將採用一種名爲 Casper 的原始 PoS 共識算法。其主要目的是注冊多達 64 個分片鏈(輔助區塊鏈)的狀態(最後一個塊的哈希值)。推薦使用的 PoS 算法的不同尋常之處在於:它會涉及甚至需要大量參與的驗證者(至少16,384 個),每個驗證者質押少量的 ETH(每個32 個 ETH)。這些驗證者本質上是常規的以太坊節點,只是需質押 32 個以太幣。除了與區塊和內存池傳播相關的常見以太坊網絡問題外,這些節點之間不需要特定的通信。在這方面,以太坊2.0 似乎異常“民主”(幾乎所有其他 PoS 區塊鏈項目都相當“寡頭政治”,其中數十或至多數百名驗證者在給定時刻參與實際創建區塊)。然而,這是有代價的:對於 Beacon 區塊鏈和 64 個分片鏈來說,區塊確認時間似乎都在 10 到 15 分鐘左右。換句話說,一個人必須等待 10 到 15 分鐘才能確保他們的交易確實完成了。 

假定過渡的第二階段,將包括將現有的以太坊1.0 (PoW) 區塊鏈轉換爲與新Beacon 區塊鏈相關的 64 個分片鏈之一(例如,零分片鏈)。之後,PoW 共識機制將被禁用,以太坊將繼續作爲 PoS 區塊鏈。 

最後,第三階段將包括創建 63 個其他分片鏈[7]。這樣,以太坊將由 64 個分片鏈組成,其中一個將是舊的以太坊 1.0 區塊鏈,以及一個 Beacon 區塊鏈,它是主要致力於質押、削減(懲罰行爲不端的驗證者)、達成共識和注冊分片鏈哈希值的主鏈。 

現階段尚不清楚新的 63 個分片鏈的確切功能是什么,以及這些分片鏈將如何相互作用。沒有這些信息,我們就無法真正完成我們對多區塊鏈系統的對比。但如果在分片鏈之間引入消息傳遞,則必須等待 10 到 15 分鐘,直到最終確定發出消息的分片鏈塊,然後才能在另一個分片鏈中處理該消息。這似乎是目前不考慮分片鏈交互的原因。此外,目前額外的分片根本不應該能夠運行 EVM 智能合約(盡管有一些跡象表明這可以在未來重新考慮)[7]。相反,它們應該用作分布式分類帳中的附加數據存儲。它們不會用於運行任意智能合約;相反,它們的首選用途是完成鏈下或第 2 層區塊鏈計算(類似於比特幣的支付通道或閃電網絡),可能類似於 Plasma 項目先前提出的那些(在原始 TON 白皮書的2.9.10 中討論 )。 

通過這種方式,以太坊2.0 似乎完全避免了分片鏈交互、在駐留在不同分片鏈中的智能合約之間傳遞消息等問題。相反,以太坊的未來用戶預計將在不相關的側鏈中運行他們的所有交易,並使用以太坊2.0 分片鏈來完成這些側鏈的最終狀態。正是在這個意義上,以太坊2.0 聲稱能夠從目前的每秒 15 筆交易擴展到每秒數萬筆交易。我們認爲這種說法具有誤導性,因爲存在比較具有不同一致性和最終性保證的不同類型的交易。當前每秒 15 筆交易是通常的鏈上圖靈完備 EVM 智能合約執行;在不遠的將來承諾的數以萬計的“交易”是完全不同的,可能是非常專業的交易,參與者數量有限,只有在它們產生之後才變得普遍可見。人們也可以將其與使用和不使用閃電網絡的比特幣性能進行比較。

但是,在這種情況下,還應該允許引用 TON 區塊鏈,包括所有可能的支付渠道和支付網絡內的“交易”,這些支付網絡綁定到駐留在 TON 區塊鏈分片鏈中的智能合約。因此,如果我們接受以太坊 2.0 每秒能夠執行數萬次“交易”(實際上是指側鏈和支付通道交易)的說法,那么按照這個定義,TON 將能夠執行每秒數十億次這樣的“交易”。 

總而言之,以太坊 2.0 似乎回避了真正復雜的分片鏈交互問題,如果不完全重新思考 EVM 和智能合約交互模型,這是無法解決的(我們參考原始TON 白皮書[1] 的 2.8.16 了解更多信息詳細說明),並用 63 個額外的分片鏈(10-15 分鐘的完成時間)擴充原始以太坊區塊鏈,僅用於存儲側鏈和支付通道的最終狀態[7]。這是一種有點失敗主義的做法,人們會期待世界上第二古老的核心區塊鏈項目更雄心勃勃,它是第一個引入圖靈完備智能合約的項目! 

在目前設想和測試的形式中,以太坊2.0 的目標不是達到現有 TON 實現已經達到的速度和多功能性水平。 

4. 結論

TON 區塊鏈最初是在 2017 年設想和描述的。其白皮書[1] 仔細解釋了爲什么 TON 做出的設計選擇對於構建一個真正可擴展的區塊鏈項目似乎是必要的,該項目能夠處理每秒數百萬筆交易未來沒有任何涉及其智能合約邏輯及其交互的本質變化。這就是爲什么 TON 被選爲當時唯一的第五代區塊鏈項目的原因。 

從那時起,新的區塊鏈項目不斷湧現。人們會期望他們克服 TON 白皮書中討論的所有舊區塊鏈項目的限制,並可能提出一些區塊鏈开發的新方法。相反,我們看到基於即使在 2017 年就已經過時的想法而重新出現的區塊鏈。比如 Solana,從 2019 年开始設計,在 TON 白皮書的術語中,它是一個本質上不可擴展的“第三代區塊鏈項目”的備擇方案,與 2013 年的 BitShares 項目,EOS 的前身是統一類型。如果讀者對 Solana 與 2013 年一個看似不起眼的聲稱提供類似性能的項目的反復比較感到沮喪,那可能是有充分理由的:如果我們可以在某種程度上使用過去來預測未來,我們可能會預測 Solana 在其成立九年後(即2028 年)將同樣面臨困境。此外,由於原始 TON 白皮書中解釋的原因,稍後向 Solana 添加分片以克服其固有的不可擴展性幾乎是不可能的。另一個讓我們失望的區塊鏈方案是以太坊 2.0,它基本上抵消了以太坊的主要成就:圖靈完備的智能合約,並聲稱它們畢竟不是特別有用。另一方面,以太坊 2.0 很好地說明了上面提到的與 Solana 相關的一般原則:如果沒有考慮到這些問題,就無法將分片和可擴展性改造到最初設計的區塊鏈項目中。 

截至 2022 年,TON 區塊鏈仍然是爲數不多的真正可擴展的區塊鏈項目之一。因此,它仍然是最先進的區塊鏈項目(原始白皮書中的“第五代”),能夠執行每秒數百萬比交易,如果將來有必要,每秒可以執行數千萬次真正的圖靈完備智能合約交易,只需要很小的內部更改。自成立以來的五年中,它仍然處於通用區塊鏈技術的最前沿。 

自 2017 年以來,基於過去幾年开發的 TON 技術的實施,各種測試網和主網的高性能進一步驗證了 TON 白皮書中提出的架構方法的效率。 

參考文獻

[1] TON 白皮書,在线查看 https://ton-blockchain.github.io/docs/ton.pdf

[2] Solana:高性能區塊鏈v0.8.13 的新架構,https:// solana.com/solana-whitepaper.pdf

[3] Tower BFT:Solana 的PBFT 的高性能實現,17.07.2019,https://medium.com/solana-labs/tower-bft-solanas-high-performance-implementation- of-pbft-464725911e79

[4] 8 項創新讓 Solana 成爲首個 Web 級區塊鏈,https://solana.com/news/8-innovations-that-make-solana-the-first-web-scale-blockchain 

[5]解釋:系統中斷如何擾亂 Solana 的大規模活動,https://www.cnbctv18.com/cryptocurrency/solana-sol-token-solana-outage-cryptocurrency-10822571.htm

[6 ]你需要先閱讀的信標鏈以太坊2.0 解釋器,https://ethos.dev/beacon-chain

[7] 以太坊升級:分片鏈,https://ethereum.org/en/roadmap/danksharding/

[8] EOS.IO 技術白皮書,https://gith ub.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md 

[9] S.Larimer,比特股的歷史,2013 年,https://docs.bitshares。org/bitshares/history.html

[10] M. Castro、B. Liskov 等人,實用拜佔庭容錯,第三屆操作系統設計與實現研討會論文集(1999 年),第 173 頁。http://pmg.csail.mit.edu/papers/osdi99.pdf

[11] Crtomir Ipavec,Solana,https://medium.com/crypto-articles-randomly/solana-9c432a1b84a8 

[12] https://docs.solana.com/developing /on-chain-programs/

[13] https://docs.solana.com/developing/programming-model/

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

相關文章