EthStorge如何幫助DAPP實現真正的去信任化

摘要:

  • 一個去中心化應用由多個部分構成,但目前只有最核心的後端邏輯運行在以太坊上,其他部分比如前端代碼還部署在以太坊之外, 同時還包含很多沒有上鏈的數據,所以大多數 DAPP 無法完整繼承以太坊的安全性,遠未達到理想化的狀態。

  • 導致上述問題的原因主要有兩個:一是以太坊沒有為開發者提供相應的前端標準和工具,二是鏈上存儲數據的成本太高。

  • 為了提供去中心化的前端標準,EthStorage 團隊提出了 web3:// 訪問協議, 為開發者提供一整套通過智能合約來部署和訪問前端代碼,甚至是類文件系統的標準和工具,目前已成為以太坊的正式標準。

  • 為了降低以太坊鏈上數據的存儲成本,EthStorage 團隊開發了二層存儲協議 EthStorage, 利用 PoRA (Proof of Random Access) 和零知識證明,在繼承以太坊一層安全性的同時,極大降低存儲開銷。

致謝:感謝來自極客 Web3 的 Faust,ChainFeeds 的 Zhixiong Pan、LXDAO 的 Bruce、EthStorage 的 Qi Zhou, Lun Deng 對本文的反饋。

去中心化 DAPP 的背景和問題

以太坊的願景是成為世界計算機,希望在其上構建的應用程式都繼承它的安全性。開發者只需一次部署,該應用就會永遠在以太坊上運行,沒有實體可以對其進行審查或惡意操縱。

但現在的去中心化應用 DAPP 是否達到了上述目標?為了更清晰的回答這個問題, 我們需要將一個 DAPP 應用解構,看它都包括哪些部分,進而分析各個部分的去信任化程度, 來得出最終結論。

一般情況下,一個去中心化 DAPP 會包含前端界面、後端伺服器、資料庫。用戶訪問前端界面時,會通過瀏覽器和域名服務來加載前端內容。其中:

  • 前端和域名服務: 大多沒有通過智能合約來部署和訪問,區塊鏈提供的特性如避免單點故障、代碼不可篡改、抗審查、社區治理等都沒有在前端這部分體現出來。

  • 後端伺服器 :部分由智能合約實現,有些計算密集型的任務無法完全上鏈。

  • 資料庫: 部分由智能合約實現,由於鏈上存儲費用非常高,數據量較大的情況下 DAPP 還是採用鏈下的存儲方案。

通過上面的分析,可以看到 現在的去中心化 DAPP 只有部分組件通過智能合約獲得了以太坊的保護 ,以太坊體系還遠未實現當初的「去中心化的世界計算機」願景。

2023 年末 Vitalik 回顧以太坊的發展,寫了一篇反響較大的文章「Make Ethereum Cypherpunk Again」,討論了以太坊社區該如何回歸密碼朋克的理念。他在文中總結了以太坊甚至是更大範圍的 Web3 社區應該堅守的價值觀,提到非常重要的一點:

去中心化應用應儘量減少對任何單一主體的依賴,即便 DAPP 的核心開發者永久消失,應用程式也可以繼續運轉。

由此可見 Vitalik 對於去中心化應用該如何構建也有類似的期待。接下來我們 將詳細分析去中心化 DAPP 中每個組件面臨的問題 ,探討如何對其進行改進。

前端和域名服務

在去中心化應用的幾個組成部分中,前端和域名服務的中心化程度最為嚴重。 目前絕大部分 dApp 的前端都使用中心化伺服器,項目方可以隨時修改前端代碼,不需要經過社區治理,也不受到時間鎖限制,這部分的安全性與部署在以太坊上的智能合約相去甚遠。

黑客可以入侵伺服器修改前端代碼,而 dApp 用戶會因為使用該惡意前端而損失資產。這個問題在上個 DeFi Summer 中反覆出現 ,我們不禁要問:為什麼前端不能和後端一樣部署在以太坊上,讓修改行為通過社區治理和時間鎖才生效呢?

另外請設想一下, 假如 Uniswap 的開發團隊有一天不再給他們的前端伺服器以及域名服務付費,那麼 Uniswap 的用戶和 LP 將如何使用 Uniswap

絕大部分用戶並不懂得如何繞過前端和智能合約交互,雖然 Uniswap 有嘗試將其前端上傳到 IPFS,但是 IPFS 和以太坊是不同的網絡,在可靠性和去信任程度上完全不同。值得一提的是, IPFS 的內容訪問速度很慢,現在絕大多數用戶還是在和 Uniswap 部署在中心化伺服器上的前端進行交互

此外,因為 Uniswap 前端的運營主體是 Uniswap Labs,他們為了迎合監管,增加了對 Token 列表的審查, 這與他們在以太坊上部署的智能合約進成了反差,因為誰都無法隨意對智能合約進行修改。所以,在前端被審查的 Token 還是可以在合約層面被交互到的,由此可見代碼上鏈對抗審查的重要性。

後端伺服器

因為 EVM 可以提供圖靈完備的執行環境,所以大部分後端邏輯都可以在以太坊鏈上執行,我們可以說智能合約類的應用可以完全繼承以太坊的安全。只是因為成本原因,一些 計算密集型的任務無法直接在鏈上進行

針對這個問題,現在探索比較多的是使用 ZK 或者 OP 的方式, 將計算移交到鏈下完成,以太坊鏈上只對計算結果進行最終確認,以此在計算層面上進行擴容 。有些 AI 相關的項目將這類方法推向了極致,希望將 AI 大模型這種超級計算密集型的任務與區塊鏈掛鈎,值得我們去密切關注。

資料庫

對於資料庫,EVM 原本就支持鍵值對 /KV 型存儲 (Key Value Store),可以覆蓋非常多的使用場景,但核心的問題是:鏈上存儲的成本太高。

貴到什麼地步呢? 在 Gas Price 為 10Gwei 的情況,鏈上存儲 1GB 的數據需要 6200 多枚 ETH,超過 2000 萬美元! 顯然存儲成本成為了資料庫去中心化的核心問題。

我們可能會想,能否使用和上述計算擴容類似的方法,對存儲進行擴容, 也就是鏈下存儲,鏈上驗證存儲效果 。後面我們會對這個思路詳細展開。

分析了上述談及的 DAPP 組成部分後,我們發現,只有讓 DAPP 的每個部分都足夠安全和去信任,其作為一個去信任的整體,才能真正成為一個去中心化的 DAPP。而以太坊作為 dApp 的運行與託管平臺,需要給開發者提供相應的解決方案,才能孕育出符合以太坊願景的應用生態。

DAPP 的去信任解決方案

圍繞著 如何讓 DAPP 完全基於以太坊來部署和訪問,EthStorage 團隊提出了兩套解決方案:

  • web3:// 訪問協議: 解決如何使用智能合約來部署和訪問前端代碼,甚至是類文件系統的問題。

  • EthStorage 二層存儲協議: 在繼承以太坊安全性的同時,極大降低了存儲開銷。

web3:// 訪問協議

web3:// 可以被理解為去中心化版本的 http://,與 http 的 URL 中通過指定伺服器 IP 地址或者域名來訪問中心化的資源類似,web3 的 URL 需要指定一個智能合約地址或者 ENS 域名,來訪問存儲在其上的資源。

我們可以將一個網站的前端全部部署到一個智能合約中,並通過 web3:// 來訪問!可以對比一下兩者的區別:

目前 web3:// 已經成為了以太坊的正式標準(ERC-4804) ,如果希望詳細了解 web3:// 訪問協議的內容,可以訪問其官網。為了更好的在智能合約中做文件管理,我們提出了 ERC-5018,它在智能合約中模擬了一套文件系統的接口,這樣就可以通過 ethfs-cli,將打包好的前端代碼文件夾上傳到一個智能合約中,並通過 web3:// 來訪問這個網站。

大家如果感興趣,可以按照 教程 完成一個簡單的去中心化應用部署和訪問。

有了 web3:// 訪問協議,我們才能真正讓 dApp 前端也具有了「Code is law」的屬性 。對於開發者來說,一旦部署,這個前端將永久執行下去。試想如果 Uniswap labs 也將其前端部署到了以太坊,那麼即使團隊想在前端層面對用戶進行審查和限制,也無法阻止人們使用其部署在以太坊上的前端了。

當然在解決了可行性的問題後,我們還意識到鏈上存儲大量數據的成本會非常高,從而使開發者在鏈上部署前端的時候面臨困擾。我們進一步開發了 EthStorage 二層存儲協議,在繼承以太坊安全性的同時,極大降低存儲開銷。

EthStorage 二層存儲協議

EthStorage 協議由部署在以太坊上的智能合約和 Layer2 網絡中的存儲節點組成,其中, 智能合約提供了鍵值存儲, 而二層的存儲節點負責存放數據本身

用戶通過 EIP-4844 的 BLOB 將待存儲的數據上傳到以太坊上,EthStorage 智能合約只會記錄 BLOB 內數據的哈希,從而有效的降低存儲成本。

同時, 二層的存儲節點會下載對應的 BLOB 數據到本地磁碟,使用 PoRA (Proof of Random Access) 和 ZK,將存儲證明提交至以太坊上的合約做驗證, 該合約需要通過之前記錄的 Blob 哈希來確認存儲節點上傳的 ZK 證明能否對上號,以此確認二層網絡中的存儲節點真的存放了這些數據。

具體流程如下:

對於開發者來說,其上傳數據和獲取數據的接口非常簡單:

應用開發者可以直接通過 EthStorage 提供的合約接口,對大塊數據進行讀寫,寫入成本約等於直接在鏈上存儲數據的千分之一。 因此,EthStorage 不僅支持鏈上部署前端,對更廣泛的鍵值存儲資料庫操作也提供了成本更低的解決方案。

目前,EthStorage 已獲得了以太坊官方的 Grants,並且已經在 Sepolia 部署了公開測試網,歡迎大家加入。

總結與展望

大多數 DAPP 的重要組件如前端和資料庫未部署在以太坊,無法繼承以太坊的安全,導致應用作為一個整體無法做到永久執行,抗審查,可治理。

EthStorage 對此提出了兩個方案解決這個問題:web3:// 訪問協議解決使用智能合約來部署和訪問前端的問題;EthStorage 二層存儲協議解決存儲成本過高的問題。

為了實現以太坊最初的願景,我們認為它將演進為一個去中心化的 Web 伺服器,生態中的去中心化應用會將其所有組件都部署於以太坊,不管是後端代碼、前端還是數據,一旦部署,代碼可以永久運行,數據可以永久訪問,成為一個真正的 Unstoppable Dapp。

EthStorage 公開測試網正在進行第二次激勵活動,感興趣的社區小夥伴可以按照 Guide 完成自己的第一個 Unstoppable Dapp 部署和訪問!

  • Related Posts

    一場事先張揚的死亡:Jeffy假死背後的金錢和人性

    Jessy,比特鏈視界 幣圈Meme又出新敘事:死亡賽道。 …

    被幣安下架卻暴漲 羊駝幣莊家的極限操盤

    Jessy,比特鏈視界 按照常理,一個代幣被交易所下架,是一…

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

    You Missed

    從 Meme 幣到 CSGO 皮膚:投機永不眠

    • By jakiro
    • 15 5 月, 2025
    • 1 views
    從 Meme 幣到 CSGO 皮膚:投機永不眠

    這一次以太坊散戶戰勝機構

    • By jakiro
    • 15 5 月, 2025
    • 2 views
    這一次以太坊散戶戰勝機構

    Bankless:重建以太坊的產品與貨幣循環機制

    • By jakiro
    • 15 5 月, 2025
    • 3 views
    Bankless:重建以太坊的產品與貨幣循環機制

    巴菲特的 9 條重要投資經驗

    • By jakiro
    • 15 5 月, 2025
    • 2 views
    巴菲特的 9 條重要投資經驗

    華爾街日報:巴菲特為何退休?下任接班人是誰?

    • By jakiro
    • 15 5 月, 2025
    • 3 views
    華爾街日報:巴菲特為何退休?下任接班人是誰?

    Fartcoin的屁聲響徹華爾街

    • By jakiro
    • 14 5 月, 2025
    • 1 views
    Fartcoin的屁聲響徹華爾街
    Home
    News
    School
    Search