MPC 上的 Beavers Triple Vs BGW 乘法
通常,對半誠實的對手安全的 MPC 協議建議使用 Gennaro 等人修訂的 GMW 乘法協議。對於 SPDZ、VIFF 和 Oralndi 等協議更喜歡使用眾所周知的 Beaver 乘法三元組的主動攻擊者而言,情況並非如此。
我的問題如下:
鑑於我可以使案例如 VSS 來提供針對 Shamir 的情況下的活躍對手的安全性,為什麼 Beavers 是首選方法的三倍。是不是因為隨機因素 $ (a,b,c) $ 可以預先計算(離線),因此我會有一個更快的乘法協議,因為在這個安全模型下可以使用 PRSS 之類的東西?
是的,在離線階段預處理 Beaver 三元組會導致更快的線上階段。與門的線上階段只需要兩個開口加上局部計算。
但也有其他優點。定義“線性表示” $ [x] $ 以任何方式表示/分配價值 $ x $ 具有以下屬性的各方之間:
- 對手的看法 $ $ 獨立於 $ x $ .
- 給定 $ $ 和 $ [y] $ , 可以計算 $ [x+y] $ 僅通過本地計算。
- 給定 $ $ 和 $ c $ , 可以計算 $ [cx] $ 僅通過本地計算。
- 有一個打開的協議 $ $ 揭示 $ x $ ,即使存在對手(可以為任何對抗模型製定)。
例如,Shamir 秘密共享是一種可能的線性表示,可以抵禦半誠實的對手。
如果您假設一個設置階段,在該階段各方獲得許多海狸三元組 $ [x],[y],[xy] $ 在隨機輸入上,以及許多隨機 $ [r] $ ,那麼您可以以非常直接的方式進行 MPC。
這個製作 MPC 協議的方法很有吸引力,因為您只需定義適當的線性表示並插入。這就是 SPDZ、MiniMAC、BDOZ 等所做的(當然還有其他優化)。
特別是,這些協議使用線性表示,可以防止*不誠實的多數。*如果您在離線階段使用計算假設,那麼您實際上可以生成這樣的 Beaver 三元組。如果您只是堅持 VSS 範式,那麼您將無法獲得針對不誠實多數的安全性。
為了更好地介紹這種 MPC 範式(抽象線性表示 + 預處理的 Beaver 三元組),我推薦2015 年 Bar-Ilan 冬季學校的 Claudio Orlandi 和 Ivan Damgaard 的影片講座。