S-Boxes
更合適的替換箱
誰能建議我任何快速搜尋方法或算法來在大量 S-box 中找到最佳 S-Box?例如; 如果我有 100 個不同的 S-box,我想選擇一個比其他 S-box 更安全的。
沒有找到最佳 S 盒的特定算法,但您可以像這樣構造一個差異分佈表 (DDT)並檢查其中的值。DDT 是一個矩陣,包含行中的輸入差異和列中的相應輸出差異.
更好的 S-box 具有- 1- 其 DDT 中的值較低 2- 較高或最高值的發生率較低
AES S-Box 不僅僅是一個非線性替換錶,它是基於兩個操作的預先計算的結果。這是,恕我直言,Rijndael 的最大價值,一切都取決於數學。
第一個操作是非線性變換G:X→是=X−1∈F2[和]米(和) $ g: x\rightarrow y = x^{-1} \in \frac{\mathbb{F}_{2}[z]}{m(z)} $ 與米(和)=和8+和4+和3+和+1 $ m(z) = z^8+z^4+z^3+z+1 $ 誰是不可約的,告訴我們所有元素都是可逆的。第二個操作是(\mathbb{F}_2)^8中的仿射映射。(F2)8 $ (\mathbb{F}_2)^8 $
您是否喜歡建構不同的 S-Box,但具有相同的優良特性?讓我們使用不同的米(和) $ m(z) $ (具有相同的度數),但這不會為您提供任何額外的功能。你喜歡從頭開始建表嗎?任何錯誤引入的線性都將是一個弱點。Rijndael 背後的數學有助於避免錯誤。