Public-Key

對比密鑰輪換要求:非對稱密碼與對稱密碼

  • January 18, 2016

我正在嘗試對比非對稱和對稱密碼的密鑰輪換要求。

在對稱密碼的情況下,我們得到了諸如所謂的“CBC 定理”的結果(在https://crypto.stanford.edu/~dabo/cs255/lectures/PRP-PRF.pdf的第 24 頁上說明) CBC 定理指出,對於試圖破壞 AES-128-CBC 語義安全性的“q-query”CPA 攻擊者,攻擊者的優勢小於 $ 1/2^{32} $ 除非 $ q^{2}L^{2} / \left\lVert X \right\rVert $ ,CBC 定理中的“誤差”項小於 $ 1/2^{32} $ ,即鑑於 $ \left\lVert X \right\rVert = 2^{128} $ 對於 AES-128,我們可以加密 $ 2^{48} $ AES-128 塊之後我們需要切換密鑰以保持攻擊者的優勢低於 $ 1/2^{32} $

我還沒有看到定理的證明,但我猜這樣的結果是由於分組密碼模式的安全性完全基於它們作為偽隨機函式的行為。

另一方面,機率非對稱加密方案,例如 RSAES-OAEP、ECIES 等,除了圍繞某些數論或代數問題的(計算)難度(例如 EC/DLP 的難度)的假設之外,還採用偽隨機性假設,因式分解或短向量問題等。

非對稱方案基於這種雙重假設(偽隨機性 + 因式分解等)這一事實是否減輕或擴展了此類方案中在同一密鑰下進行一定數量的加密後密鑰輪換的範圍,超出了純粹依賴所暗示的範圍? CBC 定理下的 AES-128-CBC 的情況是偽隨機性嗎?是否存在 CBC 定理的非對稱模擬,可以量化在同一密鑰下進行一些加密後賦予對手的優勢?

我還沒有看到定理的證明,但我猜這樣的結果是由於分組密碼模式的安全性完全基於它們作為偽隨機函式的行為。

另一個因素是分組密碼不是偽隨機函式 (PRF),而是偽隨機排列 (PRP)。這意味著當您接近生日界限時,您不會看到您期望從 PRF 中獲得的碰撞。這對於某些加密模式很重要。

但是,是的,即使使用 PRF,如果您在函式的輸入中發生衝突,您也會開始失去安全性,從而限制事情。

在 CBC 模式的情況下,該定理涉及兩個密文塊相等(因此輸入)的機率。當您到達生日界限時,這種情況發生的可能性很大。從這樣的碰撞中,攻擊者發現 $ p_i \oplus p_j = c_{i-1} \oplus c_{j-1} $ ,他們知道的右邊。


或者是否存在 CBC 定理的模擬,需要在同一密鑰下進行一些關鍵數量的加密後輪換非對稱加密密鑰?

是的,有類似物。

如果您談論的是純非對稱加密,例如填充的 RSA,則隨機填充有可能與較早的填充發生衝突,並且您會洩漏明文相等性。例如,如果您使用 RSA-OAEP 對相同的明文加密兩次,並且具有這樣的參數 $ x $ 位隨機性,隨機性碰撞並獲得兩個相等密文的機率為 $ 2^{-x} $ ,在這種情況下,攻擊者知道它們必須是相同的明文。

如果您使用混合加密,則同樣有可能使用的隨機對稱密鑰相等,這會將相同的明文加密為相同的對稱密文,再次洩漏相等性。

(這些不是對 RSA 的最佳攻擊,只是存在界限的一個例子。)


這是否意味著您必須輪換密鑰?並不真地。安全 RSA 大小和填充算法的實際界限足夠大,以至於您不會碰到它們。由於其他原因,有限的簽名密鑰生命週期可能是一個好主意 - 以防您失去密鑰並以防出現更好的攻擊 - 但實際上您可以加密或簽名的數據不受限制。

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