詳解Proof of Validator:以太坊擴容路上關鍵的安全拼圖
原文作者:深潮 TechFlow
今天,在以太坊研究論壇中悄然誕生了一個新的概念:Proof of Validator。
該協議機制允許網絡節點證明它們是以太坊驗證者,而無需透露它們具體的身份。
這和我們有什么關系?
一般情況下,市場更容易關注以太坊上某些技術創新所帶來的表層敘事,而很少提前深入研究技術本身。例如以太坊的上海升級、合並、從 PoW 轉到 PoS 以及擴容,市場只記住了 LSD、LSDFi 以及再質押的敘事。
但不要忘記,性能和安全是以太坊的重中之重。前者決定了上限,後者則決定了底线。
可以明顯看到,一方面以太坊一直在積極推進各種擴容方案來提升性能;但另一方面,擴容路上,除了自己修煉內功,也需要防範外來的攻擊。
例如,如果驗證節點被攻擊,導致數據不可用,那么一切構建在以太坊質押邏輯上的敘事和擴容方案,可能都會被牽一發而動全身。只是這種影響和風險躲在背後,最終用戶和投機者們難以察覺,有時甚至也不關心。
而本文要談到的 Proof of Validator,可能就是以太坊擴容路上關鍵的安全拼圖。
既然擴容勢在必行,如何降低擴容過程中可能蕴含的風險,是一個不可回避的安全議題,它也與我們每一個圈內人休戚相關。
因此,有必要弄清楚新提出的 Proof of Validator 的全貌。但由於技術論壇中的全文過於零碎和硬核,並且牽扯到了擴容諸多方案和概念,深潮研究院整合原帖和梳理必要的相關信息,對 Proof of Validator 產生的背景、必要性和可能影響進行了解讀。
數據採樣(Data Availability Sampling): 擴容的突破口
別着急,在正式介紹 Proof of Validator 之前,有必要搞清楚以太坊目前擴容的邏輯,和其中可能蕴含的風險。
以太坊社區正在積極推進多項擴容計劃。其中,數據可用性採樣 (簡稱 DAS) 被視為最關鍵的一項技術。
其原理是將完整的區塊數據分割成若幹“樣本(sample)”, 網絡中的節點只需要獲取與自己相關的少數樣本,就可以對完整區塊進行驗證。
這極大地降低了每個節點的存儲和計算量。換一個好理解的例子,這就類似我們抽樣調查,通過訪問不同人,可以總結出全體人群的總體狀況。
具體來說, DAS 的實現方式簡述如下:
-
區塊生產者把區塊數據分割成多個樣本。
-
每個網絡節點只取到其關注的少數樣本,而不是完整的區塊數據。
-
網絡節點可以通過獲取不同的樣本,來隨機採樣驗證完整區塊數據是否可用。
通過這種採樣,即使每個節點只處理少量數據,合起來也可以完整驗證整個區塊鏈的數據可用性。這可以使得區塊大小大幅提升,實現快速擴容。
但是,這種採樣方案有一個關鍵問題:海量樣本存儲在何處?這需要一整套去中心化網絡來支持。
分布式哈希表(Distributed Hashed Table): 樣本的家
這就給了分布式哈希表(DHT)機會大顯身手。
DHT 可以看作是一個巨大的分布式數據庫,使用哈希函數將數據映射到一個地址空間中,不同節點負責存取不同地址段的數據。它可以用於在海量節點中快速查找和存儲樣本。
具體來說, DAS 將區塊數據分割成多份樣本後,需要將這些樣本分布到網絡中的不同節點上存儲。DHT 可以提供一種去中心化的方法來存儲和檢索這些樣本,其基本思路是:
-
使用一致的哈希函數,將樣本映射到一個巨大的地址空間中。
-
網絡中的每個節點負責存儲和提供一個地址範圍內的數據樣本。
-
當需要某個樣本時,可以通過哈希查找對應地址,並在網絡中查找負責該地址範圍的節點,從中獲取樣本。
比如,按一定規則可將每個樣本哈希為一個地址,節點 A 負責 0-1000 號的地址,節點 B 負責 1001-2000 號的地址。
那么地址為 599 的樣本會存儲在節點 A 中。需要這個樣本時,通過同樣的哈希查找地址 599,再在網絡中查找負責該地址的節點 A,從它那裏獲取樣本。
這種方式打破了中心化存儲的局限,大大提升了容錯性和可擴展性。這正是 DAS 樣本存儲所需要的網絡基礎設施。
與中心化的存儲和檢索相比, DHT 可以提高容錯性,避免單點故障,也能增強網絡的擴展性。此外, DHT 還能幫助抵御 DAS 中提到的“sample hiding”等攻擊。
DHT 的痛點: 女巫攻擊
但是, DHT 也存在一個致命弱點,那就是面臨 Sybil 攻擊的威脅。攻擊者可以在網絡中制造大量假節點,周圍的真實節點就會被這些假節點“淹沒”。
類比一下,一個誠實的小販被整排整排的假冒商品圍住,用戶就很難找到真品。這樣攻擊者就可以控制 DHT 網絡,導致樣本不可用。
舉例來說,要獲取地址 1000 的樣本,需要找到負責這個地址的節點。但是被攻擊者創建的成千上萬假節點包圍後,請求會被不斷導向假節點,而無法到達真正負責該地址的節點。結果是樣本無法獲取,存儲與驗證都失敗。
為了解決這個問題,需要在 DHT 上建立一個高信任的網絡層,僅由驗證者節點參與。但是 DHT 網絡本身無法識別節點是否為驗證者。
這就嚴重阻礙了 DAS 和以太坊擴容。有什么辦法可以抵御這種威脅,保證網絡的可信任性呢?
Proof of Validator: 守衛擴容安全性的 ZK 方案
現在,讓我們回到這篇文章的重點:Proof of Validator。
在以太坊技術論壇中,今天 George Kadianakis , Mary Maller , Andrija Novakovic , Suphanat Chunhapanya 4 人共同提出了這個方案。
它的總體構想是,如果我們能想出一種辦法,讓上一節 DHT 的擴容方案中,只允許誠實的驗證者加入 DHT,那么想要發起女巫攻擊的惡意者,也必須質押大量 ETH,在經濟上顯著提高作惡成本。
這個構想換一句我們更加熟悉的話來說,就是:我想在不知道你身份的前提下,知道你是個好人,並且能識別壞人。
這種有限信息的證明場景,零知識證明顯然能派上用場。
於是,Proof of Validator(下稱 PoV)可用於建立一個只由誠實驗證節點組成的高可信 DHT 網絡,有效抵御女巫攻擊。
其基本思路是,讓每個驗證節點在區塊鏈上注冊一個公鑰,然後利用零知識證明技術,證明自己知悉這個公鑰對應的私鑰。這就相當於拿出自己的身份證明明自己是驗證節點。
此外,對於驗證節點的抗 DoS(拒絕服務) 攻擊,PoV 還旨在隱藏網絡層上驗證者的身份。也就是說,該協議不希望攻擊者能夠分辨出哪個 DHT 節點對應於哪個驗證節點。
那么具體要怎么做?原帖用了大量的數學公式和推導,在此不做贅述,我們給出一個簡化的版本:
具體實現上,使用 Merkle 樹或 Lookup 表。比如利用 Merkle 樹,證明注冊公鑰存在於公鑰列表這棵 Merkle 樹中,然後證明從這個公鑰派生出的網絡通信公鑰是匹配的。整個過程利用零知識證明實現,不會泄露實際身份。
跳過這些技術細節,PoV 最終實現的效果是:
只有通過身份驗證的節點才能加入 DHT 網絡,其安全性大大增加,可以有效抵御 Sybil 攻擊,防止樣本被故意隱藏或修改。PoV 為 DAS 提供了一個可靠的基礎網絡,間接幫助以太坊實現快速擴容。
不過,當前 PoV 還處在理論研究階段,能否落地還存在不確定性。
但該貼的幾位研究員已經在小範圍進行了實驗,結果顯示,PoV 在提出 ZK 證明的效率上,以及驗證者接收證明的效率還不錯。值得一提的是,他們實驗設備只是一臺筆記本,裏面裝的還僅僅是一顆 5 年前的 Intel i 7 處理器。
最後,當前 PoV 還處在理論研究階段,能否落地還存在不確定性。但是無論如何,它代表了區塊鏈通往更高擴展性的重要一步。作為以太坊擴容路线圖中的關鍵組件,它值得整個行業持續關注。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
Hack VC:模塊化是個錯誤嗎?以數據為依據審視以太坊的這一战略
撰文:Alex Pack 及 Alex Botte,Hack VC 合夥人 編譯:Yangz,Te...
除了 TON, 哪些公鏈在爭奪 Telegram 用戶?數據表現如何?
作者:Stella L ( [email protected] ) 在 2024 年...
從 Beacon Chain 到 Beam Chain,速讀 Justin 的以太坊共識層新提案
撰文:Tia,Techub News 在昨日泰國 Devcon 的 Mainstage 中,以太坊...
星球日報
文章數量
7104粉絲數
0