《1-1 可證明安全的隱私計算.pdf》由會員分享,可在線閱讀,更多相關《1-1 可證明安全的隱私計算.pdf(25頁珍藏版)》請在三個皮匠報告上搜索。
1、可證明安全的隱私計算洪澄 阿里安全雙子座實驗室|01隱私計算的安隱私計算的安全性與效率全性與效率020304總結總結目錄目錄 CONTENT|其他可證明其他可證明安全方法安全方法密碼學中的可密碼學中的可證明安全簡介證明安全簡介隱私計算:Privacy-preserving computation視隱私保護程度的不同,計算的效率也有所不同例:廣域網下,多方合作訓練一個LR模型,1024行64列,迭代1次SecureMLSP17需要100秒ABY3CCS18需要0.3秒BlazeNDSS20需要2秒HelenSP20需要15分鐘Q Q:“請問現在隱私計算能做到比明文慢多少倍?”A A:|只有同時給
2、出安全性和效率兩方面的數據,才是有意義的數據業界現狀:計算的效率是容易衡量的,各家PR都擅長此道安全指標則甚少有廠商主動提及客戶有如盲人摸象“比明文僅慢X倍”,X已經從3個量級來到2個量級,甚至3-5倍都有之看不見看不見摸不著摸不著看得見看得見摸得著摸得著安全性:安全性:效率:效率:|最高級安全性的代價太高不需要最高級安全性的場合,可以適當降低安全性以提升效率但是一定要厘清安全性在哪里進行了取舍,有什么樣的風險如何講清楚一個方案的安全性?明確定義安全假設:能防什么樣的攻擊者,不能防什么樣的攻擊者明確定義防護效果:有沒有中間信息泄露若有,應清晰的描述泄露內容“我的方案是安全的”“我的方案是安全的
3、”“我的方案在雙方都是半誠實“我的方案在雙方都是半誠實的假設下,除了數據行數、列的假設下,除了數據行數、列數、最終建模結果之外,沒有數、最終建模結果之外,沒有其他信息泄露”其他信息泄露”|反例:Dragon in my garage 安全性需要正向定義:需要描述“龍”到底能在什么環境下做到什么,才有辦法證明它的存在我的倉庫里有一條噴火龍我的倉庫里有一條噴火龍Q Q:你的龍為什么看不見?:你的龍為什么看不見?A A:因為它是透明的:因為它是透明的Q Q:你的龍為什么沒有腳???:你的龍為什么沒有腳???A A:因為它是飛著的:因為它是飛著的Q Q:你的龍為什么摸不著?:你的龍為什么摸不著?A A:因
4、為它是等離子態的:因為它是等離子態的我有一個隱私計算解決方案我有一個隱私計算解決方案Q Q:你的方案可能會泄露:你的方案可能會泄露XXXX統計信息?統計信息?A A:我們認為:我們認為XXXX統計信息不影響方案的安全統計信息不影響方案的安全性性Q Q:你的方案需要額外的第三方?:你的方案需要額外的第三方?A A:我們認為只要嚴格審計是可以接受第三:我們認為只要嚴格審計是可以接受第三方的方的Q Q:你們的自研算法有嚴格的安全證明嗎?:你們的自研算法有嚴格的安全證明嗎?A A:有專利,論文還在投稿中:有專利,論文還在投稿中|01隱私計算的安隱私計算的安全性與效率全性與效率020304總結總結目錄目
5、錄 CONTENT其他可證明其他可證明安全方法安全方法密碼學中的可密碼學中的可證明安全簡介證明安全簡介|可證明安全:密碼學領域評估安全性的黃金準則兩種安全證明方式基于游戲的證明方式基于模擬的證明方式我從bob給我的信息中無法區分他用的是哪個原始數據data1data2Bob給的這些信息和模擬器給的是不可區分的data|基于游戲的證明方式舉例:PaillierAlice選擇 m0,m1Bob選擇 c Enc(m0),Enc(m1)Alice猜測c的明文,猜對則贏得游戲密鑰生成:生成兩個大質數p,q,n=p*q,=lcm(p-1,q-1),g=n+1g,n是公鑰,是私鑰加密m選擇隨機數r,計算c=
6、gm*rnmod n2m0m1c=gc=gmm*r rn nmod nmod n2 2這個c加密的到底是m0還是m1?|反證法:假設Alice能以不可忽略的優勢(50%的概率)贏得游戲設Alice能成功判斷出c是m0的密文,因為d=c*g-m0=rnmod n2,所以她也能判斷出d是一個n次冪而判別一個數是不是mod n2 上的n次冪,這個問題稱為DCR問題(decisional composite residuosity problem),目前認為是困難的,與大數分解接近矛盾,證畢你如果能贏得游戲,就能去破解XX數學難題了|公開g基于模擬的證明方式舉例:OT隨機選擇a,s隨機選擇r0,r1c
7、0=gr0,H(h0r0)x0c1=gr1,H(h1r1)x1c0,c1xb=H(grb)a)cb2hb=ga,h1-b=s 我想得到我想得到x xb b我擁有我擁有x x0 0和和x x1 1|Real vs Ideal(半誠實模型)隨機選擇r0,r1 c0=gr0,H(h0r0)x0c1=gr1,H(h1r1)x1c0,c1x0=H(gr0)a)c02h0=ga,h1=s 隨機選擇a,s隨機選擇t0,t1,t2 c0=gt0,H(h0t0)x0c1=gt1,t2c0,c1我無法區分哪我無法區分哪個是真實的個是真實的BobBob,哪個是,哪個是模擬器模擬器Real WorldReal Wor
8、ldIdeal WorldIdeal Worldh1r1與隨機數不可區分(DDH)|惡意模型下,基于模擬的證明更加復雜|Step 1:證明每個底層模塊的安全性只有每個模塊都安全,才可以討論整體方案的安全Step 2:判斷模塊的運行方式模塊之間是串行運行:方案滿足可證明安全因為證明是sequential composable的模塊之間不是串行運行:則還需要相關模塊滿足UC(universal composable)特性一般的PPML任務可認為是串行的,不必考慮UC問題如何證明方案的安全性?|算法在xxx步驟使用了Paillier同態加密,Paillier可證明安全,所以算法是安全的需要算法中所有
9、的模塊都是可證明安全例:某個模塊直接把中間結果發回去解密只要不能反推原始數據,就是安全的有的泄露一開始認為不可反推,后來發現可反推例:Deep leakage from gradients有的泄露是原始數據的一個函數約束雖然不可直接反推原始數據,但可以間接反推例:泄露了張三的年齡+工資=25000一些錯誤的打開方式密文密文中間密文中間密文我具有解密能力可證明可證明安全安全安全性未安全性未知知|01隱私計算的安隱私計算的安全性與效率全性與效率02密碼學中的可密碼學中的可證明安全簡介證明安全簡介0304總結總結目錄目錄 CONTENT其他可證明其他可證明安全方法安全方法|Q:這些證明太難學了,還有
10、別的方法可以證明隱私計算方案的安全性嗎?A:好消息:有別的方法壞消息:也很難|差分隱私 Differential PrivacyAlice從Bob的信息中難以知曉任意指定行的信息推論:Bob數據集里所有的行都得到了保護特征特征1特征特征2張三xxxxxx李四xxxxxx王五xxxxxx特征特征1特征特征2李四xxxxxx王五xxxxxx我從Bob發的信息里很難判斷數據集里有沒有張三m1m2mm1 1和和mm2 2的統計分布非常接近:的統計分布非常接近:PrPrmm1 1=x=x e e*PrPrmm2 2=x=x|例:DP-SGDClip,aggregate,then add noiseNoi
11、se值與每條記錄算得梯度的最大值(args.max_grad_norm)有關TensorFlow Privacy集成了相關算法可以容易的用于橫向分割的聯邦學習|DP不僅可以用在FL,也可以用在MPC例:1 使用DP保護PSI中的桶內元素數目,以降低padding,提高PSI性能|1:Cheaper Private Set Intersection via Differentially Private Leakage,PETS19DPDP挑戰挑戰1 1:DPDP會大幅影響數據分析的準確率會大幅影響數據分析的準確率Google:Toward Training at ImageNet Scale w
12、ith Differential Privacy|縱向分割方面的研究不多而縱向是國內隱私計算的主流應用場景有待從業者投入研究DPDP挑戰挑戰2 2:目前:目前DP+DP+隱私計算的研究集中在橫向分割隱私計算的研究集中在橫向分割特征特征3特征特征4張三xxxxxx李四xxxxxx王五xxxxxx特征特征1特征特征2張三xxxxxx李四xxxxxx王五xxxxxxmAlice已經知道了我有張三的數據,我需要保護的是特征3和特征4|01隱私計算的安隱私計算的安全性與效率全性與效率020304總結總結目錄目錄 CONTENT其他可證明其他可證明安全方法安全方法密碼學中的可密碼學中的可證明安全簡介證明安全簡介|基于游戲/模擬的證明方式目標是刻畫信息的泄露邊界基于差分隱私的證明方式目標是防止信息重識別到單條記錄呼吁隱私計算業界做好安全證明,讓方案的安全性看得見,摸得著總結:隱私計算領域公認的兩種可證明安全方法總結:隱私計算領域公認的兩種可證明安全方法|可證明安全可證明安全效率效率THANKS|