Aptos vs Sui:備受矚目的兩大公鏈究竟有何區別?

語言: CN / TW / HK

資訊來源自medium,略有修改,作者Marthe Naudts

目前所有人都在談論兩個新的L1。讓我們跟隨本文,瞭解一下大家都在關注些什麼。

背景

Meta將Diem(原名Libra)打造成了一個基於許可的區塊鏈穩定幣支付系統。從本質上講,他們想在追求壟斷的同時涉足點對點支付。但可以預見的是,監管反彈和反壟斷擔憂阻礙了他們的步伐,於是他們在今年1月放棄了這個專案。

但他們確實留下了一些有用的東西——基於rust的智慧合約和自定義交易程式語言Move。與Solidity相比,Move有很多好處,它們主要體現在:

  1. 與將資產永久鎖定在合約中的Solidity相比,其資產屬性易於定製,允許資產作為引數在智慧合約中流動,並由函式返回。
  2. 安全性:代幣和智慧合約被儲存為在Move的程式碼體系結構中具有很高地位的“資源”,這可以防止它們被複制或銷燬。

與我交談過的開發人員也提到了Move的開發體驗是多麼優越。它允許資產和操作中合約的真正可組合性。在Solidity中需要耗時3周的程式碼在Move中只需要一天。

Diem專案被砍,留下了尚且青澀的程式碼。

Aptos和Sui參與了進來。

Aptos和Sui團隊都來自Meta的原始Diem團隊。它們是使用權益證明作為其共識機制的第1層。然而,他們使用了不同版本的Move,並且在其並行執行背後有不同的演算法設計——這意味著他們的共識演算法是不同的。

最終,他們都聲稱已經解決了困擾其他L1的可擴充套件性問題。Aptos的測試網能夠處理超過160k TPS和超過1秒的TTF,而Sui聲稱幾乎可以即時結算大多數交易,每筆交易的TPS高達120k TPS。與以太坊的最大45 TPS和Solana的2.3 – 46s秒TTF相比,這種差距令我們感到興奮。他們已經/正在從Web3風投的頂級公司那裡籌集了大約6億美元。但在加密貨幣領域,始終會有承諾過高的可能性,因此任何對此感興趣的人都應該對實際的架構差異進行認真研究。讓我們一探究竟吧。

先執行,後問詢

:exclamation:大多數區塊鏈都使用順序執行,這意味著成千上萬的節點持續更新包含曾經執行的每筆交易時間順序的單個分類帳。因為每次都要新增新的進去,所以必須等待每筆新的交易被驗證,這就限制了吞吐量,並導致了高昂的gas費,特別是在網路使用量激增的時候。

順序執行不必要地限制了這些鏈上的吞吐量——大多數交易是獨立的。隨著應用需求的擴大,高延遲也可能成為一個問題,從而影響dApp的響應能力。

Sui比我要解釋得更好:

Sui和Aptos都使用並行執行,以便能夠隨著需求和利用率的增加無限擴充套件網路吞吐量。這並不是什麼新鮮事,但是並行執行說起來容易做起來難。如何就訂單達成共識?如何區分獨立交易和衝突的交易?

Aptos使用的是通過動態檢測依賴關係和利用BlockSTM執行任務來實現並行化(BlockSTM是HotStuff演算法的進化)的BFT共識演算法。

從本質上講,交易被優化執行,之後由並行執行引擎中的最大一個執行緒檢測衝突,然後通過佇列重新執行和重新驗證,接著同步並更改最終狀態。

Sui使用基於DAG的記憶體池 (Narwhal)和在執行層利用DAG實現並行化的Tusk共識演算法。它要求明確宣告交易的依賴關係,這意味著它可以並行處理大多數交易,在少數交易相互交織的情況下仍然按順序執行它們。這是通過使用兩種不同的共識路徑來實現的——獨立交易的Byzantine Consistent Broadcast和依賴交易的BFT共識。

它只在需要檢查其狀態時執行共識,通過使用“隨意排序”(vs其他完全排序的區塊鏈)來放棄大多數交易的共識。

這與Aptos形成了鮮明對比,Aptos在驗證所有區塊鏈之前會一直等到交易完成,然後重新執行失敗的鏈,讓經過驗證的鏈通過。

在所有這些中,Move起到了什麼作用?

Move對於這兩者的並行執行來說是必要的。Aptos或多或少使用了標準的Diem Move,但Sui使用了一個改編版本,使其智慧合約能夠接收物件作為輸入,對其進行操作,並將它們作為輸出返回。這兩個版本都具有以下優點:

  • 安全性:Move與Solidity的不同之處在於它對稀缺性和訪問控制的關注。它將公式視為永遠不能被非法複製或丟棄,只能被移動的基本資源。這通過防止重入漏洞、有毒代幣和欺騙性代幣批准提高了安全性。
  • 可擴充套件性:每個物件都有所有權元資料,這些元資料允許Sui驗證者使用該物件與無因果關係的交易並行執行和提交交易。Move的型別系統確保了跨交易的所有權元資料的完整性。而Solidity不允許這樣做,這是因為資產被儲存在動態可索引的對映中,所以驗證者不清楚交易是否獨立。因此,Sui需要像Move這樣的語言來並行執行,因為它允許結構化資產在合約之間自由流動。

我們如何將上述所有內容與代幣經濟學聯絡起來呢?

Aptos甚至沒有代幣,所以我們現在把這個問題放在一邊,看一下下圖。

Sui的gas費機制和儲存基金促進了Sui的並行交易和儲存任意數量的鏈上資料的能力,這意味著它在架構上具有高度的可擴充套件性。SUI代幣(上限為100億)可以被用來參與權益證明機制、用於支付gas費、用作智慧合約和貨幣政策應用的流動資產,以及用於治理/鏈上投票。

在主網啟動時,SUI總供應的一部分將是流動的。由於更高的鏈上資料需求將轉化為更多的儲存基金,這減少了流通中的SUI數量,所以儲存基金創造了重要的貨幣動態。

Sui的gas定價機制

Sui的gas定價旨在保持gas價格的可預見性和低水平。

驗證者在每個epoch (epoch是一個固定的持續時間,其中參與的驗證者集合是固定的)開始時會就全網參考價格達成一致,作為使用者提交交易時的價格錨點。

使用者分別支付執行費(gas費)和儲存費(通過治理提案確定的費用)。前者是通過在Sui各個epoch反覆執行的三步程式確定的,旨在激勵驗證者誠實地宣佈其保留價格並遵守該價格。

  • 在epoch開始時,會有民意調查要求驗證者提交他們願意處理交易的最低gas價格。
  • 隨著epoch的發展,驗證者將會獲得其他驗證者的價格資訊。
  • 在epoch結束時,每個驗證者會提交他們對其他驗證者行為的看法,這將被用來確定權益獎勵的分配規則。那些在調查期間提交低價報價或在其自行申報的參考價格基礎上處理所有交易的人將獲得獎勵,反之亦然。妙。

Sui的儲存基金

Sui旨在處理任意數量的鏈上資料。使用者將預先支付計算和儲存的費用(這樣以後的使用者就不必為部分使用者的儲存提供補貼)。儲存費用會被存入儲存基金,用於調整未來分配給驗證者的相對於SUI委託者的權益獎勵份額。如果鏈上儲存要求很高,驗證者將得到額外獎勵。

結語

Sui的Move以物件為中心的設計允許驗證者以因果排序的方式執行交易,因此獨立交易可以以任何順序處理。

這樣一來,每個驗證者都可以通過增加更多的計算能力來提高其交易吞吐量。這意味著隨著網路活動的增加,吞吐量和成本會呈線性增長。

總結

並行執行是L1的一種很有前途的機制,Sui和Aptos已經提出了一些有趣的、可擴充套件的機制來支援它。隨著其好處越來越明顯,我希望更多的開發者能夠熟悉Move。在這一點上,他們的成長將使彼此受益。

我相信我們會看到更多的L1。我確信我們將看到更多的應用程式被建立在它們之上。我敢肯定,我們會看到更多的資金投入到上述所有專案中。但從根本上說,在這個熊市的深處出現了一些非常有趣的架構差異,它們看起來很有前景。

編輯於 2022-09-07 15:58