Encryption

隨機與固定填充

  • September 22, 2014

關於各種填充方案的優缺點是否有任何共識(即是否有任何研究結果)?

一般來說,似乎有兩種:

  • 隨機填充,例如用隨機數據填充的 ISO10126
  • 固定填充,如 PKCS5/7 和 X.923,用 0 或某些固定模式填充

有什麼理由更喜歡其中一個嗎?

在我的另一個問題中,有人提到隨機填充可能容易受到潛意識消息的影響,但該答案通常不包括填充。

通常,我們現在使用固定填充或流操作模式,例如 CTR。

身份驗證標籤通常用於驗證完整性/真實性。身份驗證標籤的範例是通過在密文和附加數據(如 IV)上計算 MAC 或 HMAC 而創建的標籤。通常已知的明文(包括填充)不應用於驗證完整性/真實性。

認證密碼​​結合了使用相同密鑰的操作模式和認證方案。他們中的許多人應用 CTR 模式加密而不是需要(內部)填充的模式。

如果需要填充,則應首選 PKCS#7 填充,因為它似乎是已定義標準中的臨時標準。基本上,您不應該在填充上綁定任何安全聲明(除非您的特定協議中不可能有潛意識通道)。

固定填充容易受到已知的明文攻擊。如果攻擊者知道某些明文值總是相同的,那麼他們就可以執行這樣的攻擊。

隨機填充不會導致這種攻擊。

引用自:https://crypto.stackexchange.com/questions/19249