全同態加密 (FHE) 是什麼?如何利用隱私計算改變區塊鏈應用生態

Kyle
分享
全同態加密 (FHE) 是什麼?如何利用隱私計算改變區塊鏈應用生態

隱私是網路產業長年關注的議題,Web3 也將隱私視為剛需而促使零知識證明 (ZKP) 與安全多方運算 (MPC) 等技術的落地發展。不過近期全同態加密技術 (FHE) 也逐漸走入市場眼簾中,或許有機會改變現有隱私技術的缺口而出現全新應用。

全同態加密 (FHE) 介紹

應用概念:加密資料不用解密可直接計算

同態加密 (Homomorphic Encryption, HE) 是一種密碼學加密技術,其目的是為了強化資料運算安全。簡單來說,當資料被 HE 函數進行加密後,該筆資料可以在不需要解密的情況下進行其他運算,藉此提升資料運算的安全性與隱私。

根據技術成熟度與可進行的操作差異,還可以分為:

廣告 - 內文未完請往下捲動
  • 半同態加密 (Partially Homomorphic Encryption, PHE)
  • 近似同態加密 (Somewhat Homomorphic Encryption, SWHE)
  • 全同態加密 (Fully Homomorphic Encryption, FHE)

而全同態加密技術相對較成熟,可以進行更複雜的加密後運算並足以商業化,因此也順勢成為區塊鏈產業關注的重點技術。

FHE 可以確保資料在傳輸、運算、回傳的過程中,全程保持加密狀態,保護資料的機密性。有別於傳統的模式,使用 FHE 加密的資料,無需在計算過程中解密資料,確保不論是電信業者、雲端計算業者、廣告分析業者,都可以在不看到明文的情況下完成任務,並將完成計算後的資料 (仍然是加密狀態) 回傳給客戶,客戶再自行解密得到目標結果。

FHE 不論是對於第三方服務業者或是客戶都有幫助。對於服務業者來說,可以減少隱私資料保管疑慮,又可以收取運算費用;而對於用戶來說,可以提升資料的安全性與隱私性。

經過 FHE 加密後的數據,可在保持加密的狀態下受第三方分析或是計算處理,得到的結果只有用戶可以進行解密。

代數概念:f(x) + f(y) = f(x+y)

全同態加密讓用戶可以將資料利用 FHE 函數加密,例如將資料 x 與資料 y 利用 f 加密變成 f(x) 與 f(y),再傳送給外部。

外部計算者可以藉由 f(x) + f(y) 計算 f(x+y),並將 f(x+y) 回傳給用戶,用戶擁有解密函數 g,得到結果 g(f(x+y)) = x+y。

過程中外部並不知道資料明文,但仍可以完成計算並提交給資料擁有者。

案例說明

其實同態加密已經用在許多應用上:

  • 法國科技公司利 FHE 技術協助醫院分析病患隱私資料。
  • 韓國政府使用 FHE、MPC 等技隱私術,進行隱私問卷調查應用實驗。
  • 國立中山大學利用同態開發「具隱私保護暨安全資料探勘之醫療資料倉儲系統」專案計畫,研發快捷式醫療服務,將醫療數據安全上傳雲端。

全同態加密在 Web3 重要性

FHE 補足 ZKP、MPC 缺口

Web3 產業現有的零知識證明 (Zero-knowledge proof, ZKP) 與安全多方運算技術 (Secure Multi-Party Computation, MPC)、可執行安全環境 (trusted execution environment, TEE) 與 FHE 的差異是什麼?為何需要再加入一個新的技術?是否會開啟新的技術競爭?

ZKP、FHE、MPC、和 TEE 實際上是互補的技術,所使用的場景有所差異。除了競爭之外,帶來更多的是組合創新的機會:

  • ZKP 提供相對較強的隱私保證,因為在此架構下「未加密」的資料永遠不會離開用戶的裝置。未經資料擁有者許可,任何人都無法對這些資料進行任何計算,不過反過來說也失去了可組合性。更適合驗證計算,而不是實際運行隱私型的智能合約。
  • FHE 具有較強的可組合性,但隱私性較弱。因為若 FHE 需要使用在區塊鏈上,仍然需要讓驗證者或是機制下的少數方擁有解密鑰匙,才能紀錄交易資訊上鏈。不過由於其可組合性與隱私特性,在鏈上應用仍具有一定需求。
  • MPC 提供上述兩個方法之間的中間定位。MPC 在不透露輸入的情況下完成輸出,因此允許對隱私資料進行計算 (輸入),比 ZKP 提供更多的可組合性,不過這種計算僅限於一小部分參與者可執行。適合用在錢包私鑰管理。
  • TEE 提供交易在安全環境中進行解密與運算,技術也相對成熟高效率,不過卻過於依賴執行環境的安全性。適合用在去中心化要求較低的功能上。

上述各種技術皆有獨特優勢。ZKP 適合用在驗證事情真偽,FHE 適合應用在需要將私密資料提交到合約的計算場景,MPC 適合有限制身分許可的隱私計算,TEE 適合高頻計算且安全性需求較低的應用。

未來可以預見將出現結合多種加密技術的產品出現,滿足各式功能需求。

例如資產管理工具可以使用 ZKP 驗證某用戶的資金量是否達高淨值標準,同時利用 FHE 為用戶製作資產變化表格而不必傳輸個別資產資料。

隱私 Web3 應用

對於區塊鏈產業,全同態加密也是很好的互補技術,強化區塊鏈隱私不足的問題。FHE 使智能合約可以處理密文,而無須知道真實資料,提高對於隱私需求較高的應用之可行性。

  • 交易代幣:藉由將交易內容加密,提升用戶隱私之外也可以降低 MEV 損失。
  • DAO 投票:可以做到匿名投票或是特定時間點公開,減少公開資訊造成的額外干擾。
  • 拍賣:僅公布最終最高出價,減少透露拍買家賣策略。
  • 全鏈遊戲:藉由隱藏交易資訊與對手玩家策略,打造更加真實的資訊非對稱賽局。

(觀點|全鏈遊戲如何在遊戲內帶來真正的非對稱資訊賽局)

實作專案:Fhenix Network

若要結合區塊鏈與全同態加密,基本上除了用戶簽署交易時需要有工具可以進行加密,還需要能快速讀取全同態加密函數的智能合約與虛擬機,最後則是需要克服如何讓節點進行驗證交易內容。

專案介紹

目前的解決方案是打造一條擁有原生全同態加密操作的虛擬機,而 Fhenix Network 則號稱整合 FHE 的去中心化網路。想解決的是以太坊和其他 EVM 網路過於透明的問題,透過引入隱私功能促使產生更廣泛的應用。

Fhenix Network 是以太坊生態的 FHE Rollup,基於 Arbitrum Nitro 詐欺證明打造,提供模組化的 FHE 功能的同時支援 EVM 兼容。選擇 Optimistic Rollups 的原因是因為目前技術較容易實作,快速推出 FHE Layer2 進行市場測試。

運作原理簡介

透過 Arbitrum Nitro 的架構,Fhenix Network 使用 WebAssembly 虛擬機 (WASM) 進行詐欺證明與 FHE 邏輯編譯,在 WASM 上以安全的方式運行而不是在 EVM 上運行。

Fhenix Network 的核心 FHE 邏輯位於 fheOS 代碼庫,其包含開發人員將 FHE 實作到智能合約中所需的套件。例如 TFHE-rs (由合作夥伴 Zama 建構)。

Fhenix Network 模組化架構

而全同態加密最重要解密的環節,在 Fhenix Network 的設計中是 Threshold Network (TSN) 模組負責,當資料需要解密時,TSN 會負責解密並回傳資料。

解鎖更多隱私應用

全同態加密並不是近期新開發的技術,不過隨著技術的進步,漸漸被加密圈視為是一種潛在的隱私保護解決方案,補足 ZKP、MPC 等現有加密技術的缺口,潛在的新應用包含隱私投票、全鏈遊戲、抗 MEV 轉帳等,期待未來會出現更多有趣應用。