# 輕客戶端Helios:實現無需信任的以太坊訪問11月8日,一家加密貨幣投資公司推出了以太坊輕客戶端Helios。該客戶端基於Rust語言編寫,旨在提供完全無需信任的以太坊訪問。區塊鏈的一大優勢在於無需信任。通過區塊鏈技術,我們可以自主掌控自己的財富和數據。以太坊等區塊鏈在大多數情況下確實兌現了這一承諾:我們的資產真正屬於我們自己。然而,爲了便利性,我們也做出了一些妥協。其中之一就是使用中心化的RPC(遠程調用)服務器。用戶通常會通過中心化提供商訪問以太坊。這些公司在雲服務器上運行高性能節點,幫助大家輕鬆訪問鏈上數據。當錢包查詢代幣餘額或檢查待處理交易是否已納入區塊時,幾乎總會用到這些中心化提供商。當前系統的問題在於用戶需要信任這些提供商,而無法驗證查詢結果是否正確。Helios是一款基於Rust的以太坊輕客戶端,能夠提供完全無需信任的以太坊訪問。它利用以太坊切換至PoS後促成的輕客戶端協議,將來自不受信任的中心化RPC提供商的數據轉換爲安全可驗證的本地RPC。結合中心化RPC,Helios可在不運行完整節點的情況下驗證數據的真僞。這款客戶端能在約兩秒內完成同步,且無需存儲,用戶可通過任何設備(包括手機和瀏覽器插件)訪問安全的鏈上數據。但依賴中心化基礎設施到底有什麼潛在風險呢?接下來我們將探討這些風險,介紹Helios的設計方案,並提供一些思路,幫助開發者爲代碼庫做出貢獻。## 中心化基礎設施的潛在風險在以太坊生態系統中,存在一種理論上的攻擊方式。這種攻擊不是在交易內存池中尋找目標,而是通過模擬我們依賴的中心化基礎設施來設置陷阱。受害者並沒有做錯什麼:他們只是像往常一樣訪問去中心化交易所,設定合理的滑點,進行代幣交易。然而,他們可能會遭遇一種新型的三明治攻擊,這是一個精心設置在RPC提供商處的陷阱。爲了理解這種攻擊,我們需要了解去中心化交易所如何處理交易。用戶進行兌換時,會向智能合約提供幾個參數:要兌換的代幣、兌換金額,以及最重要的,用戶願意接受的最小代幣數量。最後一項參數指定了兌換必須達到的"最小產出",否則交易會被撤銷。這通常被稱爲"滑點",因爲它有效設定了從交易發送至內存池到交易被納入區塊之間可能出現的最大價差。如果RPC提供商沒有提供去中心化交易所智能合約的準確報價,用戶可能會被誤導,以較低的最小產出參數簽署兌換交易。更糟的是,用戶可能將交易直接發送給惡意的RPC提供商。提供商可以不將這筆交易廣播至公共內存池,而是私下扣留並將被攻擊的交易包直接發送給特定服務,從中牟利。造成這一攻擊的根本原因是信任他人來幫助獲取區塊鏈狀態。爲解決該問題,有經驗的用戶通常會運行自己的以太坊節點,但這需要耗費大量時間和資源。雖然現在運行節點比過去簡化了,但對於多數用戶,特別是使用移動設備的用戶來說,仍然很困難。需要注意的是,中心化RPC提供商攻擊雖然理論上可能發生,但實際上尚未發生。大型提供商的過往記錄值得信賴,但在將不熟悉的RPC提供商添加至錢包前,多做一些研究仍然是明智之舉。## Helios:完全無需信任的以太坊訪問以太坊推出輕客戶端協議後,爲快速的區塊鏈交互和通過最低硬件需求驗證RPC端點開闢了新的可能性。在The Merge後的一個月裏,多個獨立的輕客戶端相繼湧現,它們各有特色,但目標一致:實現無需信任的高效訪問,且不必使用完整節點。Helios是一個以太坊輕客戶端,可在大約兩秒內完成同步,不需要存儲,並提供完全無需信任的以太坊訪問。與所有以太坊客戶端一樣,Helios由執行層和共識層組成。但與多數其他客戶端不同,Helios將這兩層緊密耦合,用戶只需安裝和運行單個軟件即可。Helios的工作原理如下:共識層使用一個已知的信標鏈區塊哈希,並連接一個不受信任的RPC,以可驗證的方式同步至當前區塊。執行層將這些經過驗證的信標鏈區塊與不受信任的執行層RPC結合,以驗證有關鏈上狀態的各種信息,如帳戶餘額、合約存儲、交易收據和智能合約調用結果。這些組件協同工作,爲用戶提供完全無需信任的RPC,且無需運行完整節點。## 在實際應用中使用Helios通過輕量級的Helios,用戶可從任何設備(包括手機和瀏覽器插件)訪問安全的鏈上數據。這將使更多人能夠無需信任地訪問以太坊數據,不受硬件限制。用戶可以在某些錢包中將Helios作爲他們的RPC提供商,以實現無需信任地訪問各種去中心化應用,整個過程無需任何其他更改。此外,Rust對WebAssembly的支持使應用開發人員可輕鬆將Helios嵌入Javascript應用程序(如錢包和去中心化應用)中。這些集成將提升以太坊的安全性,減少我們對中心化基礎設施的信任需求。社區可以通過多種方式爲Helios做出貢獻,除了爲代碼庫添磚加瓦外,還可以構建集成Helios的軟件。一些令人興奮的思路包括:* 支持直接從P2P網路、而非RPC獲取輕客戶端數據* 部署一些缺失的RPC方法* 構建可編譯至WebAssembly的Helios版本* 將Helios直接集成至錢包軟件中* 構建網路儀表板來查看代幣餘額,將Helios嵌入使用WebAssembly的網站中,以獲取數據* 部署引擎API,將Helios共識層連接至現有執行層的全節點上
Helios輕客戶端:兩秒同步實現無信任以太坊訪問
輕客戶端Helios:實現無需信任的以太坊訪問
11月8日,一家加密貨幣投資公司推出了以太坊輕客戶端Helios。該客戶端基於Rust語言編寫,旨在提供完全無需信任的以太坊訪問。
區塊鏈的一大優勢在於無需信任。通過區塊鏈技術,我們可以自主掌控自己的財富和數據。以太坊等區塊鏈在大多數情況下確實兌現了這一承諾:我們的資產真正屬於我們自己。
然而,爲了便利性,我們也做出了一些妥協。其中之一就是使用中心化的RPC(遠程調用)服務器。用戶通常會通過中心化提供商訪問以太坊。這些公司在雲服務器上運行高性能節點,幫助大家輕鬆訪問鏈上數據。當錢包查詢代幣餘額或檢查待處理交易是否已納入區塊時,幾乎總會用到這些中心化提供商。
當前系統的問題在於用戶需要信任這些提供商,而無法驗證查詢結果是否正確。
Helios是一款基於Rust的以太坊輕客戶端,能夠提供完全無需信任的以太坊訪問。它利用以太坊切換至PoS後促成的輕客戶端協議,將來自不受信任的中心化RPC提供商的數據轉換爲安全可驗證的本地RPC。結合中心化RPC,Helios可在不運行完整節點的情況下驗證數據的真僞。
這款客戶端能在約兩秒內完成同步,且無需存儲,用戶可通過任何設備(包括手機和瀏覽器插件)訪問安全的鏈上數據。但依賴中心化基礎設施到底有什麼潛在風險呢?接下來我們將探討這些風險,介紹Helios的設計方案,並提供一些思路,幫助開發者爲代碼庫做出貢獻。
中心化基礎設施的潛在風險
在以太坊生態系統中,存在一種理論上的攻擊方式。這種攻擊不是在交易內存池中尋找目標,而是通過模擬我們依賴的中心化基礎設施來設置陷阱。受害者並沒有做錯什麼:他們只是像往常一樣訪問去中心化交易所,設定合理的滑點,進行代幣交易。然而,他們可能會遭遇一種新型的三明治攻擊,這是一個精心設置在RPC提供商處的陷阱。
爲了理解這種攻擊,我們需要了解去中心化交易所如何處理交易。用戶進行兌換時,會向智能合約提供幾個參數:要兌換的代幣、兌換金額,以及最重要的,用戶願意接受的最小代幣數量。最後一項參數指定了兌換必須達到的"最小產出",否則交易會被撤銷。這通常被稱爲"滑點",因爲它有效設定了從交易發送至內存池到交易被納入區塊之間可能出現的最大價差。
如果RPC提供商沒有提供去中心化交易所智能合約的準確報價,用戶可能會被誤導,以較低的最小產出參數簽署兌換交易。更糟的是,用戶可能將交易直接發送給惡意的RPC提供商。提供商可以不將這筆交易廣播至公共內存池,而是私下扣留並將被攻擊的交易包直接發送給特定服務,從中牟利。
造成這一攻擊的根本原因是信任他人來幫助獲取區塊鏈狀態。爲解決該問題,有經驗的用戶通常會運行自己的以太坊節點,但這需要耗費大量時間和資源。雖然現在運行節點比過去簡化了,但對於多數用戶,特別是使用移動設備的用戶來說,仍然很困難。
需要注意的是,中心化RPC提供商攻擊雖然理論上可能發生,但實際上尚未發生。大型提供商的過往記錄值得信賴,但在將不熟悉的RPC提供商添加至錢包前,多做一些研究仍然是明智之舉。
Helios:完全無需信任的以太坊訪問
以太坊推出輕客戶端協議後,爲快速的區塊鏈交互和通過最低硬件需求驗證RPC端點開闢了新的可能性。在The Merge後的一個月裏,多個獨立的輕客戶端相繼湧現,它們各有特色,但目標一致:實現無需信任的高效訪問,且不必使用完整節點。
Helios是一個以太坊輕客戶端,可在大約兩秒內完成同步,不需要存儲,並提供完全無需信任的以太坊訪問。與所有以太坊客戶端一樣,Helios由執行層和共識層組成。但與多數其他客戶端不同,Helios將這兩層緊密耦合,用戶只需安裝和運行單個軟件即可。
Helios的工作原理如下:共識層使用一個已知的信標鏈區塊哈希,並連接一個不受信任的RPC,以可驗證的方式同步至當前區塊。執行層將這些經過驗證的信標鏈區塊與不受信任的執行層RPC結合,以驗證有關鏈上狀態的各種信息,如帳戶餘額、合約存儲、交易收據和智能合約調用結果。這些組件協同工作,爲用戶提供完全無需信任的RPC,且無需運行完整節點。
在實際應用中使用Helios
通過輕量級的Helios,用戶可從任何設備(包括手機和瀏覽器插件)訪問安全的鏈上數據。這將使更多人能夠無需信任地訪問以太坊數據,不受硬件限制。用戶可以在某些錢包中將Helios作爲他們的RPC提供商,以實現無需信任地訪問各種去中心化應用,整個過程無需任何其他更改。
此外,Rust對WebAssembly的支持使應用開發人員可輕鬆將Helios嵌入Javascript應用程序(如錢包和去中心化應用)中。這些集成將提升以太坊的安全性,減少我們對中心化基礎設施的信任需求。
社區可以通過多種方式爲Helios做出貢獻,除了爲代碼庫添磚加瓦外,還可以構建集成Helios的軟件。一些令人興奮的思路包括: