密鑰封裝和公鑰加密的聯繫和區別?

密鑰封裝和公鑰加密的聯繫和區別?

轉載&學習:https://www.zhihu.com/question/443779639

先理解下面這句話:

密鑰封裝機制是面向的互聯網應用,最大的用處是網絡連接時建立雙方的臨時會話密鑰。既然是應用就要考慮到網絡傳輸的協議,協議支持的包大小是有限制的,如果公鑰加密方案的密文較大,不便於網絡傳輸,就不能應用於實際的協議中。

可以看出密鑰封裝

  • 密文較小
  • 應用廣泛

簡易理解

問題1:是不是一個公鑰加密方案就可以實現一個密鑰封裝機制?

回答1:是的,可以用任何一個公鑰加密方案構建一個密鑰封裝機制,且可以保證相同的安全性。

問題2:既然如此,爲何還要單獨提出所謂密鑰封裝機制的概念?

回答2:因爲專門構建得到的密鑰封裝機制\(Enc\)可以變得更加高效,例如密文的長度可以更短。

問題3:是不是一個密鑰封裝機制就可以實現一個公鑰加密方案?

回答3:是的,可以用任何一個密鑰封裝機制構建一個公鑰加密方案,但在一定條件下可以保證相同的安全性。

常見的安全性定義:

  • CPA安全性(Chosen-Plaintext Security,選擇明文攻擊),簡單來說就是,攻擊者可以訪問加密預言機,獲得任意消息(包括挑戰消息)所對應的密文。

  • CCA安全性(Chosen-Ciphertext Security),即考慮多個密文的不可取分性(indistinguishable multiple encryptions),簡單來說就是,攻擊者可以訪問解密預言機,獲得除挑戰密文外任意密文所對應的明文。

    • CCA1:選擇密文攻擊,有攻擊時間要求【午餐攻擊】
    • CCA2:自適應選擇密文攻擊,任意時間攻擊

深入探究

效率

下面內容來自:Jonathan Katz和Yehuda Lindell著作《Introduction to Modern Cryptography, Second Edition》的第11.3節:混合加密與KEM/DEM範式(Hybrid Encryption and the KEM/DEM Paradigm):

img

img

其中:PKE(公鑰加密)、SKE(對稱加密)、KEM(密鑰封裝)、DEM(數據封裝,可以看成私鑰加密方案)

以上兩種混合方法的共性都是首先生成對稱密鑰, 再利用對稱密鑰加密明文, 因此效率的區別體現在第一部分。

第一種方法先選擇一個隨機的密鑰k, 再使用PKE對其加密得到c, 而第二種方法是兩步並做一步完成. 好處在哪裏呢?

如果使用PKE的方法, 第一部分密文c一定會存在密文擴張, 這是由概率加密的本質決定的, 而如果使用KEM的方法, 第一部分密文c相比k可能不存在擴張, 原因是此時c是對k的封裝, 而非加密。

綜上, 使用KEM代替PKE, 不僅能夠縮減整體密文尺寸, 也能夠提升效率(通常封裝算法要比加密算法簡單很多, 爲什麼會簡單呢? KEM是功能受限的PKE,即KEM只允許加密隨機的消息)。

關於封裝算法(KEM)通常要比加密算法(PKE)要簡單,下面舉例分析:

image-20230127145825862

安全性

KEM+DEM範式極大簡化了PKE的可證明安全

img

img

對比安全模型即可發現, 對於PKE有CPA/CCA1/CCA三個依次增強的安全性, 而KEM只有CPA/CCA兩個依次增強的安全性

最關鍵的是:在PKE中敵手A對挑戰密文c有一定的控制能力, 而KEM中c完全由挑戰者控制, 這一區別使得KEM安全證明中的歸約算法更容易設計。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章