Encryption

無需身份驗證的 AES-CBC 加密的適當案例範例?

  • February 23, 2017

通過研究 crypto.stackexchange.com 上的問題和答案,我學到了很多東西,並感謝這個社區。

最近在這個問題中,如果沒有為填充預言攻擊提供防禦,AES in CBC Mode Is完全不安全,對吧?我了解到 CBC 對於選擇的明文攻擊是安全的,即使它(本身)對選擇的密文攻擊或填充預言攻擊並不安全。這對我來說很有意義。

根據我目前所了解的情況,我認為沒有任何情況下使用 CBC 加密模式是明智的,除非它與某種身份驗證算法(如 HMAC)配對。但從上面連結問題的答案中,我得到的印象可能不是這樣,並且在某些情況下這種使用可能是合理的。

什麼是使用 CBC 模式加密(例如 AES-CBC)而不將其與驗證配對的具體範例是適當且合理的選擇?

全盤加密只是靜態數據加密的一個例子。對於這種用法,如果只需要保密,CBC 就足夠了。如果使用者只是想隱藏某些內容,例如非法下載的電影,通常會出現這種情況。在這種情況下,您不在乎是否有人可以更改密文,您只想確保沒有人發現加密的內容(可能會洩露文件的大小,順便說一下,對於如此大的文件來說,這可能是非常獨特的)。

勒索軟體也是如此。如果勒索軟體對文件進行了加密,那麼合法所有者可以隨心所欲地篡改加密文件;數據只會被進一步破壞。在這種情況下,我假設沒有填充 oracle 攻擊,我假設受害者只是獲得了一個帶有私鑰的應用程序來解密文件,而不是受害者發送文件來解密。無論如何,這是實現它的一種方法。

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