Ofb

輸出回饋 (OFB) 模式下重複加密塊的機率

  • July 2, 2012

輸出回饋 (OFB) 模式下是否存在重複加密塊的機率/機會?是否有任何現有的文件/研究?如果存在,能否請您提供該文件的連結,我想仔細分析一下,我找不到有關在 OFB 中重複加密塊的機率的一些文件,也許它存在但很難找到.

好吧,如果分組密碼被建模為隨機 $ N $ 位排列(即,從集合中的每個排列 $ 2^N $ 位模式本身同樣可能),那麼答案真的很簡單(而且這個答案是準確的):我們將在其中重複一個塊的機率 $ M $ 輸出正是 $ (M-1) 2^{-N} $ (為了 $ 0 < M \le 2^N+1 $ ).

這背後的原因非常簡單。首先,當我們考慮序列時 $ X, P(X), P(P((X)) = P^2(X), P^3(X), … $ ,我們看到第一對重複元素必須包含起點 $ X $ . 原因如下:如果我們有一對 $ P^i(X) = P^j(X) $ 為了 $ i, j \ne 0 $ ,那麼我們有 $ P^{i-1}(X) = P^{j-1}(X) $ (記住, $ P $ 是一個排列,也就是說,如果 $ P(A)=P(B) $ , 然後 $ A=B $ ),所以如果我們有一對 $ i,j \ne 0 $ ,那不可能是第一對。

現在,讓我們計算條件機率,如果我們在之後沒有重複 $ M-1 $ 輸出,我們得到一個重複 $ M $ 輸出。現在,在我們循環之後 $ M-1 $ 輸出,有 $ 2^N - (M-1) $ 我們之前沒有生成的輸出和 $ 1 $ 我們擁有的輸出可能會在下一步中生成(根據上一段中的推理,我們生成的其他輸出是不可能的)。如果我們已經指定 $ (M-1) $ 一個排列的輸出,其餘可能的輸出是等機率的,因此我們生成一個會產生重複的輸出的機率是 $ 1 / (1 + 2^N - (M-1)) = 1/( 2^N-M) $

現在,我們將在 step 生成第一個重複的機率 $ M $ 是我們在之後不會產生重複的機率 $ M-1 $ 步驟,然後重複步驟 $ M $ . 這是:

$ Prob(M) = (2^N-1)/2^N \cdot (2^N-2)/(2^N-1) \cdot … \cdot (2^N-M) / (2^N-M+1) \cdot 1 / (2^N-M) = 1/2^N $

也就是說,我們將在恰好之後得到重複的機率 $ M $ 步驟是獨立的價值 $ M $ (只要它在範圍內)。

因此,我們會在之後重複的機率 $ M $ 步驟(或更早)只是我們將在之後生成第一次重複的機率的總和 $ k $ 步驟 $ 1 < k \le M $ , 那就是 $ (M-1)/2^N $ .

如果你堅持一個連結,你可以看看這個;這使用不同的邏輯來得出相同的結果。

如果不能將分組密碼建模為隨機排列(或隨機偶數排列;該答案僅在 $ M=2^N $ 案例),好吧,我不知道任何具體的研究;這可能取決於特定的分組密碼,以及它與隨機排列的區別。

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