通用協議(三)--- 兩方安全計算

兩方安全計算的情形

在本節中我們主要定義兩種模型敵手下的安全,在所有的這兩個模型中,敵手都是非適應的並且是計算有界的,並且存在輔助書輸入。下面的主要內容如下:
1.考慮一個半誠實的模型。
2.繼續考慮惡意的敵手。

兩方安全計算框架

一個兩方協議問題可以被描述爲一個隨機的過程,將一對輸入映射到一對輸出,我們更傾向於定義這個描述爲函數體(functionality)
,也就是說對於任意的一對輸入(x, y) ,都會有一對隨機的輸出值 f(x,y) 。 第一方持有輸入x , 希望獲得函數 f(x,y) 中的第一個輸出,同樣的第二方,持有數據y, 它希望獲得函數 f(x,y) 中的第二個輸出。下面要主要介紹幾種有趣的內容:

Symmetric deterministic functionalities: 對稱的確定性函數功能,這是在論文中經常提出來的一種最爲簡單的通用模型,在這個例子中,我們預先假定一個函數功能,g, 參與的雙方都想要獲得函數g 中根據輸入計算得到的數據。也就是說,希望安全的計算 f(x,y) = (g(x,y) , g(x,y)) 。

Input-oblivious randomized functionalities:輸入不經意隨機函數功能,例如兩方想要獲得一個隨機的字符串,但是其中的每一方都不能通過自己影響輸出。

Asymmetric functionalities:不對稱的功能,一個特殊的例子是,一方需要獲得一些預定的信息根據另一方的祕密輸入,後者的祕密對於第一方的輸入信息。即爲,如果能夠達到驗證效果v(x,y)=1 那麼就展示預定信息的過程,否則終止這個過程。就是說如果有兩方,P1 和 P2 ,P1 需要知道 f 函數的相關信息根據P2 的輸入,並且這個輸入是可以驗證的,那麼這個函數就定義爲爲 f(x,y) = (R(y), perix) 當且僅當 Verify(x,y) = 1 通過時,才計算R(y) , 否則終止,我覺得這是非常合理的一種設計,因爲兩方達成一致必須由兩方全部參與,而不應該由一方決定,就是爲什麼多方參與的簽名協議或者加密協議,總是伴隨着各種驗證技術的存在。

兩方安全計算中的一些簡化約定

假設1:協議能解決的問題一定是輸入相同長度的問題。
假設2:函數功能必須在輸入長度的時間多項式下可以計算。
假設3:安全的定義是很久輸入的長度衡量的。

這三個假設每一個都表示一個需要解決的根本性問題。

第一種假設,很明顯沒有限制兩方輸入長度關係時不允許存在安全的協議對於任何“非退化”的功能,原因是每一方的程序必須依賴於自己的輸入長度或者獲取對方輸入的長度。如果後者的類型的信息沒有隱含在輸出值中,那麼久意味着,可以從輸出值中獲取對方的相關信息,一個安全的協議不能允許這個信息泄露。(類似於安全加密的定義,要求消息必須和祕鑰長度之間是多項式關係)可以通過填充技術將消息補全。然後達到這個要求。

第二種假設,明顯的整個的安全的兩方計算協議所需要的時間不能小於直接計算功能的時間。考慮輸出長度的情況下,我們可以看到需要一個先驗的函數複雜性的界限,一種通用的方法是將這個複雜性提供給兩個參與方。所以進一步,一個通用的函數g, 存在一個時間界限t, 所有聲明函數如下:

在這裏插入圖片描述
現在安全的計算g 的問題就被規約到了安全的計算函數f 上,是多項式時間可以計算得。

第三種假設,實際上一個更一般的觀點是使用一個明確的安全參數來定義協議的安全。假設我們需要計算一個函數f, 在一對輸入(x,y) 上根據安全參數s, 即可以定義函數功能爲:
在這裏插入圖片描述
這個想法是合理的,必將在雙方計算函數的時候一定要先確定函數的安全參數達到共識。

An alternative set of conventions 一種解決方案

對於上文中提到的三種假設,解決這三種假設的一種方法就是設置一個顯示的安全參數,即定義如下:
在這裏插入圖片描述
我們可以認爲在這種情況下,協議運行的時間和安全性僅僅依賴於參數n, 並且獨立於輸入的長度。

以上內容參考《Foundations.of.Cryptography.Volume.2.Basic.Applications(Oded.Goldreich)》
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章