撰文:Lens Protocol
編譯:Peng SUN,Foresight News
4 月27 日,Web3 社交圖譜協議Lens Protocol 推出Optimistic L3 擴展解決方案Momoka 內測版(原名為Bonsai),已可供Lens 開發者使用。 Momoka 要解決的依然是區塊鏈的存儲與擴容限制及其與Web3 社交大規模採用之間的矛盾問題,該方案試圖在不犧牲用戶主權的情況下提高網絡的吞吐量並降低成本。 Momoka 的特點是不會將交易壓縮到L1,而是將它們發送並存儲在數據可用層上。
一、超越區塊空間的擴展:數據可用層
作為Web3 社交圖譜協議,Lens Protocol 支持用戶擁有和控制其數字身份與社交圖片,也支持將任何用戶生成的內容(文字、音樂或視頻)鑄造成NFT,允許創作者通過NFT 實現盈利。截止今日,雖然仍處於測試階段,但Lens 用戶已經創建並收集了超過340 萬枚NFT,平均獲利收入約為50 萬美元。由於將內容代幣化為NFT 需要為區塊鏈提供的安全與交易保證支付一定的手續費成本,但對於內容創作者來說,重要的是確定某一特定的內容是否適合代幣化,有些內容可能不需要這種級別的安全與保證。
數據可用層(Data availability layers)用於避免在鏈上存儲數據,通過將鏈上資源指向現有的數據可用性位置(存儲)來減少成本,這是擴展與NFT 等鏈上所有權相關信息的一種便捷方式。同樣,雖然Lens 上的內容可能包括實際的鏈上交易,但內容數據本身被鏈接到數據可用位置,如Arweave。
另一種解決方案Bundlr 實現了Arweave 的可擴展性,提供了數據可用性保障,能夠使用EVM 支持的錢包來保存DA 邏輯,并快速將數據發佈到Arweave。 DA 層可用於存儲Lens 原生操作,譬如發帖、評論、鏡像(Mirrors)、點贊等等。
然而,在鏈上存儲數據成本昂貴,而且EVM 只能根據一個區塊配置的最大Gas 限制來處理每個區塊內有限數量的交易。 Polygon PoS 是一個區塊時間為2 秒的共享區塊空間。因此,一些延遲不可避免,而每個區塊的最大Gas 限制使得高需求的社交媒體操作的擴展具有挑戰性。然而,Polygon PoS 仍然是一個保護基於區塊鏈的Lens 工件(譬如個人資料和用戶網絡所有權)的一個很好的解決方案。事實上,很多用戶生成的內容代幣化可以在zkEVM rollup 上鑄造,同時使用以太坊網絡作為最終層。
通常來說,高需求的社交體驗峰值為25,000 TPS。雖然Lens Protocol 今天可能不需要這一級別的容量,但可擴展性仍然是要考慮的關鍵,它可以使Lens 為Web3 提供社交層,並支持任何社交網絡用例。有了Momoka,Lens 的可擴展性就不再受限於區塊空間。
在Lens,我們認為Web3 的社會基礎設施堆棧應該是精細化且專門構建的,這取決於不同的網絡工件類型。對於用戶個人資料等高價值的工件,更高的安全性很有價值。對於評論等更隨意的網絡工件,一個更輕便的DA 基礎設施層可能是一個可行的解決方案。
二、Lens 原生的超大規模解決方案
Momoka 是一個Optimistic L3 擴展解決方案,可在鏈下處理Polygon 交易,以實現超大規模並降低交易成本。雖然使用區塊鍊為用戶提供所有權和控制權很重要,但Momoka 為社交網絡增加了一個新的解決方案,使Lens 能夠提供更大規模的擴展性。 Momoka 沒有將交易壓縮到類似於L2 解決方案的L1 中,而是將交易發送到數據可用層,以優化成本並實現社交媒體網絡所需的更高可擴展性,無需考慮區塊空間或區塊時間配置的限制。
Momoka 是一個開源軟件,任何人都可以作為一個節點實時運行,通過操作無需信任的交易提交器和驗證器,以驗證Lens 數據可用性內容出版物(Publication)和相關操作。理想情況下,運行一個唯一的驗證器就足以實現確定性。長期目標是將Momoka 擴展為一個完整的網絡協議基礎設施,一個內容出版物可以被多個Momoka 節點提交與驗證,以提高內容出版物的有效性。
Momoka 的構建方式不依賴於Lens API 等連接層;節點運營商可以完全獨立地運行節點,這意味著即使Lens API 或任何第三方對Lens Protocol 的訪問點不復存在,你也始終能證明內容的有效性。 Momoka 還支持索引——這意味著通過Momoka,節點運營商可以流式傳輸和索引Lens 數據,而無需任何第三方保留和擴大Lens 無許可數據基礎設施。
即日起,要想運行一個Momoka 節點並為Lens 生態系統做出貢獻,可前往GitHub 開始驗證Lens 數據可用性交易。
三、Momoka 運作方式
Lens Protocol 目前部署在基於EVM 的Polygon 網絡上,發帖、評論、鏡像、關注和收藏等所有操作都是被構建、簽名並發送以存儲在EVM 上的交易。與EVM 過程不同,Momoka 構建交易,需要來自錢包的簽名(這將在鏈上傳遞狀態),但不在鏈上發送和廣播實際交易。
相反,交易簽名和類型化數據用於將DA 元數據創建為交易。然後,該交易被傳送到DA 層,其中包含創建該交易時的區塊編號和區塊哈希、簽名的類型化數據、交易簽名以及其他關鍵細節等信息。此數據的結構僅需一個存檔節點即可完全驗證。
EVM 的功能是大型狀態機。 EVM 的JSON-RPC 方法允許使用eth_call 模擬交易,它可以確定交易的結果(有一定的限制)而不需要實際發送。你可以指定一個區塊號(block number)來運行模擬交易,並將已簽名的類型化數據交易與類型化數據一起使用。這可以通過Lens Protocol 智能合約上的每一個withSig 方法來完成。只需一個Polygon 節點,任何人都可以驗證DA 層的數據是準確的,在那個時間點上會是有效的,並且符合Lens Protocol 智能合約規則。
Momoka 允許Lens 生態系統擴展到更高的TPS(這是目前EVM 鏈無法實現的),並提供一個具有成本效益和低延遲的解決方案。這可以在不影響用戶對其個人資料和社交圖譜的所有權與控制權這一核心價值的情況下實現。同時,索引過程對應用開發者來說並不陌生。使用Momoka 是可選的;喜歡Momoka 的人可以繼續把所有信息都存儲在Polygon 上。然而,如果內容出版物不需要無信任執行層的功能,就沒有必要使用EVM 狀態。
Momoka 使節點運營商能夠驗證特定操作是否已按照Lens Protocol 智能合約規則在鏈上執行(或根據任何其他智能合約規則進行驗證),同時將交易本身存儲在數據可用層以進行驗證。
Momoka 涉及執行與在EVM 鏈上相同的簽名操作,但無需在鏈上實際發送交易並花費在EVM 狀態下執行交易所需的Gas。相反,一個數據可用性交易是根據Momoka 規則創建的,並導出到DA 層,附有證明和所需信息。該解決方案使任何人都能交叉檢查數據,提供有保障的證據,證明該操作必須是由具有創建並提交交易簽名能力的用戶執行的。交易本身通過模擬進行演示。這種方法允許Lens 在保持區塊鏈提供的所有權和信任的同時,根據用例和內容類型,隨時隨地進行擴展。
由於數據存儲在去中心化層上,因此沒有中心化實體控制內容。用戶保留其內容出版物的所有權,如果Lens 生態系統的任何部分失效,數據仍然是可驗證、可訪問和可供任何人使用的。去中心化確保用戶的數據提交無法被篡改。
四、Momoka 網絡的組成部分
提交器(Submitters)
提交器負責驗證和構建DA 元數據並提交給Arweave。在DA 提交生成證明後,數據會通過Bundlr 上傳到Arweave,並能得到即時的回應。提交器必須提供任何人都可以提出異議的證明。驗證器軟件監聽從白名單提交器地址發送的DA 內容出版物,並驗證其有效性。
為了保持信任,提交器要對自己的行為負責,並面臨由網絡協議驗證的不當行為的潛在懲罰。最初,提交器白名單將包括一個由Lens 核心團隊運營的單一地址。隨著該方法被證實,該系統將被擴大,允許任何人成為提交器,並對良好行為進行獎勵,對不良行為進行懲罰。如果對提交器來說不會造成任何損失,他們可能會用無效的提交來充斥系統,使驗證器不堪重負,導致延遲。
在測試階段,Lens 團隊將負責糾正任何錯誤,併計劃在測試結束後對錯誤提供漏洞賞金。
驗證器(Verifiers)
驗證器的任務是監控提交器的DA 內容出版物並確認其有效性。它們在評估即將發布的內容出版物時必須遵循特定標準,主要目標是確保提交器是真實的。任何人都可以使用開源軟件通過一些命令來運行驗證器。驗證器利用LevelDB 快速存儲結果。該代碼能夠將分叉存檔節點與Foundry 的anvil 一起用於本地機器執行。但是,為了獲得最佳速度,目前建議使用存檔節點。運行驗證器所需的只是一個存檔節點。
時間戳(Timestamps)
你可能擔心提交器可能會就它在哪個區塊上進行提交這件事對你進行欺騙,這正是Bundlr 時間戳證明發揮作用的地方。此外,每個簽名都有一個截止日期,該截止日期與挖礦區塊的時間戳相對應,如果發送則簽名無效。 Bundlr 使你能夠請求時間戳證明,在存儲時返回當前的時間戳,允許任何人驗證其時間戳。這是確定要使用適當的區塊號的真實來源;我們應該使用最接近Bundlr 生成時間戳的區塊號。需要注意的是,由於節點軟件的原因,延遲是不可避免的,所以如果它選擇了一個區塊號,並且經過驗證,如果它落後了一個區塊號,這也是可以接受的範圍。
五、向後兼容無需簽名
出色的用戶體驗對於Lens 用戶來說至關重要。 DA 內容出版物與可以代表用戶發帖、鏡像或評論調度程序(dispatcher)一起工作。如果啟用,它將通過狀態檢查。 Lens Protocol 合約邏輯規定,如果調度程序代表用戶簽名,則交易有效。不想信任調度程序的用戶仍然可以用錢包對類型化數據進行簽名並通過提交器提交。此過程與當前流程類似,但交易被發送到Momoka 提交器而不是Polygon 節點。
無Gas
DA 操作不需要Gas,可以免費使用。客戶端仍然需要將contentURI 上傳到可解析的位置。提交器通過Bundlr 支付在Arweave 上存儲DA 元數據的費用,這比可執行EVM 交易的成本要低得多(成本低1000 倍)。
收藏
將用戶生成的內容作為NFT 收藏,一直是Lens 協議中至關重要的貨幣化層。雖然Momoka 交易不是鏈上交易,但在創建者設置這些參數以啟用代幣化的情況下,創作者或內容消費者可以代表創作者「懶惰鑄造」(lazy mint)內容。這意味著只要有想法,任何內容都可以被貨幣化。我們期待集成商將Polygon 上的懶惰鑄造作為一項功能,並在Momoka 上推出。
六、Momoka 瀏覽器
為了更容易找到任何使用Momoka 進行的交易,Lens 構建了Momoka Explorer(momoka.lens.xyz)來跟踪和查找Momoka 交易,並監測Momoka 的吞吐速度。你可以找到交易的所有細節和所有相關數據。 Momoka Explorer 還允許通過自己的節點驗證交易。
七、Momoka 路線圖
Momoka 測試版現已上線。任何人都可以使用Momoka 節點驗證器來證明和驗證交易。目前,Momoka 支持的交易包括發佈內容出版物、評論和鏡像。不久之後,Momoka 將支持將數據可用性評論發佈到鏈上內容出版物中,反之亦然。
未來,Momoka 交易可以作為網絡協議進行,這意味著多個節點必須驗證交易以確保其有效性,並且節點之間可以對彼此的驗證提出異議。網絡協議也可以伴隨激勵和罰沒機制來維持協議的有效性。
由於Momoka 是開源軟件,任何人都可以做出貢獻並幫助改進它。隨著更多地了解Momoka 如何在超大規模下工作,團隊將不斷改進源代碼並添加功能。
Momoka 被設計為一個節點網絡,可以作為一個通用的數據擴展解決方案,也可以被社交網絡之外的其他用例使用。