關於數據可用性的十問十答:以Celestia為例
什么是 DA 數據可用性?
數據可用性解決的問題是:這些數據已經發布了嗎?具體來說,當節點接收到一個新的即將添加到鏈上的區塊時,它會驗證數據的可用性。節點會嘗試下載新區塊的所有交易數據以確認其可用性。如果節點能夠下載所有交易數據,那么它就成功地驗證了數據可用性,證明了區塊數據確實已經發布到網絡上。
如你所見,模塊化區塊鏈,例如 Celestia (可通過此鏈接了解更多信息: https://docs.celestia.org/learn/how-celestia-works/data-availability-faq ) 利用其他原語讓節點更高效地驗證數據可用性。數據可用性對於任何區塊鏈的安全至關重要,因為它確保任何人都可以檢查交易账本並進行驗證。當區塊鏈規模擴大時,數據可用性尤其成問題。隨着區塊變大,普通用戶下載所有數據變得不切實際,因此用戶無法再驗證鏈的真實性。
數據可用性的問題是什么?
這個問題發生在新區塊的交易數據不能被網絡上的節點下載和驗證時。一個可能的情況是,區塊的生產者故意不公布交易數據,這被稱為數據隱匿攻擊。如果交易數據沒有被發布,那么網絡上的節點就不能確認並接受新區塊,導致區塊鏈更新到最新狀態的過程中斷。
由於節點不能驗證新區塊的數據,這可能導致區塊鏈運行停止,或者更糟糕的是,攻擊者可能利用這個漏洞盜取資金。後果的嚴重程度將取決於區塊鏈的類型(L1 或 L2)以及數據可用性是保持在鏈上還是鏈下。在 Layer 2 的擴展方案中,比如 rollups 和 validiums,數據可用性問題尤為常見。這些技術嘗試通過在鏈上擴展處理能力來提高區塊鏈的性能,但這也可能引發新的數據可用性挑战。
在 Celestia 中節點怎么驗證數據可用性?
在大多數區塊鏈中,節點通過下載一個區塊的所有交易數據來驗證數據的可用性。如果節點能夠下載所有數據,那么它們就驗證了數據的可用性。在 Celestia 中,輕節點(light nodes)可以使用一種新的機制來驗證數據可用性,而無需下載一個區塊的所有數據。這種驗證數據可用性的新方法稱為數據可用性抽樣。
數據可用性抽樣是什么?
數據可用性抽樣是一種使輕節點無需下載區塊的全部數據即可驗證數據可用性的機制。數據可用性抽樣(DAS)的工作原理是讓輕節點進行多輪隨機抽樣,以獲取區塊數據的小部分。隨着輕節點完成更多輪的數據抽樣,它對數據可用性的信心就會增加。一旦輕節點成功達到預定的信心水平(例如 99% ),它將認為區塊數據是可用的。
想要一個更簡單的解釋嗎?查看這個討論帖子,了解數據可用性抽樣就像擲硬幣一樣。 https://twitter.com/nickwh8te/status/1559977957195751424
Celestia 在數據可用性抽樣方面的一些安全假設是什么?
Celestia 區塊鏈網絡中數據可用性抽樣(Data Availability Sampling,簡稱 DAS)的兩個安全假設:
-
輕節點數量假設 : Celestia 假定網絡中存在足夠數量的輕節點,這些輕節點會對新生成的區塊進行數據可用性抽樣。這是基於對數據進行隨機樣本檢查的機制,即輕節點不需要下載整個區塊的數據,而是下載一部分數據來驗證整個區塊的數據是否可用。這個假設保證了如果區塊數據確實發布到了網絡上,那么完整節點能夠通過聚合輕節點抽樣的數據部分來重構出完整的區塊。這種假設下,對於更大的區塊,相應地需要更多的輕節點來確保數據可用性。
-
連接到誠實完整節點 : 第二個假設是每個輕節點至少能夠連接到一個誠實的完整節點。這樣做是為了保證輕節點能夠接收到錯誤擦除編碼塊的欺詐證明(fraud proofs)。欺詐證明是一種安全機制,用於驗證區塊數據是否被正確處理。如果輕節點在日食攻擊期間(這是一個網絡攻擊類型,攻擊者嘗試將目標節點隔離,讓它只能連接到惡意節點)不能連接到至少一個誠實的完整節點,它將無法驗證區塊是否被不當構建,因而網絡的安全性和可靠性會受到威脅。
為什么區塊重構對安全性是必要的?
在區塊鏈中,"重構區塊"意味着如果我們沒有一次性獲得整個區塊的數據,我們也能通過手中已有的數據碎片來復原出完整的區塊內容。這就好比我們手裏有一張撕碎了的紙,如果每一片撕碎的部分都有一些重疊,我們就有可能把整張紙拼回原樣。
在 Celestia 這樣的系統中,通過數據擦除編碼(erasure coding),即使我們沒有拿到完整的區塊數據,只要有足夠的數據片段,也可以把整個區塊的數據復原出來。數據擦除編碼會創建一些額外的數據冗余,這樣即便部分數據丟失,剩下的信息也足夠我們重構出完整的區塊。
為什么這樣做對安全性很重要呢?因為這確保了即使在不完美的情況下 —— 比如說有惡意節點試圖隱藏數據或者網絡不穩定導致數據無法完整傳輸 —— 我們仍能驗證交易的完整性和正確性。如果有人試圖篡改或隱藏交易數據,只要我們能重構出區塊,就可以發現並證明這種篡改,保障整個區塊鏈的透明度和可信賴性。
什么是數據存儲?關於數據存儲的問題是什么?
數據存儲涉及到存儲和訪問過去交易數據的能力。
數據存儲和檢索需要用於多個目的,例如:
-
閱讀之前交易的信息
-
同步節點
-
索引和提供交易數據服務
-
檢索 NFT 信息
數據存儲的問題在於是否可以存儲過去的交易數據,並在以後成功地檢索。如果無法檢索歷史交易數據,可能會導致一些問題,比如用戶無法訪問他們過去交易的信息,或者節點無法從創始區塊同步數據。幸運的是,關於存儲和訪問過去數據的假設要求不高。只需要能夠訪問區塊鏈歷史記錄的單一副本,用戶就可以獲得歷史交易數據。換句話說,數據存儲安全是一個 1 對 N 誠實假設。
數據可用性和數據存儲有什么區別? 區塊鏈狀態如何融入這個問題?
數據可用性是關於驗證新區塊的交易數據是否公开可用的問題。相比之下,數據存儲涉及到存儲和訪問舊區塊的過去交易數據。
到目前為止,我們討論的都是交易數據,但區塊鏈狀態是一個相關的話題。狀態與交易數據不同。具體來說,狀態就像是網絡的當前快照,包括了账戶余額、智能合約余額和驗證者集合信息等。由狀態大小引起的問題在性質上與數據可用性和可檢索性問題不同。
為什么 Celestia 不鼓勵存儲歷史數據?如果沒有獎勵,誰可能存儲歷史數據?
大多數區塊鏈不鼓勵數據存儲,因為保證歷史數據永久可檢索不應該是區塊鏈的責任。此外,數據存儲問題只需要一個當事人來存儲和提供數據給用戶,這不是一個強烈的問題。因此,Celestia 的目標是提供一種安全且可擴展的方法來驗證數據的可用性。一旦數據被驗證為可用,存儲和檢索歷史數據的任務就留給了需要數據的其他實體。幸運的是,即使 Celestia 本身不直接提供激勵措施(例如,通過支付代幣或其他獎勵)來鼓勵數據的存儲和檢索,還是有其他因素促使某些組織或個人出於他們自己的利益存儲歷史數據,並將其提供給需要它的用戶。
可能會存儲歷史數據的參與者有多種類型。其中一些包括:
-
提供對過去交易數據訪問的區塊瀏覽器。
-
為過去的數據提供 API 查詢的索引器。
-
需要歷史數據來進行某些處理的應用程序或者 Rollup。
-
希望保證能夠訪問其交易歷史的用戶。
區塊鏈可以做些什么來提供更強的數據可檢索性保證?
-
根據節點存儲的交易數據量和它們服務的數據請求來獎勵節點(一些數據存儲區塊鏈,如 Filecoin ,就是這種情況)。
-
將交易數據發布到激勵存儲和提供歷史數據請求服務的數據存儲區塊鏈上。
參考鏈接:
https://docs.celestia.org/learn/how-celestia-works/data-availability-faq
閱讀更多:
從單鏈到模塊化:Avail 如何改變區塊鏈應用开發
新手小白如何在 30 秒內安裝運行 Celestia 輕節點?
速看!關於模塊化區塊鏈的 7 個誤解及真相!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
AICoin x Bitget研究院:剖析牛市關鍵指標,如何抄底與逃頂
原文來源: AICoin 在波動頻繁的加密貨幣市場中,投資者常常面臨抄底與逃頂的挑战。為幫助投資者...
聚焦Binance MVB第8季項目Alias:融合加密技術的AI代理創新
隨着基於意圖的交易成為互聯網入口的新形式,科技巨頭正在加倍投入 AI 代理。 作為 AI 行業的領...
Pantera創始人:2013-2015年購买全球2%比特幣,到今天回報達1000倍
作者|Dan Morehead Pantera 創始人 編譯|吳說區塊鏈 原文鏈接: https:...
星球日報
文章數量
7287粉絲數
0