Protocol-Design
安全多方私有集合交集:支持多方的協議 VS 支持兩方的協議
假設黨 $ B $ 想要接收安全的多方計算 (MPC) 輸出。
有許多只支持兩方但不能支持多方的私有集合交集 (PSI) 協議。在這種情況下,黨 $ B $ 需要與派對一起執行 PSI $ A $ . 然後 $ B $ 使用結果作為輸入並執行兩方 PSI $ C $ 等等。但是,此設置會向客戶端洩露更多資訊 $ B $ ,比協議支持,多方PSI。
- 範例:讓計算為“設置交集”
假設方 $ A $ 有 $ S_{A}={1,2,3} $
派對 $ B $ 有 $ S_{B}={1,2} $
派對 $ C $ 有 $ S_{C}={2,5} $
聚會 $ B $ 在僅支持兩方接收的協議中:
1- $ K=S_A\cap S_B={1,2} $
2- $ K’=S_C \cap S_B={2} $
然後,它發現 $ K\cap K’={2} $ . 所以它得知甲方有 $ 1 $ 但丙方沒有 $ 1 $ .
相反,如果一個協議可以支持多方客戶端 B 將只學習所有集合的交集,即 $ {2} $ .
問題:多方 PSI 的實際應用(範例)有哪些?
因此,我可以使用這些範例來展示/證明支持多方 PSI 的協議(就安全性而言)比僅支持兩方的協議更好。
我認為您混淆了“應用程序”和“實現”這兩個術語,讓我解釋一下。
在您的問題中,您進行了一些安全的兩方計算(2PC),並且您表明當以“黑盒”方式使用它時,並且每一方都在每對輸入上獲得計算結果,然後協議洩漏了很多不應該洩露的資訊。這是真實的。但這並不意味著安全的多方計算 (MPC) 沒有用!它只是意味著您描述的協議(使用 2PC)正在洩漏資訊,因此它不安全!。
這個多方集合交集確實是 MPC 的應用程序,它只是沒有像你說的那樣實現,而是有一些指定的協議來實現它(不一定通過 2PC)。
我希望它能澄清事情。