隱私計算綜述閱讀


本篇文章,是近期閱讀《信息通信技術與政策》2021年第6期的一些有關隱私計算的文章時,記錄的筆記,記錄在此。

隱私計算發展綜述(閆樹)

不經意傳輸(OT)

不經意傳輸,也稱茫然傳輸,提出了一種在數 據傳輸與交互過程中保護隱私的思路。 在不經意傳輸 協議中,數據發送方同時發送多個消息,而接收方僅獲 取其中之一。 發送方無法判斷接收方獲取了具體哪個消息,接收方也對其他消息的內容一無所知。

混淆電路(GC)

混淆電路,是一種將計算任務轉化為布爾電路並對真值表進行加密打亂等混淆操作以保護輸入隱 私的思路。 利用計算機編程將目標函數轉化為布爾電 路后,對每一個門輸出的真值進行加密,參與方之間在 互相不掌握對方私有數據的情況下共同完成計算。 混淆電路是姚期智院士針對百萬富翁問題提出的解決方 案,因此又稱姚氏電路。

秘密分享(SS)

秘密分享,也稱秘密分割或秘密共享,給出了 一種分而治之的秘密信息管理方案。 秘密分享的原理 是將秘密拆分成多個分片(Share),每個分片交由不同 的參與方管理。 只有超過一定門限數量的若干個參與 方共同協作才能還原秘密信息,僅通過單一分片無法 破解秘密。

同態加密 (HE)

同態加密,是一類實現在基礎的加密操作之 上直接完成密文數據間運算的加密算法。 數據經過同 態加密后進行計算得到的結果與用同一方法在明文計 算下得到的結果保持一致,即先計算后解密等價於先 解密后計算。

橫向聯邦學習

數據矩陣(也可以是表格,例如,Excel表格)的橫向的一行表示一條訓練樣本,縱向的一列表示一個數據特征(或者標簽)。通常用表格查看數據(例如,病例數據),用一行表示一條訓練樣本比較好,因為可能有很多條數據。參考

適用於參與者的數據特征重疊較多,而樣本ID重疊較少的情況,例如,兩家不同地區的銀行的客戶數據。“橫向”二字來源於數據的“橫向划分(horizontal partitioning, a.k.a. sharding)”。如圖所示例,聯合多個參與者的具有相同特征的多行樣本進行聯邦學習,即各個參與者的訓練數據是橫向划分的,稱為橫向聯邦學習。

橫向聯邦學習也稱為特征對齊的聯邦學習(Feature-Aligned Federated Learning),即橫向聯邦學習的參與者的數據特征是對齊的。

下圖給出了一個橫向划分表格的示例,橫向聯邦使訓練樣本的總數量增加。

縱向聯邦學習

適用於參與者訓練樣本ID重疊較多,而數據特征重疊較少的情況,例如,同一地區的銀行和電商的共同的客戶數據。“縱向”二字來源於數據的“縱向划分(vertical partitioning)”。如圖所示例,聯合多個參與者的共同樣本的不同數據特征進行聯邦學習,即各個參與者的訓練數據是縱向划分的,稱為縱向聯邦學習。縱向聯邦學習需要先做樣本對齊,即找出參與者擁有的共同的樣本,也就叫“數據庫撞庫(entity resolution, a.k.a. entity alignment)”。只有聯合多個參與者的共同樣本的不同特征進行縱向聯邦學習,才有意義。縱向聯邦使訓練樣本的特征維度增多。

樣本對齊,就是數據求交

縱向聯邦學習也稱為樣本對齊的聯邦學習(Sample-Aligned Federated Learning),即縱向聯邦學習的參與者的訓練樣本是對齊的。
下圖給出了一個縱向划分表格的示例。

遷移學習

聯邦遷移學習則適用於數據集間樣本和特征重合均較少的場景。 在這樣的場景中,不再對數據進行切分,而是利用遷移學習來彌補數據或標簽的不足。 以不同地區、不同行業機構之間進行聯合建模為例,用戶群體和特征維度的交集都很小,聯邦遷移學習即用來針對性解決單邊數據規模小、標簽樣本少的問題。

關鍵技術對比

隱私計算開源產品

開源庫

1、 Concrete:是AI 公司 Zama 開源的基於全同態加密的軟件庫,支持TFHE方案的一個自定義變體,基於的是GSW方案。

2、 Private Join and Compute:谷歌開源的新型多方安全計算開源庫,結合了隱私求交和同態加密兩種基本的加密技術,實現對求交信息計算。

能求出交集對應label的和!

隱私計算關鍵技術與創新(符芳誠)

PSI

PSI,就是隱私信息求交,它要求參與方在互相不公開本地集合的前提下,共同計算得出多個參 與方的集合的交集,且不能向任何參與方泄露交集以外的信息。

在縱向聯邦學習場景中, PSI 也被稱為樣本對齊( Sample Alignment) 或者數據庫撞庫,即各參與方需要首先求出各自的訓練樣本ID 集合之間的交集,基於計算得到的訓練樣本 ID 交集進行后續的縱向聯邦模型訓練。

多方PSI

計算多方時,計算復雜度會變大,一般還是兩兩求交,代替多方求交。

(1)最早的PSI,是基於DH,基於盲簽名的和基於OT的,但進行兩兩求交時,會泄露那些屬於兩方交集但不屬於多方交集的數據。
(2)然后提出真正的多方的PSI,主要思想是將樣本 ID 集合編碼 成特殊的數據結構,即不經意多項式,其中每一個樣本 ID 均為不經意多項式的根【進行編碼】;然后利用半同態加密算法對 多項式參數進行保護,使多個參與方可以在密文空間下進行多項式求值,同時又無法讀取多項式參數的明 文。 然而,大整數多項式系數展開和求值的計算復雜 度均為 O(n3 )。(APSI中的Partition)
(3)優化方法:分塊。具體來說利用哈希分桶技 術將 ID 集合均勻映射到若干 ID 分桶中,這里要求各 參與方使用相同的哈希函數,以便確保相同的樣本 ID 被映射到相同的分桶中。 這樣一來,只需要進行“桶內 計算、桶間合並”即可得到完整的多方 ID 集合的交集。 將單個桶內樣本數量視為一個常數,算法的計算復雜 度可以優化到 O(n)。(APSI中的cuckoo hash)

Unbalanced-PSI

即一個參與方 A 的樣本量 遠遠小於另一參與方 B,這里稱擁有樣本量少的 A 為 弱勢方,稱擁有樣本量多的 B 為強勢方。 此 時,PSI 的計算結果可能非常接近弱勢方的真實樣本 ID 集合,存在一定的數據泄露風險。

解決辦法:
混淆。在 PSI 流程中,提 出從強勢方的 ID 集合中隨機抽取部分密文 ID 數據混 入最終交集中。

雙方都有輸出。

(1)最終計算得到的 PSI 交集由真實交集和混淆 集合組成,其中混淆集合全部來自強勢方的樣本 ID。
(2)弱勢方可以獲得 PSI 交集,同時可以通過對比 本地 ID 集合和 ID 交集得到真實的樣本 ID 交集,但是 無法獲取混淆交集部分的樣本 ID(由密文保護),保護 了強勢方的數據安全。
(3)強勢方可以獲得 PSI 交集,但是無法判斷哪些 樣本屬於真實 ID 交集。
(4)在實際場景中,當弱勢方和強勢方數據量之 比在 1:100 時,只需要取真實交集與強勢方集合數據 量之比為 1: 10, 即可將弱勢方數據的安全性 提 升 10 倍。

斜向聯邦學習

在斜向聯邦學習場景里,參與方 A 和參與方 B 各擁有 一部分特征,且兩個參與方分別擁有一部分由兩方 PSI 獲得的交集中的樣本的標簽信息,具體參見圖。

兩方斜向聯邦學習適用的場景是聯邦學習的兩個 參與方 A 和 B 的訓練數據有重疊的數據樣本,兩方擁 有的數據特征卻不同,兩方數據特征空間形成互補,類似於縱向聯邦學習場景。 與縱向聯邦學習不同的是, 在兩方斜向聯邦學習里,參與方 A 和參與方 B 各擁有 一部分 PSI 交集里的樣本對應的標簽信息,甚至參與 方 A 和參與方 B 可能同時擁有一部分樣本的標簽信 息。

PowerFL平台

騰訊 Angel PowerFL(簡稱 PowerFL) 安全聯合計算平台是通用型隱私計算平台。PowerFL 平台提供多種隱私保 護機制,包括半同態加密、秘密分享、差分隱私、TEE 等。

其他

1、Angel 機器學習平台
騰訊AI開源項目Angel,地址

2、 Spark
Apache Spark是一個開源集群運算框架,允許用戶將資料加載至集群存儲器,並多次對其進行查詢,非常適合用於機器學習算法。

3、 Pulsar
Pulsar 是一個用於服務器到服務器的消息系統,具有多租戶、高性能等優勢。用於集群。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM