Alex 示範以基準測試篩選客戶端零知識證明系統
Evaluating Client-Side Proving Systems
場次摘要
手機與筆電的運算能力、記憶體、儲存空間及頻寬有限,讓客戶端零知識證明不能只比較生成速度。Alex 指出,產生證明所需的檔案可能增加下載負擔,不同雜湊與簽章運算也會形成不同瓶頸。他以假想隱私應用帶領分組,利用 EthProofs 既有量測資料篩選證明系統。 他介紹帕累托前緣,找出在所比較指標上不被其他方案全面超越的候選,再依證明大小、記憶體與安全要求篩選。練習顯示,調整限制可能改變選擇,甚至沒有合格系統。這些基準使用 Apple M1 機器近似客戶端硬體;他強調,儀表板資料只是指引,實際應用仍須測試自己的運算組合,不能把單一雜湊測試當成完整應用的表現。
值得記下的 5 件事
- [1:00]
客戶端選型須同時考慮裝置與下載限制 Alex 指出,手機與筆電的運算能力不如伺服器,記憶體還要留給作業系統及其他應用
部分系統產生證明前須下載大型檔案;若使用者的網路按流量計費,下載負擔也會影響體驗。
- [8:00]
不同運算會帶來不同的證明瓶頸 SHA-256 與 Keccak 雜湊涉及大量位元運算,對許多證明系統形成瓶頸
ECDSA 數位簽章使用的數學運算環境若與證明系統不同,也會增加處理負擔;Poseidon 雜湊則從設計起便考慮零知識證明需求。
- [10:00]
用帕累托前緣縮小範圍,再依需求取捨 Alex 示範將證明時間與證明大小畫成座標,比較哪些方案被其他方案超越
留下的前緣點代表不同取捨,再依應用條件挑選;只比較這兩項指標,仍不足以決定最終選型。
- [43:00]
安全條件可能排除效能出色的方案 系統屬性表列有零知識與抵抗量子攻擊等性質,這些並非效能量測結果
第二輪練習中,Alex 指出 Binius64 在題目所用設定下只有 96 位元安全強度,未達要求的 128 位元,因此即使效能看來不錯也不合格。
- [44:00]
儀表板提供指引,不能取代應用實測 Alex 強調,開發者仍須針對實際應用進行基準測試
若身分應用同時使用簽章與雜湊,就要測試兩者結合的運算;若使用 Merkle 樹這類以雜湊組成的樹狀資料結構,也應測試完整結構,而非只看雜湊結果。
更多來自 DEVCON 8
Arrow 的硬體 DAO 實驗:AI 協作、在地製造與責任分工
A DAO Shipped an Aircraft: What It Takes to Coordinate Atoms with Tokens
Thomas Garrison
Kohaku:以 SDK 將隱私與安全功能帶入以太坊錢包
Kohaku : privacy for everyone, by default
Nico、Vitalik
私密區塊鏈的取捨:隱私、去中心化與合約協作
Private State, Public Network: The Tradeoffs Behind Privacy
Zachary Williamson