目錄
一、隱私計算(Privacy Computing)
隱私計算,廣義上是指面向隱私保護的計算系統與技術,涵蓋數據的產生、存儲、計算、應用、銷燬等信息流程全過程,想要達成的效果是使數據在各個環節中 “可用不可見”。目前最先落地於金融、醫療等行業。
二、實現隱私計算的相關技術
從技術角度出發,和隱私計算相關聯的概念很多——多方安全計算(MPC)、可信硬件(TEE)、聯邦學習、差分隱私、區塊鏈等。目前業內採用的主流技術包括三類:多方安全計算(MPC)、聯邦學習和可信執行環境(TEE)。
當前實現隱私計算的技術主要可分爲可信計算和密碼學兩大方向。
- 可信硬件
- 可信硬件指可信執行環境,核心思想是構建一個安全的硬件區域,各方數據統一匯聚到該區域內進行計算。
- 密碼學
密碼學指用算法實現對計算過程中的數據保護,以多方安全計算、聯邦學習等爲代表。
1. 多方安全計算(Secure Multi-Party Computation MPC)
多方安全計算(Secure Multi-Party Computation,簡稱MPC)是指在無可信第三方情況下,通過多方共同參與,安全地完成某種協同計算。即在一個分佈式環境中,多個參與者共同完成對某個函數的計算,該函數的輸入信息分別由這些參與者提供,且每個參與者的輸入信息是保密的,在計算結束後,各參與者獲得正確的計算結果,但無法獲知其他參與者的輸入信息。這種方式主要基於密碼學的一些隱私技術,相關概念還包括同態加密(Homomorpgic Encryption)、不經意傳輸(Oblivious Transfer)、混淆電路(Garbled Circuit)和祕密共享(Secret Sharing)等。
核心在於計算參與方在數據加密狀態下進行計算。彼此不知對方數據,卻能得到正確的計算結果。
2. 聯邦學習(Federated machine learning/Federated Learning)
聯邦機器學習(Federated machine learning/Federated Learning),又名聯邦學習,聯合學習、聯盟學習。聯邦機器學習是一個機器學習框架,能幫助多個機構在滿足用戶隱私保護、數據安全和政府法規的要求下,進行數據使用和機器學習建模。有觀點認爲,基於多方數據進行聯合建模,各自原始數據不對外輸出,由中心方進行協調的建模,都可稱爲聯邦學習。
聯邦學習的系統架構大致分爲橫向聯邦學習、縱向聯邦學習、遷移學習三類,分別對應不同數據集的差異情況。
核心:“數據不出門,算法滿地跑”
3. 可信執行環境(Trusted Execution Environment TEE)
以上兩種方式主要是在軟件和算法層面實現隱私計算。可信執行環境(TEE)則基於硬件實現。
這種方式的思路是在CPU 上構建一塊安全區域,這塊區域的作用是給數據和代碼的執行提供一個更安全的空間,在這個安全區域內進行相關的計算。比較有代表性的是Intel-SGX、ARM-TrustZone等。
三種技術的對比
這三種方式在安全性、工程能力和落地場景等方面存在不同的特點,我們可以通過下文這張對比圖,瞭解不同技術思路的優劣勢。