筆記內容來自隱語Mooc,歡迎一起來學習。Mooc課程地址:https://www.secretflow.org.cn/community/bootcamp/2narwgw4ub8r...
詳細案例及代碼,可以查看文末的鏈接。
一、案例背景
-
場景描述:
- A公司(高科技企業)正在研發新型生物可降解材料,尚未公開或申請專利。
- A希望向B公司查詢該材料是否已存在於B的歷史數據庫中,以避免重複研發投入。
-
隱私挑戰:
-
A不希望B知道自己具體查詢哪種材料,否則可能導致:
- 研發方向與商業戰略泄露
- B惡意搶注相關專利
- B將查詢信息倒賣給第三方
-
-
解決方案:
- 使用隱私計算中的匿蹤查詢技術(PIR),在不泄露查詢內容的前提下完成跨企業數據查詢。
二、技術簡介:PIR(Private Information Retrieval)
- 定義:一種保護用户查詢隱私的技術,允許用户從數據庫中查詢特定數據,而不讓數據庫持有方知道用户查詢的是哪一項。
-
分類:
-
按服務器數量:
- 單服務器PIR
- 多服務器PIR
-
按查詢類型:
- Index PIR:按索引查詢,輸入索引
i,獲取值V_i - Keyword PIR:按關鍵詞查詢,輸入關鍵詞
K_i,獲取值V_i(本案例採用)
- Index PIR:按索引查詢,輸入索引
-
三、數據集與角色
| 角色 | 文件 | 説明 |
|---|---|---|
| 企業B(server) | db.csv |
模擬數據庫,含 key 和 value 兩列 |
server_secret_key.bin |
PIR 中使用的密鑰文件 | |
| 企業A(client) | pir_query.csv |
待查詢的記錄文件,一列 key,一行取值 |
四、實驗流程(PIR執行步驟)
-
環境配置
- 獲取可用端口並配置
ray-fed環境 - 再次獲取端口並配置
spu運行環境
- 獲取可用端口並配置
-
Server端初始化
- Server執行PIR的 setup階段,準備查詢所需的加密結構與密鑰
-
雙方協同查詢
- Client與Server共同執行 online階段
- Client獲得查詢結果,且Server無法得知Client查詢的具體內容
五、技術應用價值
- 實現企業間數據查詢的隱私保護,防止查詢意圖泄露
- 適用於研發查詢、知識產權檢索、商業合作調研等敏感場景
- 推動企業間在保護商業秘密的前提下開展數據協作
六、與前兩案例對比
| 方面 | 新冠重病預測(橫向聯邦) | 金融風控建模(縱向聯邦) | 跨企業查詢(PIR) |
|---|---|---|---|
| 場景 | 醫療聯合建模 | 金融風控建模 | 企業數據查詢 |
| 數據分佈 | 樣本切分 | 特徵切分 | 一方持有數據庫,一方發起查詢 |
| 隱私目標 | 保護樣本數據 | 保護特徵數據 | 保護查詢意圖 |
| 核心技術 | 橫向聯邦學習 | 縱向聯邦學習 | 匿蹤查詢(PIR) |
| 適用場景 | 跨機構樣本協作建模 | 跨機構特徵協作建模 | 隱私保護的數據檢索 |
七、關鍵啓示
- PIR是隱私計算中查詢隱私保護的代表性技術,適用於“查而不露”的場景
- 在企業合作、研發檢索、合規查詢等場景中具有重要應用價值
- 隱私計算技術正逐步形成覆蓋聯合建模、安全查詢、統計分析等全場景的技術體系
説明:本案例展示了隱私計算在跨企業數據查詢中的實際應用,突顯了在保護查詢方意圖的前提下實現安全檢索的技術可行性,為企業間敏感數據協作提供了新的解決思路。
隱匿查詢案例説明及源碼