數據安全與隱私計算峯會-可證明安全:學習
永遠不正面證明方案有多安全,而是證明方案可以抵抗哪些攻擊!
可證明安全
用於評估安全性的準則
分爲兩種:
1、基於遊戲的證明
以Paillier加密方案爲例:
反證法:(1)先假設可以(2)規約到困難問題
2、基於模擬的證明
模擬器只知道Bob的輸出結果 ,模擬器和Bob分別與Alice交互,在Alice看來是不可區分的,且模擬器也不知道Bob的數據,則證明該協議是安全的。
以OT協議爲例:
半誠實模型下:Alice無法區分模擬器和Bob發來的數據,則方案是安全的。
惡意模型下:
如何證明方案的安全性?
1、如果方案中的每個模塊是串聯的,則證明每個模塊是安全的就可以證明方案是安全的。
2、若方案中的每個模塊是並聯的,則需要使用UC安全證明方案
比如一些錯誤的說法:
(1)方案中用到了Paillier加密,就說方案是安全的。
(2)只要不能反推原始數據,方案就是安全的。
除了基於密碼學的可證明安全方法
1、差分隱私(DP)
在聯邦學習中的應用:DP-SGD,加入噪音後,使得總體分佈影響不大
在MPC中的應用,通過DP向hash表中填充空的位置,性能提升:
DP的問題:爲了安全加入噪音,但會影響方案的準確率,所以在大規模數據訓練時使用DP很有挑戰性。
在縱向聯邦中使用DP有挑戰性。
總結
(1)基於模擬的安全性證明目前在MPC協議中使用的更多。
(2)半誠實模型的證明比較簡單,惡意模型的證明比價複雜
(3)UC安全證明要求更高
參考:https://www.cnblogs.com/pam-sh/p/16383012.html
(4)MPC主要的瓶頸是通信