輕客戶端,助力實現鏈上信息「雲驗證」

事實上,諸如優化輕客戶端運作環境、革新輕客戶端使用功能的技術方案或許還有很多。未來還需各位開發者不斷開拓創新,打造面向Web3 的卓越輕客戶端。

眾所周知,以太坊的發展面臨著新困境。以太坊每天支持大量的經濟活動、結算數十億美元的交易,在蓬勃發展的DeFi 和NFT 領域中運行成千上萬的DApp。但是,以太坊有限的空間資源已然無法承受過多的應用,也無法接受大體量用戶的蜂擁而至。當網絡擁塞時,交易變得更加昂貴且延遲更多,給用戶帶來更大的經濟負擔。

鑑於此,相關團隊為了解決以太坊擴容難題,提出了諸多技術解決方案,其中包括分片(Sharding)。分片為網絡劃分多個軌道,以水平擴展的方式並行處理交易,在多個服務器之間分佈計算和存儲容量,從而使總體吞吐量更高。分片主打的“並非每個人都必須運行每個碎片”的技術理念,成為輕客戶端誕生的關鍵。

輕客戶端在以太坊分片中扮演重要角色,使驗證者能夠快速驗證和同步不同的分片,成功化解了不少DApp 運行過程中出現的阻滯難題。同樣面臨高速發展帶來擴容有限、用戶載量大等困境的波卡、NEO 等公鏈,也紛紛開啟了輕客戶端的實踐,為更好地佈局應用生態版圖提供更為暢達自如的環境。

Marty McFly 曾言:“未來,輕客戶端會遍布各地。”這種輕量化、用戶友好的應用程序目前已有諸多成功範例湧現。那麼究竟什麼是輕客戶端?相較傳統的應用端口有何技術上的優化與精進?面向未來,輕客戶端的大規模鋪開又需要克服怎樣的挑戰?本篇文章將聚焦上述問題,帶你洞悉輕客戶端的發展與未來。

什麼是輕客戶端?

輕鬆驗證,快速響應

在我們了解輕客戶端之前,首先需要從客戶端的概念開始說起。計算機科學中的客戶端是連接到服務器的硬件或軟件的一部分,如Internet 瀏覽器是一個連接到網站以請求其內容的客戶端。在區塊鏈世界中,客戶端是以點對點的方式連接到其他客戶端的軟件,所有客戶端相互通信且形成了一個網絡,每個客戶端都是一個節點。

以以太坊為例,過去只有一種類型的節點(又稱:全節點)負責驗證和轉播網絡上的交易和區塊。囿於互聯網和區塊鏈的運行特點,每個全節點需要下載並驗證每個區塊,對於每一筆交易也需要經過全流程的核驗和把關。那麼隨著用戶體量增大、服務型應用增多,這種全節點把控會帶來上文提及的費用高昂、查驗緩慢等難題,阻礙了以太坊的長遠發展。

在此情景之下,輕客戶端的理念逐漸興起。輕客戶端是區塊鏈生態系統中的關鍵要素,幫助用戶以安全和去中心化的方式訪問區塊鏈並與之交互,而無需讀寫區塊鏈上的大量信息。輕客戶端被允許以最小信任的方式與全節點實現交互,可以在事先不知情的情況下證明信息的真實性。輕客戶端的基本功能是:每當有區塊出現在網絡便進行下載,向客戶端發送特定狀態的默克爾證明(Merkle proofs)請求。其使用分佈式哈希表來追踪前綴節點,而不是使用本地存儲,以一種“雲存儲、雲驗證”的方式直接獲取用戶個體的信息驗證材料,促使交易、娛樂等各項活動更快開展。

整體而言,輕客戶端解決了可用性和採用技術時的主要障礙。作為Web3 基礎設施組件,輕客戶端允許以比運行完整節點更少的資源方式與區塊鏈進行交互,並且可嵌入桌面、Web 和移動應用程序。最重要的是,它們保持不信任,直接從對等節點同步區塊頭。輕客戶端通過向單個全節點發出請求、同步區塊鏈的區塊頭來驗證全節點提供的特定響應來工作,真正做到了“最多跑一次”。

NEO

NEO 技術社區生態中,有一個可實現與NEO 區塊鏈交互的輕客戶端名為Neo-Swift,主要用Swift-4 語言編寫運作。 Neo-Swift 項目的創建主要基於以下幾個原因:1、開發者想要開發分佈式iOS 應用,覆蓋範圍廣;2、建立開發者友好社區的重要方法就是創建便於非區塊鏈開發者使用的SDK;3、不少開發者喜歡Swift 且移動設備的開發與部署日益重要。據悉,Neo-Swift 能夠高效驗證用戶在鏈上的交易歷史和賬戶狀態,並為應用交互提供模擬動態框架,為NEO 生態技術社區的升級鍛造提供了全新思路。

Substrate Connect

Substrate Connect 是基於瀏覽器的Substrate 鏈上輕客戶端,已成為Substrate 技術堆棧的最新成員。這個備受期待的基礎設施組件為開發人員和最終用戶提供了一種更為簡單、快速的應用方式,以完全去中心化、無需信任的方式連接到Substrate 鏈,賦予更多DApp 服務以及DApp 開發人員以良好的應用體驗感。 Substrate Connect 是一個Javascript 庫,它提供了一個功能齊全且附帶擴展途經的輕客戶端,取代了通過RPC 節點連接到Substrate 鏈的傳統流程,DApp 開發人員不再需要經歷運行本地完整節點的繁瑣步驟,直接可以在他們的DApp 中輕鬆訪問輕客戶端集成。

事實上,諸如優化輕客戶端運作環境、革新輕客戶端使用功能的技術方案或許還有很多。未來還需各位開發者不斷開拓創新,打造面向Web3 的卓越輕客戶端。

參考文獻:

什麼是輕客戶端?以及為什麼你需要了解它

引介| 以太坊區塊鏈的輕客戶端入門

NEXT 社區小課堂| 第二十六課:如何創建NEO 輕客戶端

引介| Fluffy 客戶端:以太坊的極輕客戶端

展開全文打開碳鏈價值APP 查看更多精彩資訊

Total
0
Shares
Related Posts