TTF(time to finality),是指一個交易信號從開始廣播到到達最終狀態所花費的時間。

原文:A tweet on rollup time-to-finality(TTF)(X)

作者:larry0x

編譯:Frank,Foresight News

封面:Photo by Daniele Franchi on Unsplash

首先,什麼是 TTF,為什麼它很重要?

最終性是交易永遠不能被取消、恢復或修改的狀態,也即被視為已解決對應的交易問題。

TTF(time to finality)是一個交易信號從開始廣播到到達最終狀態所花費的時間,以下是幾個選定鏈的 TTF:

TTF 是一個具有多種用途的重要參數:

  • 如果我是一個接受加密貨幣支付的商家,我想在交付商品或服務之前等待 TTF,以便我知道付款不會被取消。
  • 如果我是跨鏈橋接協議,並且發送方鏈上提交了一個數據包,我想在將其中繼到接收方鏈之前等待 TTF。
  • ......

其次,Rollups

Rollup 區塊的生命週期有 2 個階段:

(1)其數據被發佈到數據可用性(DA)層;

(2)在結算層證明有效;

值得注意的是,TTF 對於 Rollup 鏈的全節點和輕節點是不同的:

  • 對於前者,他們不需要等待(2)結算,因為只要(1)中發佈區塊數據,他們就可以立即自己驗證有效性;
  • 對於後者,他們確實需要等待結算過程;

在結算層證明階段,有兩種類型的 Rollups,具體取決於他們使用的機制:

  • Validity Rollups(又名 zero-knowledge rollups,zkRUs)。 在排序器生成一個區塊之後,證明者(通常是與排序器相同的人)提交一個有效性證明,通過一些加密魔法證明該區塊是有效的。
  • Optimistic Rollups(opRUs)。 排序器生成了區塊,但並不證明它是有效的。 如果它實際上無效,任何人(證明者)都可以提交欺詐證明來挑戰它,這會導致區塊被拒絕。 如果沒有人證明某個區塊在一段時間內(稱為爭議期)無效,則該區塊被視為有效。

注:我不喜歡 zkRU 這個詞,因為很多這樣的證明系統實際上不是零知識技術,所以「Validity Rollup」是更準確的術語。 然而,「zkRU」的使用是如此普遍,所以我就用它。

還有一些重要的事情需要瞭解:

  • 實際上,區塊數據通常不會在區塊生成后立即發佈到 DA 層。 排序器通常會稍等一下,然後批量發佈幾個區塊(可能是為了節省 Gas 費);
  • 有效性證明也經常被延遲,通常是因為生成這些證明的計算量很大並且需要時間;
  • 有效性和欺詐證明不僅在鏈上傳播。 例如,如果有人向我發送鏈下有效性證明,我可以確定該區塊是有效的,而無需等待(2)鏈上結算過程。

最後,我們準備討論 Rollup 交易需要多長時間才能達到最終結果。

對於全節點而言,過程很簡單:只要區塊(1)被發佈並在 DA 層上完成,那麼它就被最終確定。

如果我們表示:

  • T1:區塊發佈在 DA 層上的頻率(例如,如果排序器每 10 分鐘在 DA 層上發佈一批,則 T1 = 10 分鐘)
  • T2:DA 層的 TTF

那麼 Rollup 的 TTF = T1 + T2。

對於輕節點,他們必須等待(1)和(2)完成。 對於 opRU,(2)的時間為挑戰期; 對於 zkRU 來說,時間是證明者生成併發佈有效性證明後。

如果我們表示:

  • T3:對於 opRU,挑戰期;
  • T4:對於 zkRU,有效性證明發佈在結算層的時間;
  • T5:結算層的 TTF;

然後是 Rollup 的 TTF:

  • 對於 opRU:max(T1+T2, T3);
  • 對於 zkRU:max(T1+T2,T4+T5);

這些方程中的「最大值」意味著我們需要等待 DA 和結算過程完成,以時間較長者為準(幾乎總是結算)。

現在,問題來了! 請記住,我們說過證明也可以在鏈下傳播。 對於 zkRU,如果我們在鏈下收到有效性證明,那麼我們可以立即說交易已完成,而無需等待鏈上結算過程。

對於 opRU 來說,這很難說。 挑戰期(T3)往往較長的原因是擔心結算層可能審查欺詐證據。 所以這實際上取決於你的風險承受能力。 如果您非常有信心結算層不會審查交易,您可以選擇等待更短的時間。 否則你會等待更長的時間,但你不必等待比 T3 更長的時間。

讓我們總結一下:

這裡有兩個實際案例,Arbitrum 和 zkSync。 他們使用乙太坊進行 DA 和結算,所以 T2 = T5 = 13 分鐘。

  • Arbitrum 的排序器大約每 T1= 6 分鐘發佈一次數據,Arbitrum 的挑戰期 T3= 1 周;
  • zkSync 的排序器大約每 T1= 3 分鐘發佈一次數據,證明不定期發佈,但平均一次 T4 = 1 小時;

我們還可以考慮一個假設的 zkRU,它使用 Celestia 進行 DA,我認為這更接近最終結果:

  • T1 = 0(Celestia 很便宜,所以我們假設區塊在生成后立即發佈);
  • T2 = 12 秒;
  • T4 = 證明生成時間,取決於證明系統;

最後,簡要討論下這一切的含義

如您所知,我是 Cosmos 的粉絲,IBC 使用輕節點用戶端來驗證數據包,因此需要等待 TTF,如上圖「For light nodes」一欄所示。

對於 opRU,這可能長達 1 週(如果您對乙太坊的審查阻力不太有信心),這對於實際目的來說太長了。 這就是為什麼對於 opRU,我們必須使用全節點橋,例如 Axelar 和 Wormhole,它們由一堆運行全節點的運營商組成。

缺點是我們需要信任這個運營商集合,它在經濟上可能不如發送者鏈安全,這就是我看空 opRU 的原因。

對於普通的 zkRU,我們只需要等待 DA 最終確定(在乙太坊上為 16 分鐘)+ 證明生成時間,我們不需要等待證明在乙太坊上發佈——這是相對 opRU 的主要優勢!

這也是我認為 Celestia 可以改善 Rollup 跨鏈體驗的一種方式。 在乙太坊上,我們只等待 12 秒 + 證明生成時間,而不是等待 16 分鐘。 輕節點用戶端可以使用 QGB 檢查來自 Celestia 驗證器的證明(我猜測它現在已重命名為 Blobstream),或者也可能進行 DA 採樣。

免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 文章內的資訊僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。