撰文:Ray
前言
過去,密碼學技術在人類文明進步中佔據了舉足輕重的地位,尤其在資訊安全和隱私保護領域中發揮了不可替代的作用。它不僅為各領域的資料傳輸和儲存提供了堅實的保護,而且它的非對稱加密公私鑰體系和雜湊函數,更是在2008 年由中本聰進行創造性地融合,設計出了解決雙花問題的工作量證明機制,從而推動了比特幣這一革命性數位貨幣的誕生,並開啟了區塊鏈產業的新時代。
隨著區塊鏈產業的不斷演進和快速發展,一系列前沿的密碼技術不斷浮現,其中零知識證明(ZKP)、多方計算(MPC)和全同態加密(FHE)等最為突出。這些技術在多個場景中得到了廣泛應用,例如ZKP 結合Rollup 方案解決區塊鏈的「不可能三角」問題,MPC 結合公私鑰體系推動用戶入口的大規模應用(Mass Adoption)。至於被視為加密學聖杯之一的全同態加密FHE,其獨特的特性使得第三方能夠在不解密的情況下,對加密資料進行任意次數的計算和操作,從而實現可組合的鏈上隱私計算,為多個領域和場景帶來了新的可能。
快速概覽FHE
當我們提到FHE(全同態加密)時,我們可以先理解其名稱背後的含義。首先,HE 代表同態加密技術,其核心特性在於允許對密文進行計算和操作,而這些操作能夠直接對應到明文上,即保持加密資料的數學屬性不變。而FHE 中的「F」則意味著這種同態性達到了全新的高度,允許對加密資料進行無限次的計算和操作。
為了幫助理解,我們選用最簡單的線性函數作為加密演算法,並且結合單次操作說明加法同態和乘法同態。當然,實際FHE 使用的是一系列更為複雜的數學演算法,並且,這些演算法對於計算資源(CPU 和記憶體)要求極高。
儘管FHE 的數學原理深奧且複雜,但在此我們不過多展開。值得一提的是,在同態加密的領域中,除了FHE 之外,還有部分同態加密和有些同態加密這兩種形式。它們主要區別在於支援的操作類型和允許的運算次數不同,但同樣為實現加密資料的計算和操作提供了可能。不過,為了保持內容的簡潔性,我們在這裡也不做深入討論。
在FHE 產業中,儘管有不少知名企業參與研究和開發,不過,微軟和Zama 憑藉他們卓越的開源產品(程式碼庫),凸顯了無與倫比的可用性和影響力。他們為開發者提供了穩定且高效的FHE 實現,這些貢獻極大地推動了FHE 技術的持續發展和廣泛應用。
微軟的SEAL:由微軟研究院精心打造的FHE 函式庫,不僅支援全同態加密,也相容於部分同態加密。 SEAL 提供了高效的C++ 接口,並透過整合眾多最佳化演算法和技術,顯著提升了運算效能和效率。
Zama 的TFHE:是一個專注於高效能全同態加密的開源函式庫。 TFHE 透過C 語言介面提供服務,並運用一系列先進的最佳化技術和演算法,旨在實現更快速的運算速度和更低的資源消耗。
依照最簡化的思路,體驗FHE 的操作流程大致如下:
- 產生金鑰:使用FHE 函式庫/ 框架產生一對公私鑰。
- 加密資料:使用公鑰對需要進行FHE 計算處理的資料進行加密。
- 進行同態計算:利用FHE 函式庫提供的同態計算功能,對加密的資料執行各種計算操作,例如加法、乘法等。
- 解密結果:當需要查看計算結果時,合法的使用者使用私鑰對計算結果進行解密。
在FHE 的實務中,解密金鑰的管理方案(產生、流轉和使用等)尤其關鍵。由於加密資料的計算和操作結果在某些時刻和場景下需要解密以供使用,那麼,解密金鑰便成為了確保原始資料和加工資料安全與完整性的核心。關於解密金鑰的管理,其方案實際上與傳統金鑰管理有許多相似之處,但鑑於FHE 的特殊性,也可以設計採取更嚴謹和細緻的策略。
對於區塊鏈而言,由於其去中心化、透明化和不可篡改等特性,引入閾值的多方安全計算方案(Threshold Multi-Party Computation, TMPC)是極具潛力的選擇。這種方案允許多個參與者共同管理和控制解密金鑰,只有當達到預設的閾值數量(即參與者數量)時,才能成功解密資料。這樣不僅能夠提高金鑰管理的安全性,也能降低單一節點被攻破的風險,為FHE 在區塊鏈環境中的應用提供了強而有力的保障。
打下基礎的fhEVM
從最小侵入性角度出發,實現FHE 在區塊鏈上的應用,最理想的方式是將其封裝為通用的智慧合約程式碼庫,以確保輕巧性和靈活性。然而,此方案的前提是智慧合約虛擬機器必須預先支援FHE 所需的複雜數學運算和加密操作的特定指令集。如果虛擬機器無法滿足這些要求,則必須深入虛擬機器的核心架構進行客製化和改造,以適應FHE 演算法的需求,從而實現其無縫整合。
作為廣泛採用且經過長時間驗證的虛擬機,EVM 自然而然地成為了實現FHE 的首選。然而,在這個領域的實踐者寥寥無幾,其中,我們再次注意到開源TFHE 的Zama 公司。原來,Zama 不僅提供了基礎的TFHE 庫外,而且作為一家專注於將FHE 技術應用於人工智慧和區塊鏈領域的科技公司,還推出了兩款重要開源產品:Concrete ML 和fhEVM。 Concrete ML 專注於機器學習隱私計算。透過Concrete ML,資料科學家和ML 從業者可以在保護隱私的前提下,對敏感資料進行機器學習模型的訓練和推斷,從而充分利用資料資源而無需擔心隱私洩露。另一款產品fhEVM 則是支援Solidity 實現隱私運算的全同態EVM。 fhEVM 讓開發者可以在以太坊智慧合約中使用全同態加密技術,實現隱私保護和安全計算。
透過閱讀fhEVM 的資料,我們了解到fhEVM 的核心特性是:
- fhEVM:在非EVM 字節碼層面,以內嵌函數形式,透過整合Zama 開源FHE 函式庫的多個不同狀態的預編譯合約,提供了FHE 的操作支援。另外,專門為FHE 打造了一片特定的EVM 記憶體和儲存區域,用於儲存、讀寫和驗證FHE 的密文;
- 基於分散式閾值協定設計的解密機制:支援在多個使用者和多個合約之間混合加密資料的全域FHE 金鑰和鏈上儲存加密金鑰、多個驗證者之間以閾值的多方安全計算方案分享解密金鑰的非同步加密機制;
- 降低開發者使用門檻的Solidity 合約庫:設計了FHE 的加密資料類型、操作類型、解密呼叫和加密輸出等;
Zama 的fhEVM 為區塊鏈應用中的FHE 技術提供了堅實的起點,但考慮到Zama 主要專注於技術研發,其解決方案更偏向於技術層面,而在工程落地和商業應用方面的思考相對較少。因此,fhEVM 在推向實際應用的過程中,可能會遭遇各種預料之外的挑戰,包括但不限於技術門檻和性能優化等問題。
建構生態的FHE-Rollups
單純的fhEVM 本身並不能單獨構成一個專案或完整的生態體系,它更像是以太坊生態中多樣化的客戶端之一。若要作為獨立專案立足,fhEVM 必須依託於公鏈層級的架構或採用Layer2/Layer3 的解決方案。 FHE 公鏈的發展方向不可避免地要解決如何減少FHE 運算資源在分散式驗證者節點之間的冗餘和浪費。相反,本身作為公鏈執行層存在的Layer2 / Layer3 方案可以將計算工作分配到少數節點,極大減低計算開銷的數量級。正因如此,Fhenix 作為先驅者,積極探索將fhEVM 與Rollup 技術結合,提出建構先進的FHE-Rollups 型Layer2 解決方案。
考慮到ZK Rollups 技術涉及複雜的ZKP 機制,且需要龐大的計算資源來產生驗證所需的證明,結合全FHE 本身的特性,直接實現基於ZK Rollups 的FHE-Rollups 方案將面臨諸多的挑戰。因此,在目前階段,相較於ZK Rollups,採用Optimistic Rollups 方案來作為Fhenix 的技術選擇會更為實際和高效。
Fhenix 的技術堆疊主要包括以下幾個關鍵元件:Arbitrum Nitro's fraud prover 的變種,它可以在WebAssembly 進行詐欺證明,因此,FHE 邏輯可以先編譯成WebAssembly 進行安全運行。核心庫fheOS 提供了將FHE 邏輯整合到智能合約中所需的所有功能。閾值服務網路(TSN)是另一個重要元件,它託管著秘密共享的網路金鑰,使用特定演算法的秘密共享技術將其分割成多份來確保安全性,並且在必要時,負責解密資料等任務。
基於上述的技術棧,Fhenix 發布了首個公開版本Fhenix Frontier。儘管這是有不少限制和功能缺失的早期版本,但它已經全方位提供了智能合約程式碼庫、Solidity API、合約開發工具鏈(如Hardhat/Remix)、前端互動JavaScript 庫等的使用說明。對此有興趣的開發者和生態項目方可以參考官方文件進行探索。
Chain-Agnostic 的FHE Coprocessors
在FHE-Rollups 的基礎上,Fhenix 巧妙地引入了Relay 模組,旨在賦能各類公鏈、L2 和L3 網絡,使得它們能夠接入FHE Coprocessors 使用FHE 功能。這意味著,即便原先的Host Chain 並不支援FHE,現在也能間接享受FHE 的強大功能。然而,由於FHE-Rollups 的證明挑戰期通常長達7 天,這在一定程度上限制了FHE 的廣泛應用。為了克服這個挑戰,Fhenix 聯手EigenLayer,透過EigenLayer 的Restaking 機制,為FHE Coprocessors 的服務提供了更為快速方便的通道,大大提升了整個FHE Coprocessors 的效率和靈活性。
FHE Coprocessors 的使用流程簡單明了:
- 應用合約在Host Chain 上呼叫FHE Coprocessor 執行加密計算操作
- Relay 合約排隊請求
- Relay 節點監聽Relay 合約並將呼叫轉發至專用的Fhenix Rollup
- FHE Rollup 執行FHE 計算操作
- 閾值網路解密輸出
- Relay 節點將結果和樂觀證明回傳給合約
- 合約驗證樂觀證明並將結果發送給呼叫方
- 應用合約結合呼叫結果繼續執行合約
Fhenix 參與指南
如果你是開發者,你可以深入研究Fhenix 的資料文檔,並基於這些文檔開發屬於你自己的FHE 型應用,以探索其在實際應用中的潛力。
如果你是用戶,不妨嘗試體驗Fhenix 的FHE-Rollups 所提供的dApps,感受FHE 帶來的資料安全性和隱私保護。
如果你是研究員,強烈建議你仔細閱讀Fhenix 的資料文檔,深入了解FHE 的原理、技術細節和應用前景,以便在你的研究領域內做出更有價值的貢獻。
FHE 最佳應用場景
FHE 技術展現了廣泛的應用前景,特別是在全鏈遊戲、DeFi 以及AI 等領域,我們堅定地相信其在這些領域擁有巨大的發展潛力和廣闊的應用空間:
- 隱私保護的全鏈遊戲:FHE 技術為遊戲經濟體中的金融交易和玩家操作提供了強大的加密保障,有效防止了即時操縱行為,確保了遊戲的公平性和公正性。同時,FHE 也能夠匿名化玩家的活動,顯著降低了玩家金融資產和個人資訊外洩的風險,從而全方位保護玩家的隱私安全。
- DeFi/MEV:隨著DeFi 活動的蓬勃發展,不少DeFi 作業在黑暗森林中成為了MEV 攻擊的目標。為了解決這項挑戰,FHE 能夠在保證業務邏輯計算處理的前提下,有效地保護DeFi 中不願洩露的敏感數據,如持倉數量、清算線、交易滑點等。透過應用FHE,鏈上DeFi 的健康狀況可以顯著地提升,從而大幅降低不良MEV 行為的發生頻率。
- AI:AI 模型的訓練依賴資料集,當涉及使用個體資料進行訓練時,確保個體敏感資料的安全成為首要前提。為此,FHE 技術成為AI 模型訓練個體隱私資料的理想方案,它允許AI 在加密資料上進行處理,從而在不洩露任何個人敏感資訊的情況下完成訓練過程。
FHE 的社區認可度
技術的發展並非僅靠其硬核的特性就能實現。要實現技術的成熟與持續進步,必須依賴持續完善的學術研發與積極建立的社區力量。在這方面,FHE 被成為加密學界的聖杯,其潛力與價值早已被廣泛認可。 2020 年,Vitalik Buterin 在《Exploring Fully Homomorphic Encryption》一文中,對FHE 技術給予了高度的認可與支持。近期,他在社群媒體上再次發聲,無疑地再次強化了這一立場,並為FHE 技術的發展呼籲了更多的資源和力量。與之對應的是,不斷湧現的新項目、非營利研究和教育組織,持續注入的市場資金,這一切似乎都在預示著一場技術爆發的序曲即將奏響。
潛力的FHE 初期生態
在FHE 生態的發展初期,除了核心基礎技術服務公司Zama 和備受矚目的Fhenix 這項優質專案外,還有一系列同樣出色的專案值得我們深入了解與關注:
- Sunscreen:透過自助研發建構的FHE 編譯器,支援傳統程式語言進行FHE 轉換,設計對應FHE 密文去中心化儲存存儲,最後以SDK 形式為Web3 應用輸出FHE 特性
- Mind Network:結合EigenLayer 的Restaking 機制,專門為AI 和DePIN 網路擴展安全性的FHE 網絡
- PADO Labs:推出融合ZKP 和FHE 的zkFHE,並在其上建構的去中心化計算網絡
- **Arcium:** 前身是Solana 的隱私協議Elusiv,近期轉型成為結合了FHE 的平行機密計算網絡
- Inco Network:基於Zama 的fhEVM,專注於優化FHE 的計算成本和效率,進而發展完整生態的Layer1
- Treat:由Shiba 團隊與Zama 聯手打造,致力於延展Shiba 生態的FHE Layer3
- octra:基於OCaml、AST、ReasonML 和C++ 開發的支援隔離執行環境的FHE 網絡
- BasedAI:支援為LLM 模型引入FHE 功能的分散式網絡
- Encifher:前身是BananaHQ,現更名為Rize Labs,正圍繞著FHE 做FHEML
- Privasea:NuLink 核心團隊打造的FHE 網絡,採用Zama 的Concrete ML 框架,旨在在AI 領域的ML 推理過程中實現資料隱私保護
對於非贏利性研究和教育機構,我們強烈推薦FHE.org 和FHE Onchain,它們為整個生態的學術研究和教育普及提供了寶貴的資源。
由於篇幅有限,我們未能一一列舉FHE 生態中所有優秀的項目。但請相信,這個生態中蘊含了無限的潛力與機遇,值得我們持續深入探索與發掘。
總結
我們對FHE 技術的前景充滿樂觀,並對Fhenix 這個專案抱持著極高的期待。一旦Fhenix 主網發布和正式上線,我們預計不同領域的應用將因為FHE 技術而得到提升。我們堅信,這個充滿創新與活力的未來,已經近在咫尺。
參考文獻https://zama.ai/https://github.com/microsoft/SEAL
https://www.fhenix.io/https://mindnetwork.xyz/
https://www.inco.org/https://x.com/treatsforShib
https://docs.octra.org/https://x.com/encifherio
https://vitalik.eth.limo/general/2020/07/20/homomorphic.html
https://x.com/MessariCrypto/status/1720134959875457352
https://foresightnews.pro/article/detail/59947