1. 基于游戲的安全模型
定義挑戰(zhàn)者和攻擊者之間的交互,計算敵手成功的概率,以IND-CPA為例:
2. 基于模擬的安全模型
假設存在兩個世界,一個理想世界,一個現(xiàn)實世界?,F(xiàn)實世界中,協(xié)議參與各方交互式地運行協(xié)議。在理想世界中,存在一個可信第三方,各個參與方只需把自己的輸入交給可信第三方,由可信第三方完成計算,并將結果返回給各參與方。
我們說一個協(xié)議是安全的,如果任何現(xiàn)實世界中的攻擊都可以在理想世界中被模擬,如果存在攻擊在現(xiàn)實世界中成功,那么在理想世界中也存在模擬的攻擊可以成功,但是消息通過安全信道發(fā)送,計算由可信方執(zhí)行,因此在理想世界中不能實施成功的攻擊,從而在現(xiàn)實世界中攻擊也不能成功。所以,現(xiàn)實世界中的攻擊手段少于等于理想世界。也就是說,現(xiàn)實世界至少和理想世界一樣安全。而理想世界的安全性顯而易見,因為這是由可信第三方保證的,所以我們通過這種方式刻畫協(xié)議的安全性。
3. 獨立運行安全的不足
如果協(xié)議是獨立運行的,即環(huán)境中只有該協(xié)議在執(zhí)行,那么我們稱其為 stand-alone。如果一個協(xié)議在獨立運行的情況下是安全的,并不能說明在組合執(zhí)行的情況下,其也是安全的。甚至可以構造一些流氓協(xié)議,破壞原始協(xié)議的安全性。此外,即使同一個協(xié)議的多個實例并行運行,也不一定能夠保證安全性。
其中,協(xié)議π是一個輸入為n比特的密鑰的安全協(xié)議,用戶們共享2n比特的密鑰k=k1k2
協(xié)議π1:用戶公開k1,使用k2作為密鑰執(zhí)行協(xié)議π
協(xié)議π2:用戶公開k2,使用k1作為密鑰執(zhí)行協(xié)議π
協(xié)議π1和π2同時執(zhí)行后,就不再安全。
4. UC安全
2001年,Canetti提出了通用可組合安全(Universally Composable Security,以下簡稱為UC安全)的概念。它的最優(yōu)秀的性質(zhì)就是一種模塊化設計思想:可以單獨設計協(xié)議,只要協(xié)議滿足UC安全,那么就可以保證它和其它協(xié)議并行運行的安全。UC安全模型使得對任意密碼協(xié)議有統(tǒng)一和系統(tǒng)的描述,使得復雜協(xié)議分析變得簡單。
·UC框架定義了 現(xiàn)實環(huán)境 (real world),現(xiàn)實環(huán)境描述協(xié)議的真實運行情況,其中所有參與者在真實敵手A存在的環(huán)境下運行真實協(xié)議。
·UC框架定義了 理想環(huán)境 (ideal world),用來描述密碼協(xié)議的理想運行情況。在理想環(huán)境下,存在虛擬參與者、理想敵手S和理想函數(shù)F。參與者間以及敵手S與參與者不直接通信,所有參與者和敵手S均與理想函數(shù)交互。理想函數(shù)本質(zhì)上是一個不可攻陷的可信角色,用來完成密碼協(xié)議所需的理想運行環(huán)境下滿足安全需求的理想功能。
在UC框架中,環(huán)境Z用來模擬協(xié)議運行的整個外部環(huán)境(包括其它并行的協(xié)議、攻擊者等)。Z可以與所有的參與者以及攻擊者A和S直接通信,不允許直接訪問理想函數(shù)F。
協(xié)議設計者按照如下步驟來構造更為復雜的協(xié)議。
1.設計一個“高層的”協(xié)議來安全地解決復雜任務,并假設其中用到的子任務可以安全地執(zhí)行;
2.設計UC安全的協(xié)議來完成子任務;
3.通過將通UC安全的子任務插入到“高層”協(xié)議中來獲得一個完整的協(xié)議。
設計一個比較復雜的協(xié)議的時候,我們就有了一個強力的工具幫助實現(xiàn)模塊化的設計,首先從底層開始設計一個個UC安全的子協(xié)議,然后一層層地都用UC安全定理進行組合,那么就可以保證整個系統(tǒng)的安全性,而且如果系統(tǒng)的協(xié)議最項層依然保證UC安全的話(也就是說,它也能安全實現(xiàn)某個理想功能),整個系統(tǒng)就都是一個安全的模塊,可以供更復雜的系統(tǒng)直接調(diào)用。
已有的一些理想函數(shù):安全通信,公鑰加密,兩方計算和多方計算等。
-
密鑰
+關注
關注
1文章
138瀏覽量
19754 -
模擬器
+關注
關注
2文章
875瀏覽量
43208
發(fā)布評論請先 登錄
相關推薦
評論