Keccak

函式的共域大小是多少G(x)=F一個(x)⊕F乙(×)G(X)=F一個(X)⊕F乙(X)G(x) = F^A(x) oplus F^B(x), 在哪裡F(x)=Keccak-f1600F(X)=凱卡克-F1600F(x)…

  • May 23, 2019

假如說 $ m $ 是一位串,其中所有位串都具有相同的長度,讓 $ D(m) $ 表示不同元素的數量 $ m $ . 那是, $ D(m) $ 等於維度_ $ m $ . 例如,如果$$ m = {00, 10, 11, 10, 11}, $$然後 $ D(m)=3 $ .

讓 $ F(x) = \text{Keccak-}f1600 $ ,SHA-3的塊置換函式(對於 $ 64 $ 位字)。我們可以定義以下符號:$$ \begin{array}{l} {F^0(x)} = x,\ {F^1(x)} = F(x),\ {F^2(x)} = F(F(x)),\ {F^3(x)} = F(F(F(x))),\ \ldots \end{array} $$

假如說 $ A $ 和 $ B $ 是大於或等於兩個不同的自然數 $ 0 $ , 讓 $ G_{A, B}(x) $ 表示定義為的函式$$ G_{A, B}(x) = F^A(x) \oplus F^B(x), $$

在哪裡 $ x $ 表示一個 $ 1600 $ -位輸入和 $ \oplus $ 表示異或運算。

假如說 $ L = 2^{1600} $ , 讓 $ S_i $ 表示一個 $ i $ - 從所有可能的集合中的第一個位串 $ 1600 $ 位輸入:

$$ \begin{array}{l} S_1 = 0^{1600},\ S_2 = 0^{1599}1,\ \ldots,\ S_{L-1} = 1^{1599}0,\ S_L = 1^{1600}.\ \end{array} $$

讓 $ A $ 和 $ B $ 表示兩個任意大但不同的自然數(其中一個允許等於 $ 0 $ )。例如,$$ A = 0, B = 1 $$或者$$ A = 2^{3456789}, B = 9^{876543210} $$是有效的對。

然後

$$ \begin{array}{l} S_{A, B}[i] = G_{A, B}(S_i),\ C_{A, B} = {S_{A, B}[1], S_{A, B}[2], \ldots, S_{A, B}[L-1], S_{A, B}[L]}.\ \end{array} $$

問題:我們可以假設 $ D(C_{A, B}) $ 預計大約等於$$ (1-1/e) \times 2^{1600} = 10^{481} \times 2,810560755\ldots $$對於所有(或幾乎所有)對 $ A $ 和 $ B $ ?

讓 $ \pi $ 和 $ \sigma $ 是兩個獨立的均勻隨機排列,並且 $ f $ 均勻隨機函式。最好的優勢 $ q $ - 查詢算法來區分 $ \pi + \sigma $ 從 $ f $ 由 $ (q/2^n)^{1.5} $ $$ 1 $$. 在這種情況下,不同輸出的預期分數 $ \pi + \sigma $ 不能離不同輸出的預期分數太遠 $ f $ ,即 $ 1 - e^{-1} \approx 63% $ .

關於什麼 $ \sigma = \pi^2 $ , 或者 $ \sigma = \pi^k $ 為了 $ k > 2 $ ? 然後 $ \pi $ 和 $ \sigma $ 不是獨立的。然而,如果這種情況大不相同,那將是相當令人驚訝的。

關於什麼 $ \pi^{2^{3456789}} + \pi^{2^{987654321}} $ 代替 $ \pi + \pi^2 $ ? 這與 $ \pi + \pi^{2^{987654321 - 3456789}} $ . 不清楚為什麼你會擔心像這樣不可計算的大指數,除非你在沒有原則的情況下四處亂竄,試圖做出一個看起來很複雜的設計。

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