Cbc
從具有不同IV但相同plantext的兩個密文中恢復AES-CBC中的私鑰
我有一個系統,它使用密鑰 K 使用 AES-CBC 為給定使用者加密消息,以響應外部刺激。每條消息都有一個隨機生成的 IV。使用者從不解碼這些消息,它們被用作不透明的令牌。
在某些情況下,馬洛里可能會觀察系統並推斷出兩條消息(M1,M2)具有相同的明文(P)。我擔心的是兩條已知具有相同明文和相同密鑰的消息,是否可以恢復 K?
E:AES-128-CBC
IV:隨機生成的 IV 一個塊大小。
IV 1 + E(K, P, IV 1 ) => M 1
IV 2 + E(K, P, IV 2 ) => M 2
如果可以恢復 K,我可以採取哪些緩解措施?例如,明文幫助中的隨機數,即:
IV x + E(K, (N x + P), IV x ) => M x
我將如何計算隨機數的大小來確定恢復的計算難度(在 P 中有一個 CRC32 來確定篡改)?
簡而言之,如果攻擊者知道 ( $ P $ , $ IV_1 $ , $ M_1 $ ) 和 ( $ P $ , $ IV_2 $ , $ M_2 $ ) 如 :
$ M_1 = E_K(P, IV_1) $
和
$ M_2 = E_K(P, IV_2) $
在哪裡 $ E_K $ 是帶有密鑰的 AES-CBC 加密函式 $ K $ 然後他什麼也學不到 $ K $ 因為 AES 可以抵抗已知的明文攻擊。只要 $ IV $ 是隨機選擇的,用相同的密鑰加密相同的消息 $ K $ 不要降低 AES-CBC 的安全性。
這是一個更長的答案:為什麼 AES 可以抵抗已知明文攻擊?