Homomorphic-Encryption
用於兩方案件的 SPDZ
存在用於兩方計算的協議,例如使用布爾電路的 GMW。我還可以使用 Paillier 和算術電路進行 2 方計算。然而,在閱讀了 SPDZ 之後,我的理解是我可以用它來進行 2 方計算。我的理解正確嗎?除了我必須生成大量三元組之外,將 SPDZ 用於 2-PC 是否還有其他缺點?如果是這種情況,為什麼不廣泛使用 2 方案例?使用 SPDZ 時,我應該支持 3 方設置而不是 2 方設置嗎?
你的理解是正確的。SPDZ 協議可用於任意數量的兩方或多方。事實上,這也是 SPDZ 協議的優勢之一。即,最近的許多安全計算協議,例如各種版本的 Yao 協議或 TinyOT 協議,都僅限於兩方。因此,有時可能會過分強調 SPDZ 超越了兩方。
與三方相比,僅使用兩方的 SPDZ 沒有任何缺點。在兩方情況下,某些方面(例如所需的廣播)實際上變得更簡單。因此,您永遠不應該嘗試添加超出您需要的其他方,這只會降低您的應用程序效率。
但是,在選擇安全計算協議時需要考慮許多權衡。因此,在兩方設置中選擇 SPDZ 以外的其他協議可能有充分的理由。例如,SPDZ 基於算術運算。如果您的應用程序大量使用布爾運算,則其他協議(例如基於布爾運算的 TinyOT)可能會執行得更好。此外,SPDZ 的圓複雜度與您正在評估的電路的深度成正比。Yao 對於任何電路都有恆定的回合複雜度。因此,如果您處於高延遲設置或評估非常深的電路,Yao 可能比 SPDZ 表現更好。