《A Graduate Course in Applied Cryptography》Chapter 12 Chosen ciphertext secure pkc(4)finish
原文教材 與 參考資料:
? ? ? ? Boneh Dan , Shoup Victor . A Graduate Course in Applied Cryptography[J].
? ? ? ? 該書項目地址(可以免費獲取):http://toc.cryptobook.us/
? ? ? ? 博客為對該書的學習筆記,并非原創知識,幫助理解,整理思路。
?
12.6? CCA security via a generic transformation
本節主要描述的是一個自然的將CPA方案轉換為CCA方案的方法,成為Fujisaki-Okamoto transformation, 這個轉換技術允許有效的將一個公鑰加密方案(即使安全性弱于CCA),轉換為一個CCA安全的加密方案在隨機諭言機模型下。當然,目前存在不依賴于隨機諭言機的轉換方案,但是我們需要注意的是存在不依賴于隨機諭言機的轉換方法,但是那些方法目前效率較低。
Fujisaki-Okamoto技術亦可以將部分基于格的方案,基于編碼的方案與NTRU方案轉換為CCA安全的,在隨機諭言機模型下。
The Fujisaki-Okamoto transformation?
該技術允許從單向概率公鑰加密方案構造一個單向陷門函數協議(即使有像諭言機),我們可以將FFO嵌入到TDF with 1CCA cipher 的方案中,從而獲得一個RO-CCA的公鑰加密協議。
得到如下的方案:
? ? ? ? 加密算法:E是一個概率性算法,亦可使用一個確定性的表達方式,不過要加上隨機空間,如下所示:E(pk,x:r)。
? ? ? ? 解密算法:D是一個確定性的解密算法,不過收到錯誤密文不在返回一個終止符號,而是返回一個默認消息。
FO轉換應用于一個公鑰加密算法(CPA)的流程如下:
? ? ? ? ? ?將原始公鑰加密方案的加密算法修改一個單向陷門函數:
??
?接著就是證明新的方案滿足兩個屬性,單向性與不可預測性:
?單向性:很難從密文計算得到明文,詳細的游戲細節描述如下:
?不可預測性:對于同一個明文的加密獲得同樣密文的概率可以忽略,這將有效的降低密文的可延展性(CCA)。形式化的定義如下:
?值得注意的是,單向假設和不可預測假設都已經被語義安全所實現,非常容易將任意的公鑰加密協議轉換為一個滿足上述假設的方案,在不影響原本的單向假設下。
? ? ? ?如果U(隨機化明文的函數)可以被視作為隨機諭言機模型,并且該加密方案是單向且不可預測的,那么陷門函數協議FFO,是單向的在給于原像諭言機下,由于Fujisaki-Okamoto transformation。(這將意味著可以直接轉換為本書12.4、5節提到的基于RO-1CCA的CCA構造)。
那么,我們將得到攻擊該方案敵手的優勢如下所示:
首先,定義Game 0運行敵手A和FFO在隨機諭言機版本的陷門攻擊游戲中,進一步修改挑戰者構造Game 1,2。定義Wj 為敵手在Game j中,敵手的所有隨機諭言機請求中包含秘密值x的事件。假設敵手對自己所有的輸出都需要進行隨機諭言機請求,那么顯然,如果敵手在Game 0中的優勢如下:
? ? ? ? 在Game 0中,挑戰者必須響應敵手的隨機諭言機請求和鏡像請求。使用Map記錄隨機諭言機的的輸入與輸出,敵手可以進行任意次的隨機諭言機請求和任意次的鏡像請求。并且使用另外一個表格Pre來跟蹤敵手隨機諭言機請求,記為Pre[y] = x,用以記錄y的原像。
?Game 0:?描述如下所示:
? ? ? ? ? ?
?Game 1:修改的部分如下:
? ? ? ?將第(2)步修改為:
定義在Game 1中發生的事件為Z1,也就是說敵手提交了一個原像諭言機請求如下:
?那么,由Difference lemma 可以得到:
? ? ? ? 如果Z1發生,意味著敵手找到了一個y`,與挑戰y不相等,與之對應的原像x沒有被作為隨機諭言機請求過并且y`是一個合法的可以用私鑰sk解密的y`, 即為存在原像。對于這種情況,在Game 1中,只可能是下述兩種情況之一:
? ? ? ? 在x與其詢問原像相同的情況下,得到不同的加密值。或者,x與其詢問原像不同,r對于敵手又是獨立的,并且計算加密得到詢問y`。由單向陷門函數的加密不可預測性,得到一下不等式:
?Game 2: 與Game 1相同,除了修改原像諭言機描述如下:
? ? ? ? ? ? ? ? ??
?這里相比于Game 1不在使用私鑰sk,那么此時Game2 和 Game1 輸出相同,得到如下等式:
? ? ? ? ? ? ? ? ?Pr[W2]? ?= Pr[W1]
Game 3: 進一步, 刪除步驟 (1) 得到Game3
? ? ? ?刪除步驟1后,游戲2 和 游戲3的唯一區別為,是否有x的初始化賦值,那么只要敵手不詢問到x, W3 和 W2的是相同的,所以有:
? ? ? ? ? ? ? ??
? ? ? ? 如果在游戲3中詢問到x,那么存在敵手B可以直接調用A構造一個新的OW敵手,贏得單向陷門函數攻擊游戲,但是B想要從原像集合中找到該解也是比較困難的一件事,所以敵手只需要隨機的從原像集合中選擇一個條目作為攻擊優勢,因為在W3的條件下,敵手必然會請求到x,敵手總共會進行Qro次請求,所以W3發生的概率即為所有次諭言機請求概率求和,因為每次都是均勻隨機選擇,OWadv就是B以隨機選取一個答案贏得游戲的過程,一共有Qro次詢問次數,所以得到以下等式。得證。
?12.6.1 A generic instantiation
?給出一個通用的實際例子:
? ? ??
?
?加密解密算法如上圖所示,根據之前的通用構造我們可以立即得到:
?實際上FO轉換就是在隨機諭言機模型下利用KEM密鑰封裝機制框架,使用一個公鑰加密方案和1CCA的對稱加密方案構造了一種CCA的公鑰加密方案,并給出了通用構造證明,核心在于給KEM的公鑰引入隨機空間R保證其不可延展。
?
?
?
總結
以上是生活随笔為你收集整理的《A Graduate Course in Applied Cryptography》Chapter 12 Chosen ciphertext secure pkc(4)finish的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 邮件合并的逆向应用,从多个Word文档中
- 下一篇: 人人都是导师