我們提出了一種解決方案,允許網際網路使用者使用MPC-TLS私密地證明對真實網路賬戶(如Uber或GitHub)的控制權,而不洩露任何個人資料。透過將這些憑證轉換為不可連結的零知識群體證明,我們可以在不損害使用者隱私的情況下解鎖防女巫攻擊的空投、治理和訪問控制。
協議概述:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐│ 使用者瀏覽器 │ │ TLS公證人 │ │ 網路服務 ││ 擴充套件 │ │ │ │ (如Uber) │└─────────────────┘ └─────────────────┘ └─────────────────┘│ │ ││←──── MPC協議 ───→│ ││ │ ││←──────── MPC-TLS會話─────────────────────→││ (聯合客戶端) ││ │ ││──── 加密TLS ───→│ ││ 傳輸記錄 │ ││ │ ││←─── 證明 ─────┤ ││ (混淆電路) │ ││ │ │▼┌─────────────────┐│ 訊號量 ││ 群組 ││ 承諾 │└─────────────────┘該協議工作原理如下(為清晰起見已簡化):
階段1:私密憑證驗證
- 使用者的瀏覽器擴充套件和TLS公證人協作與網路服務建立MPC-TLS會話
- 公證人使用混淆電路驗證密文完整性,對承諾欄位簽名
- 公證人僅看到加密資料,永不看到明文賬戶資訊
- 使用者獲得憑證的加密證明,無需暴露賬戶詳情
階段2:不可連結的承諾生成
承諾 = 雜湊(主金鑰 || 憑證群組ID || 賬戶ID雜湊)- 使用者使用私密主金鑰生成不可連結的身份承諾
- 承諾釋出到對應的訊號量群組(GitHub憑證 → GitHub群組,以此類推)
- 每種憑證型別對映到單獨群組,實現精細的證明定位
階段3:提供零知識群體證明
- 為驗證,使用者生成訊號量群組成員身份的零知識證明
- 證明確認憑證擁有權,不洩露具體賬戶
- 驗證方可組合多個群組證明以構建可組合的信任評分
隱私保證:
- 不可連結:無法將不同網路賬戶連線到同一使用者
- 群組匿名:單個驗證不會洩露憑證群組中具體哪個成員正在生成證明
- 不可追蹤:無法跨不同應用追蹤使用者
- 可組合:可同時證明多個群組的成員資格
實施
我們正在構建BringID以在實踐中驗證這些加密技術。該實施利用現有基礎設施(TLSN用於MPC-TLS,訊號量用於零知識群體證明)以最大限度地減少新的加密假設。
當前設計假設有一個可信的TLS公證人進行證明驗證。我們正在探索各種去中心化方法,以在未來最大限度地減少這種信任要求,包括可信執行環境(TEE)支援的基礎設施和分散式驗證器網路。
經濟安全模型
我們的方法並不從密碼學上阻止女巫攻擊,而是使其在經濟上變得不可行。安全假設是:
每個已驗證賬戶的獎勵價值 < 生成一個女巫身份的成本
網路賬戶需要真實世界活動(Uber乘車、GitHub提交、Airbnb住宿),時間投入(賬戶陳化、聲譽建立),並且通常還有金錢成本(服務使用費)。應用程式可以組合多個憑證群組並應用時間限制驗證,以進一步提高偽造成本。



