隱私池
隱私池是新一代混幣器,試圖在給予誠實使用者強隱私的同時,讓他們能證明自己的資金與已知非法資金無關。動機來自混幣器的核心兩難:像 Tornado Cash 這樣的簡單池給每個人相同的匿名集,意味守法使用者在密碼學上與洗劫失竊資金的罪犯無從區分——正是這個性質招來制裁。隱私池重新打造混幣器,使你能保有隱私並同時以零知識方式證明自己不在壞群之中。
關鍵構造來自 2023 年由 Vitalik Buterin、Ameen Soleimani 等人合著的論文〈區塊鏈隱私與監管合規:邁向實務均衡〉,並在以太坊上的 Privacy Pools 等實作中實現。存款一如任何 zk 混幣器,把一個承諾插入 Merkle 樹。新成分是「關聯集」:當你提領時,你不是證明對整個存款集的成員身分,而是證明對一個選定子集——關聯集——的成員身分,該子集包含你自己的存款、卻排除被標記為非法的存款。被稱為「關聯集提供者」的獨立各方會公佈這些經策展的集合(例如「所有存款,但排除可追溯到已知駭客事件者」),而你的提領證明會承諾於你所用的關聯集根。
效果是一種自願、可證明的「與壞角色脫鉤」,卻不在誠實集合內揭露哪一筆存款是你的。誠實使用者挑選一個篩掉受污染存款的關聯集,藉此向交易所與觀察者示意自己的清白;洗錢者則無法針對一個嚴格的集合構造這樣的證明,除非把自己的髒存款包含進去,而那會失敗。關鍵在於,這是以成員證明為基礎,不需可信營運者核准提領,也不會在誠實子集內把任何人去匿名化——你在其餘誠實存款者之間的隱私得以保全。
隱私池是對「實務均衡」的真誠嘗試,但它不是萬靈丹,誠實面對其限制很要緊。你獲得的隱私受限於你所選誠實關聯集的大小;選一個非常嚴格的集合會縮小你的匿名集。系統仰賴關聯集提供者的品質、中立性與治理,這重新引入了「何謂非法」的主觀判斷。而且它處理的是脫鉤問題,而非所有元資料洩漏——時間、金額與網路層級的關聯仍需謹慎。
兩位使用者各存 1 ETH 進同一個池:一位誠實使用者,與一位存款被公開標記的竊賊。提領時,誠實使用者證明對一個定義為「所有存款減去被標記者」的關聯集的成員身分,該集合仍含有她的存款——她的證明通過,且她在誠實者之間保持隱私。竊賊無法建構該證明,因為唯一含有他存款的集合,也包含了把它排除的標記。
關聯集成員證明讓誠實者得以提領,同時排除被標記的存款。
巧妙的不對稱在於:證明你「不在」一組壞存款之中,是只有誠實存款者才能做到的事;竊賊無法把自己受污染的存款排除,又同時為一個嚴格的關聯集產出有效的成員證明。