
詳解 Singularity:透明區塊鏈上的隱私交易
TechFlow Selected深潮精選

詳解 Singularity:透明區塊鏈上的隱私交易
期待 Singularity 會在擁抱監管的暗池 ZK 隱私賽道成為下一個領跑者。
撰文:Oliver、Andy、Howe
1 前言
1969 年,金融市場的交易方式還停留在傳統的交易大廳。彼時計算機技術尚未成熟,交易者們依賴於大聲喊叫來下達指令,這種低效且不私密的交易方式使得機構投資者難以在不引起市場波動的情況下進行大額交易。由 Jerome Pustilnik 創立的 Instinet 應運而生,Instinet 通過電子交易平臺,允許投資者匿名下單,平臺負責匹配買賣雙方的訂單並執行交易。這種模式不僅提高了交易效率,還確保了交易的保密性,有效防止了市場影響和信息洩露。
而今,技術的進步帶來了區塊鏈技術的誕生,這一革命性的創新為金融交易帶來了前所未有的透明度和安全性。然而,區塊鏈的公開性和不可篡改性雖然為市場帶來了諸多好處,但也為大額交易者帶來了新的挑戰。在區塊鏈的公開賬本中,每一筆交易都對所有參與者可見,這使得大額交易者在執行交易時難以保持匿名性。傳統的交易所平臺無法完全保護交易者的隱私,大額訂單的公開可能導致價格波動,影響交易效率和成本。此外,監管的不確定性和市場的不透明性也為投資者帶來了額外的風險。
本報告將探討區塊鏈暗池作為一種創新解決方案,它如何通過引入先進的隱私保護技術和自動化交易機制,為加密貨幣市場提供更加安全、高效的大額交易環境;以及 Singularity 如何通過其創新的解決方案,利用 FHE ( 全同態加密 )、ZKP ( 零知識證明 ) 等技術為大額投資者提供一個私密且合規的去中心化交易平臺。
2 什麼是暗池
暗池 (Dark Pools) 在傳統金融市場中,是指那些不公開交易信息的私人交易平臺,它們允許投資者在不暴露其交易意圖的情況下進行大額交易。暗池交易最早出現在美國,興起的主要原因與證券市場上兼併、收購日益頻繁,大宗股權的轉讓需求蓬勃發展有密切關係。隨著金融市場的發展,暗池在股票、債券、外匯等多個領域中的重要性日益凸顯,尤其是在高頻交易和算法交易成為主流的當下。據統計,暗池交易在股票市場中的佔比已達到 30% 至 50%,成為市場流動性的重要組成部分。
在加密貨幣市場,隨著大戶群體的壯大,大宗交易的需求持續上升。這些大額訂單對市場的影響力巨大,有時甚至可能觸發市場動盪。為了規避這種風險,許多交易者轉向 OTC 市場甚至 Telegram 群組進行交易。根據 Kraken 交易所 2020 年的數據,自 2018 年起,全球 OTC 交易量激增 20 倍,日均交易額達到約 3000 億美元,佔整個加密貨幣市場交易量的近 70%。然而,OTC 市場也面臨著流動性不足和監管缺失的問題。為了應對這些挑戰,暗池作為一種解決方案被引入,旨在提供一個更加穩定和私密的交易環境。
以下是暗池的關鍵要點:
-
隱私和保密性:暗池允許交易者匿名交易,保護其身份和訂單大小不被公開市場知曉,直到交易執行完畢。
-
減少市場影響:暗池使大型機構投資者能夠在不引起公開市場顯著價格波動的情況下執行大額訂單,最小化市場影響和滑點。
-
不披露交易策略:暗池交易有助於保護交易者的策略不被公開市場知曉,避免被 MEV 套利、複製交易套利以及統計套利等。
-
流動性和價格改善:暗池通過匹配可能在傳統交易所中未能找到交易對手的買賣雙方,為市場提供額外流動性,從而可能為參與者帶來價格改善,尤其是對於大宗交易。
-
引入監管:暗池受到監管,監管機構監控暗池活動,防止不公平訪問、內幕交易或市場操縱。但對於很多暗池而言,中心化的管理方式仍存在安全性、可信度以及私人數據潛在濫用的風險,歷史上,已有多起因中心化暗池違反信任原則而受到處罰的案例。
核心隱私技術
暗池是隱私賽道的一個分支,暗池通過以下這些隱私增強技術(PET),如零知識證明(ZKP) 、多方計算(MPC)和全同態加密(FHE)等,將隱私注入其基礎架構中。
▪ 零知識證明(Zero Knowledge Proof , ZKP)
零知識證明(ZKP)技術允許證明者在不洩露任何實質性信息的情況下,向驗證者證實某個陳述的正確性。這種技術在以太坊 Layer 2 擴容解決方案中尤為關鍵,如 ZK Rollup ,它通過將交易數據壓縮成緊湊的 ZK 證明並提交至主網,實現了交易的有效性驗證。這種證明不僅佔用極小的存儲空間,而且保護了交易信息的隱私,體現了無信任機制的天然優勢。ZKP 技術的應用不僅限於擴容,還包括隱私計算,其主要實現形式包括 zkSNARK、zkSTAR 和 Bulletproof,這些技術共同推動了加密貨幣隱私保護和交易效率的提升。

零知識證明介紹
▪ 安全多方計算(Multi-Party Computation, MPC)
安全多方計算(MPC)是一種允許多個參與方在不洩露各自輸入的情況下共同計算一個函數的技術。在隱私領域,MPC 提供了一種保護敏感數據的方法,使得參與方可以在不暴露個人數據的前提下,共同完成數據分析、計算任務或達成決策。MPC 的核心優勢在於其隱私保護能力。通過分佈式計算和加密技術,參與方可以確保自己的數據在整個計算過程中保持私密。

安全多方計算介紹
▪ 全同態加密(Fully Homomorphic Encryption, FHE)
全同態加密(FHE)是一種密碼學技術,它允許在加密數據上直接進行計算,而無需先解密。這意味著數據在保持加密狀態時,就可以進行加、減、乘等運算,計算結果在解密後與在原始數據上進行相同運算的結果一致。FHE 的核心價值在於它為隱私保護提供了一種強大的工具,使得數據在被處理時始終保持私密,從而極大地增強了數據的安全性。
如何權衡抗審查與合規性
在公鏈上運行的去中心化交易所(DEX)如 Uniswap 和 Curve ,由於其賬本的公開透明性,容易受到最大可提取價值(MEV)的影響。這種透明性意味著訂單詳情對所有人可見,使得搜索者和構建者能夠通過重新安排交易順序來優化自己的收益,這在一定程度上損害了其他用戶的利益。
暗池作為一種金融交易場所,其核心優勢在於提供隱私保護和抗審查性。在暗池中,訂單詳情通常對第三方保持隱秘,因為每筆訂單都會生成零知識證明(ZKPs),這減少了交易信息的公開披露。這種架構對於大戶和機構投資者尤其有吸引力,因為它能夠保護他們的交易策略不被競爭對手或市場操縱者利用。此外,暗池的這種特性也有助於抵禦 MEV,因為交易的順序和細節不公開,從而減少了被重新安排的可能性。
然而,當交易需要調用公共合約或使用共享定序器時,這些優勢可能會減弱,因為這些操作可能會暴露交易信息,為 MEV 的捕獲提供機會。儘管如此,對於尋求隱私和抗審查保護的大戶和機構投資者來說,暗池仍然是一個有吸引力的選擇,尤其是在他們的交易活動需要高度保密的情況下。
Tornado Cash 等隱私保護工具的出現,為用戶提供了在鏈上進行匿名金融活動的可能性,但這也被一些犯罪分子用來從事洗錢等非法活動。Tornado Cash 的智能合約地址就因不合規被列入了 OFAC 名單。美國外國資產控制辦公室(OFAC)通過維護一份特別指定國民(SDN)名單,對不合規的個人和實體進行制裁。不符合 OFAC 規定的協議,有很高的可能性會導致它們的交易被排除在鏈上的區塊之外。截止至 2024 年 2 月 23 日,需要經過 OFAC 名單審查的的區塊為 45%。這種抗審查性問題不僅影響區塊生成者,還可能影響驗證者和中繼器,他們可以選擇性地忽略某些交易或區塊。

經過 OFAC 名單審查的區塊比例
隨著 Tornado Cash 因不合規而被禁止,市場出現了對合規隱私解決方案的需求真空。為了滿足這一需求,後來的暗池項目需要在提供隱私保護的同時,避免類似的監管風險。筆者認為一種有效的方法是在項目中集成經過驗證的 KYB/KYC 流程,這樣不僅能確保用戶活動的合法性,而且有助於規避可能的監管風險。法律監管往往跟不上技術發展的步伐,這導致隱私項目很容易被用於非法活動。為了確保項目的安全和合法性,積極擁抱並遵守監管是至關重要的。
3 競爭格局&項目分析
在 2010 年至 2022 年期間,暗池項目的數量有限,且這些項目並未在大眾中獲得廣泛認知。然而,隨著零知識證明(ZKP)、多方計算(MPC)等隱私增強技術的進步,暗池領域迎來了一系列創新技術解決方案。這些技術的發展使得暗池在 2023 年重新進入了公眾視野。儘管如此,由於技術的複雜性,暗池賽道的項目數量仍然相對較少。以下羅列幾個已經相對比較成熟的項目。
1. Renegade 成立於 2022 年,是一個基於 MPC-ZKP 架構的去中心化暗池,專為機構投資者提供大額交易服務。Renegade 通過點對點網絡和多方計算(MPC)技術進行訂單匹配,並使用 ZK-SNARKs 確保在驗證訂單匹配過程中,交易細節對外部保持匿名。此外,它還採用了中點執行機制,保證所有交易直接以實時聚合的中心化交易所中點價格成交,以避免滑點。其默認的匿名交叉交易功能,結合興趣指標,促進了全面的價格發現和優化了流動性。
2. Penumbra 是一個構建在 Cosmos 生態系統中的一個去中心化的交易平臺,它提供了一種類似暗池的交易環境,允許用戶在保持隱私的同時進行交易。通過一種私有委託機制,Penumbra 結合了隱私保護和 POS(Proof-of-Stake)共識機制,能夠提供質押衍生品、稅收效率的質押以及帶有私密投票功能的鏈上治理。Penumbra 通過 IBC(跨鏈通信)與 Cosmos 生態系統相連,作為一個生態系統範圍內的暗池,允許在任何 IBC 兼容資產中進行私密交易。用戶還可以使用 ZSwap,一個支持密封出價批量拍賣和 Uniswap-V3 集中流動性的私密去中心化交易所,來交換這些資產。
3. Panther 是一個跨鏈的 DeFi 平臺,它結合了零知識技術,旨在提供一個既符合監管要求又保護用戶隱私的解決方案。用戶可以將數字資產存入 Panther 的多資產屏蔽池(MASPs),並按 1:1 比例獲得 zAssets。通過 Zswap 模塊,Panther 連接到其他 DeFi 協議,聚合報價供用戶選擇。交易時,Zswap 創建一個加密的託管合約,允許用戶在不洩露交易細節的情況下交換資產。這種設計使得資產可以在多樣化池中共存,保持數據的異構性,從而難以追蹤和去匿名化用戶。Panther 的屏蔽池利用 ZK SNARK 和 ZKP 技術,確保交易的隱私性和合規性。
4. Railgun 是一個為以太坊、BSC、Polygon 和 Arbitrum 設計的 ZKP-MPC 架構的隱私系統,它利用零知識(ZK)加密技術,利用 MPC 技術來完成可信設置儀式,允許用戶在保持交易隱私的同時,安全地執行智能合約和 DeFi 操作。當用戶通過 Railgun 下達交易指令時,一個名為 Adapt Module 智能合約會自動處理私有餘額的隱私屏蔽解除、驗證訂單有效性,然後由中繼器在聚合的 DEX 流動性中尋找最優匯率,最後將交易資產重新隱私屏蔽,確保用戶活動和地址的匿名性。這一流程不僅適用於資產交換,還可擴展至其他 DeFi 交易類型。
4 技術解讀 Singularity:如何實現隱私交易
隱私交易概念理解
理解隱私交易的概念需要考慮交易主體和交易細則兩個方面,並區分匿名和隱藏兩種類型的隱私。
一筆普通交易包含以下要素:
-
交易主體:包括交易的發送者(交易者 A)和接收者(交易者 B)。
-
交易細則:包括交易的金額、子交易次數、交易的哈希等具體細節。
隱私交易可以根據對第三方的信息可見程度分為兩類:
-
匿名交易:在匿名交易中,對於第三方來說,交易的發送者和接收者的地址是不可知的。這意味著在交易過程中,除了參與交易的兩個主體之外,其他人無法確定交易的具體參與者。例如,Tornado Cash 就是一種通過混淆交易路徑來實現匿名性的隱私協議。
-
隱藏交易:在隱藏交易中,雖然交易的發送者和接收者的地址是可見的,但是交易的具體細則卻是不可知的。這意味著交易的金額、子交易次數、交易的哈希等詳細信息對於第三方來說是隱藏的。這種隱私可以通過使用零知識證明(Zero-Knowledge Proofs,ZKP)等技術來實現。例如,Zcash 就是一種利用 zk-SNARKs 技術實現交易細則隱藏的隱私加密貨幣。
Singularity 整體架構解讀

Singularity 整體架構圖
從整體結構來看,共可以分為大致 5 個模塊:
1. Singularity
這是用戶主要交互的智能合約,用於表達和執行 ZK 電路邏輯。這些智能合約的功能包括隱藏 ETH/ERC20 代幣的餘額和交易記錄,以實現匿名性和交易內容的隱藏。作為一個彙集了所有類型的所有交易者的所有資產的流動性地。其名稱來源於其獨特的特性,即對於所有觀察者來說,所有的協議交易似乎都源自這個智能合約。這種設計為用戶提供了多維度的隱私。
在 Singularity 協議中,ZK Notes 構成了交易的基本單位,它們包含了關鍵的交易信息,包括資產類型、金額以及與所有者相關的加密標識。這些 Notes 的設計旨在實現高度的隱私保護,確保交易者的身份和資產信息得到有效地保護。
每個 Note 包括以下關鍵信息:
-
資產類型(Asset Type):表示交易中涉及的資產類型,例如加密貨幣的代幣類型或其他數字資產。
-
金額(Amount):指示 Note 中所包含的資產數量,用於確定交易的價值。
-
隨機值(Rho):是一個隨機生成的字段值,用於增強交易的隱私性,防止外部觀察者對交易進行跟蹤和分析。
-
Schnorr 公鑰(Public Key):用於加密簽名和驗證交易的身份,確保只有授權用戶才能進行有效的交易操作。
除了上述信息外,每個 Note 還會生成一個相應的 Nullifier。Nullifier 的生成採用了哈希函數的加密技術,將 Note 的隨機值和公鑰作為輸入,經過處理得到相應的 Nullifier。這種設計旨在為交易提供額外的安全保障,確保只有合法的授權用戶才能有效地操作和消費 Note。
Note 的添加存儲
在 Singularity 協議中,所有的 Notes 都會被附加到一個只能追加的默克爾樹上,並將新默克爾樹的根永久存儲。這樣設計的目的是為了確保交易的完整性和安全性,防止數據被篡改和損壞。
以一個簡單的例子說明:
假設 Alice 是一個 Singularity 協議的用戶,她在某一時刻進行了一筆交易,將 1 ETH 存入了 Singularity 合約。這筆交易將被記錄為一個 Note,並附加到當前的默克爾樹上。此時,默克爾樹的根是由這個單獨的 Note 計算得到的。
隨後,Bob 也進行了一筆交易,將 0.5 ETH 存入了 Singularity 合約。這筆交易也會被記錄為一個 Note,並追加到當前的默克爾樹上。默克爾樹的根隨著新的 Note 的添加而更新。

注:圖中的默克爾樹根生成為奇數個 Note 情況,會對單獨的兩個 Note 進行復制並計算 Hash
隨著更多的用戶進行交易,每個新的 Note 都會按照時間順序被添加到默克爾樹上。這樣,每個用戶的交易歷史都被保留在同一個數據結構中,並且通過計算默克爾樹的根哈希值,可以有效地驗證整個交易歷史的完整性。因為默克爾樹是隻能追加的,所以不可能修改或刪除已經添加到樹中的任何 Note,從而確保了交易數據的安全性和不可篡改性。
Note 的交易驗證
當交易者進行交易消費時,他們必須透露相應的 Nullifier,並在零知識證明中提供相關的證據,以驗證 Nullifier 與相應的 Note 相關聯,並證明 Note 在默克爾樹中的存在。智能合約將對 Nullifier 的唯一性進行驗證,並驗證證據的有效性,以確保交易的合法性和安全性。
以一個簡單的例子說明:
假設 Alice 擁有一個 Note,其中包含了她存入 Singularity 合約的 1 ETH,並且該 Note 的 Nullifier 為「AAA123」。現在,Alice 想要使用這筆資金進行一筆交易,因此她必須提供「AAA123」作為 Nullifier,並且通過零知識證明來證明以下兩點:
-
證明「AAA123」與所消費的 Note 相關聯,即這筆交易的資金確實來自於該 Note。
-
證明該 Note 在默克爾樹中的存在,即該 Note 是之前存入 Singularity 合約的,並且沒有被篡改。
智能合約將對 Alice 提供的 Nullifier 和證據進行驗證,確保 Nullifier 的唯一性和證據的有效性。只有當驗證通過時,合約才會執行交易,並將資金轉移給 Alice 想要的接收方。這樣,智能合約可以確保交易的合法性和安全性,防止任何惡意行為或欺詐行為的發生。
下述是以上邏輯的偽代碼實現:
// 偽代碼
pragma solidity ^0.8.0;
contract SingularityContract {
mapping(address => mapping(bytes32 => bool)) private invalidValues;
mapping(bytes32 => bool) private merkleTree;
// 存款操作,將資金存入 Singularity 合約
function deposit(bytes32 noteHash, bytes32 invalidValue) public payable {
require(msg.value > 0, "Deposit amount must be greater than 0");
// 將 Note 添加到默克爾樹中
merkleTree[noteHash] = true;
// 存儲 nullifier
invalidValues[msg.sender][noteHash] = true;
}
// 交易消費操作,驗證 nullifier 和證據,執行交易
function spend(bytes32 noteHash, bytes32 invalidValue, bytes memory proof) public {
// 驗證提供的 nullifier 是否與存儲的一致
require(invalidValues[msg.sender][noteHash], "Invalid value does not match");
// 驗證 Note 在默克爾樹中的存在
require(merkleTree[noteHash], "Note does not exist in the Merkle tree");
// 進行零知識證明的驗證
require(_verifyProof(noteHash, invalidValue, proof), "Proof verification failed");
// 執行交易,將資金轉移給接收方
// 這裡省略了具體的轉賬操作
}
// 零知識證明的驗證函數
function _verifyProof(bytes32 noteHash, bytes32 invalidValue, bytes memory proof) private view returns (bool) {
// 在實際中需要進行具體的零知識證明驗證
// 這裡省略了具體的驗證過程
// 如果證明驗證成功,則返回 true,否則返回 false
return true;
}
}
2. Book
Book 通過採用全同態加密(Fully Homomorphic Encryption,FHE)技術構建完全私密的離線訂單簿,為交易者提供安全可靠的交易環境。
在 Book 系統中,一組特殊的 FHE 節點,即 Bookies,扮演著關鍵角色,集體負責操作訂單簿。其匹配流程包括:
API 節點對訂單進行加密,確保訂單內容的私密性,然後 Bookies 利用 FHE 協議進行訂單匹配計算,保障訂單信息的保密性。
訂單匹配結果公佈,但原始訂單內容仍保持私密,以維護交易者的隱私權。
已匹配交易者可直接交流並使用 Singularity 合約的 Swap 功能進行結算,未能結算的交易者將受到聲譽懲罰。
為確保 Book 系統的穩定運行,採用了多數意見勝出的激勵機制,並要求 Bookies 抵押代幣:
Bookies 間採用多數意見勝出機制,應對加密訂單匹配中可能出現的分歧情況,避免惡意行為發生。
抵押代幣設定旨在防範 Sybil 攻擊,同時激勵 Bookies 履行職責,保障系統正常運行。
在 Book 系統中,身份和聲譽管理是關鍵,創新點包括:
每個匿名身份對應一個聲譽,反映其歷史結算概率,同時維護身份隱私。
交易者可設定聲譽門檻,篩選訂單匹配交易對手,確保交易安全性與可靠性。
未能結算交易者將受到聲譽懲罰,同時影響其交易對手聲譽。
以一個簡單的例子說明:假設 Alice 希望購買 1 個 ETH,
-
訂單提交:Alice 提交了購買 1 個 ETH 的訂單,指定價格為 $2000 USDT。
-
訂單匹配:Book 系統找到了賣家 Bob,他願意以 $2000 USDT 的價格出售 1 個 ETH。
-
交易確認:Alice 和 Bob 確認他們的訂單已經成功匹配。
-
交易結算:Alice 向 Bob 支付 $2000 USDT,並收到 1 個 ETH。Singularity 系統更新了他們的賬戶餘額。
-
聲譽管理:如果 Bob 未能按時完成交易或出現其他不良行為,他的聲譽可能會受到降低,導致系統限制他與其他交易者的匹配。假設 Bob 的聲譽評級為 5,這表示他是一個可靠的交易者。然而,如果 Bob 未能按時完成交易或出現其他不良行為,比如多次取消訂單或惡意操縱市場,他的聲譽可能會受到影響。這可能導致他的聲譽評級下降 1 分,使其聲譽降至 4,進一步限制其未來參與交易的門檻。
3. Automation
Automation 是一個協議內置的 AMM-DEX,其中 Book 作為備用流動性提供者。因為交易者可以通過 Singularity 提交交易來存入資金,而 Singularity 是匿名的。因此,存款到 Automation 的資金也是匿名的。這意味著交易者的身份不會被公開暴露,保護了他們的隱私。
交易者隨時可以從 Automation 提取資金並將其轉移到 Singularity 合約。這種靈活性使交易者能夠自由地管理他們的資金,並在需要時隨時提取。同樣,由於 Singularity 合約本身是匿名的,因此資金的提取過程也能夠保護交易者的匿名性。
對於未能與 Book 中的任何訂單匹配的訂單,Automation 將提供匹配,以幫助增加流動性。這確保了即使沒有立即匹配到訂單,交易者的訂單仍然能夠得到處理,並且他們的交易可以繼續進行。通過提供額外的流動性,Automation 能夠改善整個協議的效率和交易體驗。
4. Relayer
中繼器(Relayer)在 Singularity 中扮演著重要的角色,負責代表用戶提交元交易,並支付用戶交易的 Gas Fee。這一設計是出於保護用戶匿名性的考慮。因為 Gas Fee 必須支付給通常是公開的基礎層區塊鏈,如果用戶支付自己的 Gas Fee,那麼用戶的身份可能會被暴露。
中繼器通過提交元交易來執行這一任務。元交易是原生可驗證的、可計算的,使得中繼器無法篡改或更改交易的內容,從而確保交易的安全性和完整性。此外,為了確保中繼器不會惡意行為,整個系統設計了一個無需信任的中繼器網絡。這意味著任何人都可以運行一箇中繼器,而無需提供任何形式的抵押。
用戶提交的交易與其關聯的費用是公開的,並且將支付給中繼器以補償其支付的 Gas Fee。這種設計使得中繼器網絡成為一個理性的系統,它們會接收任何有利可圖的交易並將其提交。即便出現作惡中繼器,只需要保證有大於等於 1 個誠實中繼器便可以保證系統完備。當然交易者可以選擇自己運行中繼器並且進行 Gas Fee 替付,只是會犧牲部分的隱私性。
5. API
API 是用戶與協議交互的接口節點。通過 API,用戶可以生成並提交證明到 Singularity 合約,管理 Book 上的訂單,監聽 Book 以尋找匹配,並在 Singularity 合約上進行協商結算。此外,API 還允許用戶與 Relayers 進行交互。
隱私交易
根據上述結構可以實現前文提及的隱私交易:
▪ 匿名交易(Automation)
以 Automation 進行交易時,因為交易者需要進行 deposit 的操作,所以會暴露每次質押時的金額,正如每次 deposit 至 Singularity,無法避免第三方監聽到該筆交易細則。因此 Automation 進行交易會犧牲交易隱藏性。
需要注意的是當 Book 無法匹配到交易者時,雖然其訂單可以被納入 Automation 交易池中匹配(貌似會暴露交易者地址),但仍保證交易者匿名性,因為轉移其流動性的主體為 Singularity。
▪ 匿名 + 隱藏交易 (Singularity 結算)
以 Singularity 進行交易結算時,無論該筆交易通過什麼方式進行交易價格發現、意向撮合,最後交易的結算依然可以保證其匿名性、隱藏性,因為 Singularity 合約負責託管結算的資金,並且完成資金的轉移最終性,也就實現了明池做暗。
5 暗池交易:Singularity 的實現方式

Singularity 的交易流程
暗池作為針對大型機構和專業交易者的一個不影響市場價格的交易平臺,主要有 Transfer 和 Swap 這兩大交易需求。接下來我們將根據上圖的內容詳細解讀 Singularity 對這兩種交易類型的實現。
需要注意的是上圖中 API Nodes 和 Trading Nodes 屬於同一個節點,這裡為了更好的解釋將其拆分為兩種節點。
1. Transfer 交易
Transfer 交易主要發生在兩個 Trader 節點之間,我們將想要接收的 Trader 節點定義為 Trader A,將想要發送的 Trader 節點定義為 Trader B。那麼 Trader A 和 Trader B 具體的交易流程如下:
1) Trader B 節點在進行交易時都需要將資金存入到 Singularity 合約中,Trader B 節點通過調用 API 對這筆存款交易進行加密,從而生成一個 ZK Proof 即前面提到的 ZK Note 並提供給 Singularity 合約已驗證 Trader B 已經將資金存入其中。
2) Trader B 在存入資金後會通過調用 API 向 Singularity 合約發起一筆 Transfer 交易,這筆交易同樣也是以 ZK Note 的形式發送給 Singularity 合約。
3) Singularity 合約在接收到 Trader B 的 Note 後會根據 Note 提供的內容找到對應的 Trader A,此時 Trader A 就可以將該 Transfer 交易的金額從 Singularity 合約提取出來。
在這其中我們可以看到,節點與合約之間的交互都是通過 ZK Note 來進行,Note 採取 UTXO 模型來進行傳遞,相比於賬戶模型其自身已具備了一定的隱私性和匿名性。在這種方式下既保證了交易的具體信息只由這筆交易的發起者自己知道,又實現了從外部看僅是某個地址與 Singularity 合約進行了交互,但交易的基本信息如接收方地址或交易金額等無法被捕獲。
2. Swap 交易
Swap 交易相對於 Transfer 交易來說因為涉及到需要尋找交易對手而更復雜一些,這裡我們將想要進行 Swap 交易的 Trader 節點定義為 Trader C,將最終找到的交易方 Trader 節點定義為 Trader D。那麼 Trader C 和 Trader D 具體的交易流程如下:
1) 與前面 Transfer 交易的第 1 步相同,Trader C 需要將資金存入到 Singularity 合約中,同時 Trader C 會通過調用 API 先向 Book 節點發起一個 Order 交易。
2) Book 節點作為一個鏈下的訂單簿節點,它會在 FHE ( 全同態加密 ) 環境下嘗試在不獲知具體的 Order 交易信息的前提下將各個不同的 Order 交易進行撮合。
a. 撮合成功時,Book 節點會通知對應的兩個 Trader 節點進行交易
b. 撮合失敗時,Book 會將這筆交易對應的資金放入到鏈上的 Automation 上 作為備用的流動性資金。這類似於我們把閒錢放入到餘額寶中,在之後假如還有撮合失敗的交易會優先從 Automation 中去進行交易,當 Automation 金額不足以完成交易時才會通過 Singularity 合約與外部 DEX 如 Uniswap 等進行交互。
在找到交易對手並協商 Swap 細節之後,交易者將相互對 Swap 的交易細節進行簽名。然後任何一方交易者都可以使用這些簽名構造一個零知識證明,這使得該交易無需雙方在線即可改變 Notes 的所有權。需要注意的是為了保障交易的隱私性,Swap 交易依然是通過 Singularity 合約來進行的。
由此,我們可以看到 Singularity 在交易過程中主要通過 ZK 和 FHE 技術來實現交易的隱私性和匿名性。ZK 技術的使用使得任何交易的具體信息只有該交易的發起者知曉,但又能讓其他交易者或 Singularity 合約進行快速驗證;FHE 技術使得 Book 節點在交易撮合過程中無需獲知具體的交易信息就能計算出相互匹配的交易,且在通知雙方交易者時也不會透露原始交易的信息,即雙方只知道跟誰交易,但不知道具體的交易資產類型和交易金額等。
6 總結與評價
OTC 市場佔整個加密貨幣市場交易量的近 70% 足見隱私交易在 Web3 行業中是一個巨大的用戶需求。但目前隱私交易賽道仍面臨著種種問題,例如,如何滿足政府機關的監管需求、怎麼在不透露用戶和交易的具體信息的前提下達成交易、如何避免交易雙方作惡等。Singularity 等去中心化暗池作為一種創新的解決方案,能夠利用隱私技術和智能合約為用戶提供更高級別的隱私保護和抗審查能力,減少對中心化實體的信任依賴。這些平臺支持用戶在匿名狀態下進行大額交易,並能與合規服務相結合,創造出既去中心化又符合監管標準的交易環境。因此,對於暗池賽道而言,以下四大角度是筆者認為我們需要去著重考量的:
▪ 技術架構
ZKP、MPC 等隱私增強技術是暗池賽道的基石,它們能夠在不洩露交易細節的情況下驗證交易的合法性。許多當前的協議主要或完全依賴於多方計算(MPC),但這種方法存在兩個主要缺點:計算效率低下和協議複雜性。MPC 協議需要在 MPC 環境中對零知識證明 (ZKP) 進行證明和驗證,而零知識證明本身就計算密集。此外,MPC 通常需要穩定的網絡連接,這在全球化的分散網絡中往往難以實現。這兩個因素結合起來,使得基於完全 MPC 的協議在大規模應用,如訂單匹配引擎中,變得不太實用。
▪ 匿名性和隱私保護
監管是隱私賽道繞不開的話題。如何滿足用戶的交易和資金是完全匿名的,並提供足夠的隱私保護,是一個相對困難的任務。這對於希望與合規資本進行交易的用戶來說尤為重要。可見,暗池項目急需集成相應的 KYB/KYC 流程,積極擁抱監管,同時還需採取一系列措施保證用戶的 KYC/KYB 數據不被洩漏,才能確保其平臺的合法性和用戶的信任。
▪ 流動性&資金安全
流動性是暗池運營的關鍵因素。為了確保暗池的有效運作,交易量&資金安全至關重要,它不僅有助於訂單的高效匹配,還能增強交易者的匿名性、參與意願。在暗池中,資金的匿名性隨著池內資金量的增加而提高,因為有更多的潛在存款人可以選擇與這些資產關聯,這使得追蹤特定存款人變得更加困難。在流動性稀缺的情況下,很多協議採用的訂單簿模式在用戶間撮合交易也存在侷限,因為並不總是能夠提供足夠的流動性來滿足所有訂單。除了訂單簿以外,創新的 AMM 交易機制,集成更多公鏈生態中的 Defi 應用或許是擴大的有效途徑之一。
▪ 可擴展性
確保暗池具備良好的可擴展性,能夠應對不斷增長的用戶數量和交易量,是暗池的必經之路。暗池如果面臨激增的 LP 卻無法匹配相對應的訂單,這將會讓暗池損失。因此暗池在設計階段就要考慮其結算層、技術設計、生態路線,以滿足更高的交易需求,尤其在逐步完善的監管體系下,老錢的進場只會讓此猝不及防。
暗池交易作為在傳統行業已有一定歷史且目前仍然沒有被證偽的一種解決方案,其市場需求和發展潛力仍然相當巨大。傳統的暗池交易面臨著中心化交易商的信任風險,而 Singularity 作為去中心化的暗池交易項目之一,其創新性地採用了「暗池 + 明池做暗」的模式解決了傳統暗池存在的依賴中心化、隱私性不夠、抗審查能力差等痛點。
不同於以往的隱私交易項目,Singularity 在提供資產隱私交易功能的同時還提供了 DeFi 的資產交易能力。當前市場上的交易聚合器數不勝數,但是有特點有用戶黏性設計的聚合器幾乎沒有,而 Singularity 作為明池的隱私層首先解決了機構和巨鯨的交易痛點,保持信息差。對比現在的隱私交易解決方案,暗池(隱私層)的設計天然具有 keep money in the pocket 的特點,因為如果交易者的資金頻繁進出平臺,隱私就失去了意義,相當於自我披露。所以大部分資金都會選擇在暗池停留足夠的時間之後才會撤出,這對於保持項目的 TVL 穩定增長有很好的好處,且能帶給用戶更多的安全感。

根據上述去中心化的暗池的標準,我們可以看到 Singularity 的表現情況在現有暗池解決方案中較為突出:
▪ 匿名性和隱私保護:在匿名性處理,常規的方案都是 ZKP。因此,尋找到合適的合作方才是核心。目前 Singularity 讓 ComplyCube (KYC) & Shufti Pro (KYC&KYB) 負責鏈下 KYC&KYB 處理,並且由 Keyring 構建對應的 proof,最後由預言機上鍊。對比其他項目,Singularity 要更加符合現在的合規需求,避免未來出現類似 Tornado Cash 的監管風險問題。
▪ 資金安全:合約安全無法進行直接對比。但是因為 Singularity 允許明池作暗,進一步讓用戶、機構資金遷移意願下降,使其資金可能長期暴露在合約安全風險。上文也提及過,作為機構 / 用戶,頻繁的遷移資金也會暴露地址,因此需要在地址隱私和資金安全兩者之間找到一個平衡點。
▪ 流動性:不同於只依賴於訂單簿 /AMM 模型的項目,Singularity 引入了訂單簿&AMM 以確保流動性的效率能夠最大化。但從實際應用來說,交易模式的不同最終導致的流動性差距可能不會很大,更多在於項目方的 BD 能力以及項目合規性,且最終的決定權更多在市場的用戶身上。
▪ 可擴展性:從生態兼容性來說,Singularity 兼容 EVM 的生態算是主流敘事的一個打法,如果不考慮自己做鏈,其交易結算效率仍高度受限於其結算層,極端情況下,這些結算層未必能兜得住高頻的交易。因此,中長期來看以 App-chain 生態延展的方向的項目會更具可擴展性。在技術方案中,上文也略有著筆,Singularity 選擇以 FHE+ZKP 會比用 MPC-ZKP 的方案更高效,原因在於 MPC-ZKP 對計算效率要求很高。因此,目前來看,Singularity 選的技術方案還是能夠滿足相應的交易需求。從生態拓展來看,「明池作暗」的玩法還可以延伸到非交易的場景,還有其他 Defi 的場景,其想象力不亞於 Uniswap V4 提出的 hook。
與此同時,我們在看到 Singularity 的核心競爭力時,也需要注意 Singularity 在未來可能會遇到的潛在風險:
▪ 市場價格失去有效的價格發現功能:由於暗池交易的匿名性和交易資金量大等特性,市場上資產的價格可能無法準確反映暗池內發生的波動。這導致市場價格失去了有效的價格發現功能,因為其他市場參與者無法獲取暗池內交易的信息。唯一的例外是,如果用戶在 Singularity 使用常規 DEX 進行價格發現,那麼價格可能會反映出真實的市場供需情況。
▪ 政府監管風險:由於暗池交易可能被用於逃避監管和規範,政府機構可能會採取一系列更加嚴厲的監管措施。這可能包括加強對暗池交易的監測和監管,或者對參與暗池交易的個人和實體進行處罰。這些監管措施可能會對 Singularity 項目的發展和運營造成影響,並增加法律風險。
▪ 資金管控安全:由於資金長期保管在 Singularity 合約中,這相當於一個 Vault,在極端情況下可能會存在一些合約風險,但因為 Singularity 不涉及多鏈之間的通信、負責交易遞信的 Relayers,其安全性至少會比跨鏈橋要高。
▪ KYC/KYB 風險:在身份確權方面高度依賴有限的合作方對用戶的資格審查,有可能出現單點風險。
綜上所述,Eureka Partners 將隱私賽道作為重要戰略投資賽道之一。對投資機構和其他參與方來說,Singularity 是暗池交易;但是對監管方來說,Singularity 更像是「灰池」,我們預期 OTC、機構交易將逐漸走向擁抱監管為主的暗池隱私交易方式。我們認為,Web3 目前的技術發展都是「折返式前進」。Tornado Cash 受到強監管後,隱私交易出現了肉眼可見的需求真空。同時縱觀歷史,規則的落地往往滯後於技術的突破和革命。當技術遇到挑戰時,我們更應該擁抱變化,不浪費任何一次危機。我們期待 Singularity 會在擁抱監管的暗池 ZK 隱私賽道成為下一個領跑者。
歡迎加入深潮 TechFlow 官方社群
Telegram 訂閱群:https://t.me/TechFlowDaily
Twitter 官方帳號:https://x.com/TechFlowPost
Twitter 英文帳號:https://x.com/BlockFlow_News














