📄 12-15.html
字号:
<TD VALIGN="TOP" ALIGN="LEFT"> 64 rounds
<TD VALIGN="TOP" ALIGN="CENTER">2<SUP>49</SUP> (independent key)
<TR>
<TD COLSPAN="2"><HR>
<TR>
</TABLE>
<P><B><I>s<SUP>n</SUP> DES</I></B></P>
<P>A group of Korean researchers, led by Kwangjo Kim, has attempted to find a set of S-boxes that are optimally secure against both linear and differential cryptanalysis. Their first attempt, known as <I>s</I><SUP>2</SUP>DES, was presented in [834] and shown to be worse than DES against differential cryptanalysis in [855,858]. Their next attempt, <I>s</I><SUP>3</SUP>DES, was presented in [839] and shown to be worse than DES against linear cryptanalysis [856,1491,1527,858,838]. Biham suggested a minor change to make <I>s</I><SUP>3</SUP>DES secure against both linear and differential cryptanalysis [165]. The group went back to their computers and developed better techniques for S-box design [835,837]. They proposed <I>s</I><SUP>4</SUP>DES [836] and then <I>s</I><SUP>5</SUP>DES [838,944].</P>
<P>Table 12.16 gives the <I>s</I><SUP>3</SUP>DES S-boxes with S-box 1 and S-box 2 reversed, which are secure against both differential and linear cryptanalysis. Sticking this variant in a triple-DES mix is sure to irritate cryptanalysts.</P>
<P><FONT SIZE="+1"><B><I>DES with Key-Dependent S-Boxes</I></B></FONT></P>
<P>Linear and differential cryptanalysis work only if the analyst knows the composition of the S-boxes. If the S-boxes are key-dependent and chosen by a cryptographically strong method, then linear and differential cryptanalysis are much more difficult. Remember though, that randomly generated S-boxes have very poor differential and linear characteristics; even if they are secret.
</P>
<TABLE WIDTH="100%"><TR>
<TH CAPTION COLSPAN="16" ALIGN="CENTER">Table 12.16<BR><I>s</I><SUP>3</SUP>DES S-Boxes (with S-box 1 and S-box 2 reversed)
<TR>
<TD COLSPAN="16"><HR>
<TR>
<TH VALIGN="TOP" ALIGN="RIGHT" COLSPAN="3"><I>S-box 1:</I>
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TR>
<TH VALIGN="TOP" ALIGN="RIGHT" COLSPAN="3"><I>S-box 2:</I>
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TR>
<TH VALIGN="TOP" ALIGN="RIGHT" COLSPAN="3"><I>S-box 3:</I>
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TR>
<TH VALIGN="TOP" ALIGN="RIGHT" COLSPAN="3"><I>S-box 4:</I>
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TR>
<TH VALIGN="TOP" ALIGN="RIGHT" COLSPAN="3"><I>S-box 5:</I>
<TR>
<TD VALIGN="TOP" ALIGN="RIGHT">5
<TD VALIGN="TOP" ALIGN="RIGHT">15
<TD VALIGN="TOP" ALIGN="RIGHT">9
<TD VALIGN="TOP" ALIGN="RIGHT">10
<TD VALIGN="TOP" ALIGN="RIGHT">0
<TD VALIGN="TOP" ALIGN="RIGHT">3
<TD VALIGN="TOP" ALIGN="RIGHT">14
<TD VALIGN="TOP" ALIGN="RIGHT">4
<TD VALIGN="TOP" ALIGN="RIGHT">2
<TD VALIGN="TOP" ALIGN="RIGHT">12
<TD VALIGN="TOP" ALIGN="RIGHT">7
<TD VALIGN="TOP" ALIGN="RIGHT">1
<TD VALIGN="TOP" ALIGN="RIGHT">13
<TD VALIGN="TOP" ALIGN="RIGHT">6
<TD VALIGN="TOP" ALIGN="RIGHT">8
<TD VALIGN="TOP" ALIGN="RIGHT">11
<TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -