跳到正文

資料可用性

一份以驗證為優先的指南,涵蓋資料發布、可擷取性、承諾、有效性、最終性、取樣、保留、歸檔、Rollup 狀態推導與可執行的復原。

更新於

僅供教育用途,不構成投資或安全建議。資料可用性取決於協定參數、網路、軟體、營運者、歸檔與復原路徑,而這些因素都可能失效或變更。

直接答案

資料可用性是指:協定規定的足量資料在要求的期間內發布,且預期參與者能夠取得,以驗證、推導或重建相關狀態。所需物件可能是交易輸入、狀態差異、編碼後的資料片段或其他明確定義的批次格式;網站、RPC 端點或專案 API 上線,並不等同於資料可用。

四類主張必須分開。可用性關注資料是否及時發布給協定的使用者;可擷取性關注特定一方目前或日後能否取得位元組;有效性關注狀態轉換是否符合規則或證明限制;最終性關注共識是否仍能透過正常協定運作替換該承諾。具約束力的承諾、KZG 證明、有效性證明或已達最終性的納入,本身都不能同時證明這四項;短期可用也不等於永久歸檔。

運作方式

  1. 先定義主張,再進行衡量:明確指定批次、Blob、命名空間或編碼資料物件;協定及版本;預期使用者;所需的推導、驗證或退出工作;以及可用、挑戰與復原期間。「完整資料」是指依該協定足以完成工作的資料,而不是未經定義的每筆交易副本。
  2. 鎖定發布路徑和證據:結算鏈、專用 DA 鏈、calldata、Blob sidecar、外部承諾或委員會憑證;區塊、時隙與批次識別碼;編碼與壓縮方式;承諾;以及實際使用該承諾的合約或跨鏈橋。資料發布在某處,並不能證明另一個驗證者會檢查它。
  3. 獨立測試綁定關係與重建能力。繞過專案 API 取得位元組,驗證雜湊、KZG 或其他承諾及納入參照,檢查框架與抹除編碼,解碼批次,並重現狀態推導所需的輸入。只有有效承諾而沒有位元組,不算成功重建。
  4. 釐清接受模型。記錄完整節點是否下載物件、輕節點是否取樣經驗證的資料片段、驗證者是否負有保管義務,或資料可用性委員會是否簽署門檻憑證。說明取樣、抹除編碼、對等節點獨立性、門檻、質押、金鑰和日蝕攻擊假設,以及結算合約或跨鏈橋實際驗證的內容。
  5. 分別追蹤不同狀態與時鐘:已提交、已納入、在協定期間內可用、獨立用戶端可擷取、已解碼或推導、執行有效、安全、已達最終性和已歸檔。有效性證明可以確認受限制的運算,但獨立推導或運作所需的資料仍可能不可用。
  6. 衡量保留、啟動同步與經濟性。記錄協定最低服務期間、修剪行為、歸檔與快照提供者、新節點要求、原始及編碼位元組、額外負擔、單位價格、證明與交易成本、容量上限、補貼及備援成本。臨時 DA 到期後,長期擷取還會依賴額外設施。
  7. 演練故障。測試資料扣留、選擇性服務、樣本相關或遭日蝕攻擊、委員會失效、DA 停擺或分叉、結算重組、框架缺失、歸檔遺失、排序器審查與費用暴增。使用實際軟體、資料和 Gas 驗證安全停機、強制納入、重試、備援、重建與退出,並保存承諾、收據及獨立歸檔證據。

範例

  • 正確的資料成本單位。 一個批次含 400,000 bytes,涵蓋 2,000 transactions,單位成本為 $0.00002 per byte。DA 資料費為 400,000 * $0.00002 = $8 per batch,即 $8 / 2,000 = $0.004 per transaction。若單位價格上漲十倍至 $0.00020 per byte,成本變成 $80 per batch$0.040 per transaction,而不是 $0.04 per batch。這些數字不含執行、證明、交易額外負擔、歸檔和安全餘裕。
  • 協定服務期間不等於歸檔承諾。 EIP-4844 的最低請求期間為 4,096 epochs;按 32 slots per epoch12 seconds per slot 計算,即 4,096 * 32 * 12 = 1,572,864 seconds,或 1,572,864 / 86,400 = 18.2044444444 days。這是該模型中的協定下限,並不保證某個提供者會永久保存特定 Blob。
  • 簡化的取樣機率。 僅在一個示範模型中,假設攻擊者扣留均勻抽取的擴展資料片段中的 50%,並進行 30 次相互獨立、有放回的驗證取樣。所有樣本都未觸及扣留區域的機率為 0.5^30 = 0.0000000009313225746,因此偵測機率為 99.9999999069%。這不是 PeerDAS 或其他網路的實際服務保證;對等節點相關性、取樣偏差、編碼參數和自適應攻擊都會改變結果。
  • 委員會門檻不等於目前可擷取。 假設 DA 委員會要求 5-of-7 簽章。若三名成員無法運作,只剩 4 名,便無法產生新的門檻憑證。一份帶有 5 signatures 的舊憑證只能證明當時有足夠成員依規則簽署;它不能證明某位使用者目前可取得位元組、執行有效或結算已達最終性。

風險

  • 檢查了錯誤的鏈、批次、Blob、命名空間或協定版本。
  • 把承諾或憑證誤當成底層位元組。
  • 把從單一端點成功取得資料視為整個協定均可用。
  • 把資料可用性視為執行有效性的證明。
  • 把可用性或有效性視為共識最終性。
  • 引用了過期、不安全或已被重組的結算區塊。
  • 尚未取得資料,協定保留期間就已結束。
  • 依賴單一歸檔、快照、索引器或專案 API。
  • 接受了格式、壓縮或抹除編碼錯誤的資料。
  • 未驗證雜湊、KZG 或其他承諾。
  • 對既定威脅模型取樣過少。
  • 實際樣本、對等節點或保管群組相關,卻假設彼此獨立。
  • 遭遇日蝕攻擊、有偏的對等節點選擇或選擇性服務。
  • 使用與驗證者不一致的抹除參數或重建門檻。
  • 依賴相互勾結或無法運作的資料可用性委員會。
  • 跨鏈橋或結算合約接受的物件弱於使用者預期。
  • 因排序器扣留、審查或批次框架缺失而遺失資料。
  • 遭遇 DA 停擺、分叉、重組或不相容的用戶端升級。
  • 發現強制納入、備援、復原或退出實際上無法執行。
  • 低估容量限制、費用暴增、額外負擔、歸檔成本或補貼到期的影響。

常見迷思

  • 有效性證明消除了資料可用性的必要性。
  • 承諾或 KZG 證明可以證明完整位元組曾可供取得。
  • 已達最終性的納入表示資料會永久可擷取。
  • 鏈上、Blob、專用 DA 或取樣等標籤自然提供相同的安全性。
  • 單憑更多樣本或更低成本,就能證明某種 DA 設計較優。

相關主題

來源

導覽

搜尋知識庫...