Keccak
什麼是重要的rrr和CCc海綿結構的價值?
什麼是重要的 $ r $ 和 $ c $ 價值觀?
凱卡克
$$ r=1600,c=0 $$在 Keccak 網站上的計算器上表示為校驗和。但我想如果c=0,那麼只有一個可能的輸出? 如果 C 為 128,是否只有 2^64 個可能的輸出,儘管有無限的輸出長度和無限數量的輸入?
Keccak 是基於 Sponge 的雜湊函式:
【圖片取自海綿官方頁面】
它有一個很大的內部狀態,並通過排列迭代它(對於理論證明,我們將其建模為理想排列)。
Keccak 的總狀態是 $ s=r+c $ 位。因為使用者只能讀取或輸入數據到 $ r $ -此部分(“狀態的速率組件”),使用者不能直接修改狀態的容量組件。事實證明,構造的安全性歸結為避免容量組件的內部衝突(即 $ c $ -位寬)。也就是說,我們要求狀態的容量組件永遠不會兩次採用相同的值,並且由於生日限制,這發生在大約 $ 2^{c/2} $ 塊。
因此,為了可證明的安全性,我們需要 $ c $ 適當大。但是,輸入和輸出總是在速率 $ r $ .