天天看點

《A Graduate Coursse in Applied Cryptography》Chapter 11 Public key encryption【本篇未完結ing】

原文教材 與 參考資料:

        Boneh Dan , Shoup Victor . A Graduate Course in Applied Cryptography[J].

        該書項目位址(可以免費擷取):http://toc.cryptobook.us/

        部落格為對該書的學習筆記,并非原創知識,幫助了解,整理思路。

11.4 Encryption based on a trapdoor dunction scheme 

本小節該書介紹了如何使用陷門函數在随機谕言機模型下構造一個語義安全的加密方案。

廢話不多說,該給給出的方案如下:

《A Graduate Coursse in Applied Cryptography》Chapter 11 Public key encryption【本篇未完結ing】
  • 該加密方案使用陷門函數的秘鑰生成算法作為一個本方案秘鑰生成算法。
  • 首先加密方選擇随機數x , 用陷門公鑰Pk加密随機數x得到y , 然後計算x的哈希值k , 最後使用對稱加密算法以k作為密鑰對消息m進行加密得到部分密文c, 輸出(y , c)作為對m的最終加密結果密文。
  • 當接受方具備一個陷門私鑰sk, 并收到密文(y,c)時,解密算法運作如下,首先使用sk解密y得到x,進一步,計算x的哈希值得到對稱秘鑰,最終使用對稱算法得到消息m。

安全性證明:

這裡是在随機谕言機模型下對該方案具備SS-CPA安全性進行證明,加密方案中的哈希函數作為一種随機谕言機O出現,挑戰者在加密時需要使用哈希函數H時将直接向随機谕言機發起詢問,由随機谕言機來回答哈希詢問。并且,挑戰者和敵手都能具有通路該随機谕言機的權限。

故,綜合上述内容,該方案應該具備以下的安全屬性(安全定理):

《A Graduate Coursse in Applied Cryptography》Chapter 11 Public key encryption【本篇未完結ing】

上述定理的來源,或者說為什麼要如此定義安全性?

本質上我們在描述一個方案是安全的時候,其實我們說的是該方案每一個元件是安全的并且組合起來在某些已經公知的模型中也是安全的,這才是可證明安全。這裡要和UC安全區分來看,UC注重的是每個元件之間的通用可組合,而安全規約這裡注重的是在現有的安全模型下保持安全性。

首先,該方案是在随機谕言機模型下證明的,其中哈希函數此時被處理為一個随機谕言機,那麼此時哈希函數的安全性已經被理想化,此刻,如果存在該單項陷門函數與語義安全的對稱加密方案,那麼該方案亦是語義安全的。

進一步,從挑戰遊戲上來說,如果存在一個SS敵手A在随機谕言機模型下能夠攻擊該方案,那麼存在一個SS敵手B1可以攻擊其中語義安全的對稱加密方案,以及一個SS敵手B2能夠攻擊該陷門函數,其中B1,B2均可以調用A作為自己的子程式。

證明思路:有了上述的分析,證明思路更加清晰了,首先構造基于随機谕言機的Game,然後給出基本的敵手優勢描述,進一步,在證明時将随機谕言機處理成為一個可以查詢的表格結構,并使用Difference lemma (該引理的重要之處在于将兩個不同分布的遊戲放到同一個機率空間下)。