Stream-Cipher
所有流密碼都是IND-CPA嗎?
流密碼通常會生成一個偽隨機比特流,這些比特流與明文進行異或以形成密文。流是使用給定的 IV / nonce 和密鑰生成的。分組密碼的 CTR 模式通常被描述為將分組密碼轉換為流密碼。
現在眾所周知,CTR 操作模式提供 IND-CPA 安全性。Katz 在他的書中證明了這一點。
這個結果是否意味著所有流密碼都是 IND-CPA?
不。
密碼的類型和密碼的構造之間存在差異。如果密碼屬於特定類型,並且存在已知的 IND-CPA 安全結構,那麼這並不意味著完全不同的結構是安全的。存在對流密碼的已知攻擊,包括“現代”流密碼,例如 RC4。
必須正確使用流密碼才能使加密方案成為 IND-CPA 安全的。
如果生成的密鑰流是安全的,那麼明文與密鑰流的 XOR 當然也將是安全的(無論如何都要達到流密碼的指定限制)。