多於兩方的安全計算的定義
在關於半誠實對手的 m 方案例中的安全計算定義(密碼學基礎:第 2 卷,基本應用中的定義 7.5.1,Oded Goldriech 的定義)中,我們說協議Π $ \Pi $ 如果存在模擬器S $ S $ 是安全的,例如對於模擬的每個I⊂[m]={1,2,…,m} $ I\subset [m] = {1,2,…,m} $ 輸出和VIEWΠI $ VIEW^\Pi_I $ 是無法區分的。
我不明白為什麼只為每一方p\in{1,2,…,m}(而不是任何一方的子集)建構一個模擬器是不夠的。 除了量詞的順序對我來說似乎也很困惑。腳註中提到(第 697 頁):p∈1,2,…,m $ p\in{1,2,…,m} $
請注意,對於固定的m $ m $ ,反轉量詞的順序可能同樣有意義(即,要求“對於每個I $ I $ 都存在一個算法SI $ S_I $ ”)。
“可能很有意義”是什麼意思?量詞的原始順序對我來說沒有意義,但相反。(相反的順序似乎就像兩方案件的定義。)
我將不勝感激:
1)解釋(可能包括簡單的例子),讓我直覺地了解為什麼以這種方式定義安全性。
- 好的參考建議(幾乎和Yehuda Lindell 的教程一樣好)作為多方案例中的安全證明範例。
僅僅能夠模擬單方的觀點是不夠的,因為腐敗的各方可能會合作。正如書中提到的,將所有被破壞的各方視為一個實體可能更容易。我們必須模擬的是這個單一實體的視圖。
如果m $ m $ 是固定的,量詞的順序無關緊要,因為子集I $ I $ 的數量是固定的,因此單個模擬器S當然可以為每個IS $ S $ 合併模擬器S_I的程式碼(因為S給定I,它知道哪個S_I作為子程序執行)。SI $ S_I $ I $ I $ S $ S $ I $ I $ SI $ S_I $
*(在評論後編輯。)*如果m $ m $ 不固定,這可能是不可能的(例如,如果m $ m $ 隨著安全參數呈多項式增長,則子集的數量呈指數增長),因此您會得到兩個可能不同的定義,具體取決於量詞。具有單個模擬器的那個更強大(如果有一個可以生成有效視圖的模擬器,那麼很容易有一系列模擬器可以,但反過來不行),所以它就是使用的那個。在實踐中,沒有已知的協議對於第一個定義是安全的,而不是對第二個定義是安全的。