Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Schneider B.Twofish.A 128-bit block cipher.1998

.pdf
Скачиваний:
15
Добавлен:
23.08.2013
Размер:
813 Кб
Скачать
☆

+ *"%! "%%

+ + # + * 2 = +#> 2 7 # + # + * + +

* ** 2 * + #+ * + ( # * (6 + * 36+ + *

-4 " '

* " + #* -!# 2 I * + " ** 72

/ 1 213 4 #$ * + +< + + #$ + +# #$ 2 #$ #$ + *

". . 5< : 2 3

$ / ** + ' :' B 2 / 2 - * + * * ## # %+ # 2 ? $) -** < + *

2

 

2 * +

:

2

* +

 

- " % & "

+ *

& 2 3 "/ + * #$ + #"/ ++ ** * "

7 = > "/# "/# # * * 7 + * #* * Æ2

+ E +

* 2 3 -! + * * + E +

: 7 # ? + 2 ? 2 + 0 ++

+

 

 

2

 

+

+ "# #? ? 2 + :$ + # ? E $ $*

 

 

 

+ ? = >

= >

? 2 7 2

 

 

 

 

= > * * #

=

> + ? +

K

K I #

 

 

 

2 ? + "#* "# + , 2 + ?

K = F = >>

 

K

 

 

= F

= >>

 

 

 

 

 

K

= F = >>

K = F

= >>

 

K

= F

= >>

 

K

= F = >>

F "# # 6 ? +

F = > K F = >

 

 

 

 

 

Æ K

= >

= >

 

 

 

 

 

 

 

 

 

Æ

K $ 3 K

=

>F

 

 

 

 

 

 

 

 

 

2 2 2,

Æ K = > = = F Æ >> = >

Æ K Æ Æ? *+ 2 + K 5K 5 K Æ ,

=5> =Æ > K Æ K =Æ > =5> K Æ

* +

 

 

+

 

# ? 2 = *+ () > 22 +

* " + +"# 2 +2 + Æ

Æ =5 5> =5 " > =" 5> =" " >

7 2 #+ ? , 2 *7 2 + () ++ 2 + Æ $#2 + =Æ Æ >

=Æ Æ > =5 5> =5 " > =" 5> =" " >

, ? +

Æ K = > = = F Æ >>

+ Æ + + Æ 1 2 + 2 + Æ*K 5 * 7 ? #

Æ K = > = Æ >

+ , + 7 5 5 Æ K 5 * + + Æ * < Æ K 5 #K

, + #? * +

, # = ,3 5< : 2 3

, 2 + - ++ ? 2? 2 * # L + +* + + * 7 *+ ? 2 ? + -) 2 2 2

, B ++ =0 2? #$> ++2 2

"

". . 2 <

+ + # #$ + &' *$#$ : < ? + #

* # #$ 2

#$ ? + =5 " !

/>

= % 4>

#$

#

? ++ * + #$ *&' *$ * ?

+ & '

 

()

= +

> + <? 2 *

, * ? # #$ * #? + "5* * + + + 2 #9 <* * +? *. " 2 +2 # #$ * * + $2

, "5# # ? +

"%-Q "-Q + ?"

". . 5< : 213 4 /

, 2 2 ? 2 #$* ? + "5 :

* * + +K "%- " " K "

+ ? 2 #$ $

: + + 7 + "* + *

* 2 , + #

= > K " @" @" @" @" @ A A A A A

: ? +" $ * + ? * ++ ? * *+ = > 2+ ? +2 $ 77 ? + " #$

3

(@ A K " @" @" @" @ A A A A

+ (@ A ?

(@ A ( @ A K

* + * +7 $ #$ #& '2 + "5 + + * #$ 2 "5#& ' ?

+ + * + #$ :+ + ##$ "%- 2 #+ #$"%- 2 :+ ++ 7 #$ #+ 2+ 2 2 & ' + * #+ * + *

3 * ( * ?+ + ( (7 "

+ 7 #" " K "

". . ; 2 <

3 * * +2 "5# 7 ?

+ #$ 2 #$" + *? * 2

2 7 ? + ? , * +

+ !# $ 7 #? " " K "

+ $* + 2

". . & ' 2 <

* + ?+ & ' ? #

& K &' = = > = > = > = >>

&' *$ * 27 + E #& ' 2 +

". . ; 2 < & '

3 7 ? :+ 27 ? &+ * &' *$ * #+ * *$ **

< 7 &

< 7 + + ? &

" 1 5"5 7 = +" > & C 2 D = > #$ & 7 ? + #$ + * & 2

& ? #+ + # ? + * & * #7 ? "5 & 2 ? # ? + "5# ? =+ & #2 + + ? * #* 2 * # > * 2 2+ * 7 & ? =+ 7 ? + & E>

0 " ($ ) ) ? ? -) @ / $ ) ( ? " ( * 3-) I )-? ? -) @ / ) ? " ) F$ $ ?$

2 + 2 + ' ?

". ." 2 < = >

& ' + * = 2 > =& ' >= > #* K + + !

". .! ; 2 < 2 3

' 7 ? & ' +# + ? = > ) 2& ' 7 ?* + 7 7 7 #* " * 7 ?

+@ A

K

 

@ A

K

 

7 * 2

". .$ >?* ; 2 3

+() + + ++ +

7 + #+ = +* ) ** +

7 # > ) 2 7 *

F K

= Æ > F K Æ

3 * + Æ# 2 + Æ Æ"

2 7 ##:+ G 2$ +# + "

* *$ + * B

!

+ 27 #7+

7 #Æ & 7

K & F '

K 013=& F "' 4>

* " :+ *7= >7 + Æ 2 "

7 ,=Æ 4> * * 7E #" 7 ? +"5 + ? Æ*

7 ? & ?

, 7 ' * * I * 7E + * " "

7 ' 2 $# # #

". . % ; 2 3

7 & ' < * + 2 7 * "

7 2 " ? 2 7 + 2 # 2 7 & B +# 7 2 2 7 + #" = ** +

>

2 7 * " 2 2$ , *

7 * * + *

". . / 2

#

1 : ? * 2 )

5< : / + ? 2+ $* $ , *? 2+ 2 * #? I2 & ' # ? * * ?+ #$ 2 *+ * + 7 , 2 2

: 2 7 ? +7 #$* + 2 ? 2 #* $*2 ? 2$

2 1 : / +# 2 ++ *2 , 2+# 2 $ ++# 2 ? +* 2 2 *2* +# 2 7 #7 $*

: / + 2

+ - =- = >> K + ( + 2

B *$ #$ * 2 + 2+ I + #$" + $

2 * * * #$

- = > K - = > K

* * + 22 +

& * @ 4! A

- = > K - = = >> K = >

1 +5 " " $ " #<

. * + , 2 + * +$

". . / 1 #

& /

+ # *2 @994 A #+ 3 + @'8;4! A+ :' 2+ + * * 7 2 + #+

7 * #7 2 7 :+7 ()7 2 2 2 : # 2* 2 2 2 * =O * 2+ # 7 #>* ?2 + # 7 2 2

* * * + ###$ 2 #7 72 ?

+ 7 #? #+ + # #$ = + + > # 7 + #$

%

- ' ,

0 + * # 7 *C D G * #/# #/# #$ + $*7+ # #$ 0&' @& ..A * * * * + 7"# 20 2* # 7* + & '7 + * #+ #$ 2+ * #* 7 +

2 0 #2 * * * < * **

F =/ F /> F / F =/ F / > F

/ + * 2 * = >

9 + Æ C * D 0 * + * #+ + I #2 + * *# * * + *-! +0 *#Æ + * 22 01& ( * 0 * ? / + 0 & * + "/#

0 *$ * * # * * # * Æ + 0 * #$

#! !

, 2 2 * # # * < ** ++ +

%# = # >" $ " *#+ +

5# = # # > # ? " $ " 2$ "

+ * # #* ## 2 *2 E 2 ##$ $ 0 #2* ? 2 2$ $

9 B $#* Æ + B * Æ#"/#

*$ + " * Æ4"# *$ + "

* Æ "%-# *$ + "

2 0 , &+ &

%# 2 "/# # "

$ " ' * ? * 2 * # * 2 2 * + * , ++ # ? "2 $ #$ $ " #2 " +$ + -

!. . ?: : ,

+ + #+ + + + * = > = 5>, < #* ) ** #7 +* + ,

7 "

B ' ($( '$ " (- $ $ $ " )$ $ 12 B 3 2 B %5(- $ F$ $I ) ) ( - "$

-

+ () +#7 + *= + > 7 + *E +

!. . ;

? #7 ? ,

* 2 2 * ,+ " #$ 2+ "5!/ C D 2 %# 7 2 , "5!/ 2 2 + * #* 2 #$ #, +2 * +

W

W

W

W

5

5

5

 

 

 

 

 

5

5

"

5

 

 

 

 

0

 

5

 

!

1

 

0

 

%

 

 

1

 

2 7 +2 + + %K ,= > K ,= > , 2K ,= > # +

< I# + ,= > <7 #+ < <= > # # # + 7 $2 0 7 Æ +0 17 2# + <

2 + K " = > =5 >9 #+ &' *$# ++ ) ** + / :+* + 7 &' *$ *" 7 + 2 I * 2 * "* 2 + * ,

()

 

+ *

 

* +K =/ 5 5 5> # 7K ,= /> # 7 * "# 7

.

!. . 2

+

=& ' +> =& ' + >

* *

" $ +0+ 7 #2

" $ # 2 "5!/ #$ + $"5!/ $

I *%# 2 2 + #$

? * 3 #+ +, * 7+ 2 #$ ++ * 7 #* + 2 #$+ E

+ , + $ +, $+ 7 + * * /# +# + + * ++ 7 ) 2$7 +7

* ** = #< > 7" +7 "%-2 = @ A @ ÆA" + < Æ2 > 1 *? + *+ E + * * ? "%- 7 #+ " + + * + ++ + #. / ++

*

 

 

E

+

 

+

+

$

E

+

E + #: *+ # + + + =* 7 7 >

* 2 . / + * " 7

* *

* 7 + + 9 #7 ) ** +/ " + 2 2 + * #" + 2 * 2* " I + *$ 2 2 + *

* 2 2 3 :+

* < 2 ) ** /* 2+ * <3 + * < ,

2 F 3 K =2 > F =3 >

=">

2 2 + 3 +< =2 3 > K 5# ## 2 + 2 3

/

* 3

2 3 ++ * <+ * < ** , ) ** + / " + 3 2 + ? " + 2 2

* * * 7 2 + + # 2 , "%- +# + 2 +$ +E +* + *=& ' +> =& ' + > 22 #* +#

9 + $2 *+ * #"%- 7 $ + + "$ 2 2 " $1 + $

: / + * #+ + * = > =5 > + + + "* 2 + ++ * + $"

? * % ! *

, 2 " $ ++ 6 # + * %#+ "5!/ "5!/ 2 + + # * #$I * + " ! "%- K "5!/ + "5!/ 2 + + * #1 2 2 + * = * > #$ 2* #$ +

? " ,? ? 2 =2 3 > K 5* ==2 4 > =3 4 >> K 5 +2 + 4 + 2 =2 3 > #? " =2 4 3 4 >

? + 2 + 4

2 2

2 2 * $ + * :+ 2

=& ' +> =& ' + >

=& ' + > =& ' + >* * + 2

* 7+ + : + * #7 + ** *+ , #+ ** ++ 2

* + +

 

 

2 2 * +

2 #

+ 2 + 2

 

* *, #+ * E +, * "%- 7 2#+* + + $ ? + + "%-

2 *$ , ** <

, $ & '

" 3 + + = > =5 5 5 5 > , $ 5 5

, 2 2 + 5 K

! , 2 - 2

% , = 5 > 2 !%52 I 2

- + * " - !%5 K " #* + 5 = 5 >+ " $2 " $+ * + 2 $I

* #" $ " "%- "5!/

$+ #

4

( 2 ,2 $ #$ 2 +* 2 =* "> *+ $ ,$ = +> = + >

 

 

K I + E 2

 

 

 

5 5

K + + I

*+ 2 2 " " K " $ #

2 + = 5 > = 5 > ,

K I * + #$ " - K "

$ E + * 2 + = +> = + >*= 5 > = 5 > + 2+ " !%5 K "5!/ $ = 5 > = 5 >

2 2

K K

9 2 + !%5+ = 5 > = 5 > + * + ,E "5!/ * #

!. . * : / 6

, $ + "5!/ * #2 + * ##$ , + 2 + = 5 > = 5 > $I+ "5!/ + 2 *

+7 2 + * $K ,= > W 1+# + < I +* ! ,

( ( + + + K ( F "( F * " ,

# + #+ # + ($# +

+ # + * ( $#+ * ( = # + ( #* "> *$# + 2 7 #$ + # + * +

* ##$ * # + ( ( + $2 2 + ) 2

? " + "/#" + "%-#

+ *+ + #* * *$

1 2 ? #2 ? ,

" ! "%- K "5!/ + * 8 =">* + "%-

+ + #$ $*

# + +&' *$ = .>I *

+ E

 

* 2

2 7

2 ?

+ $+ * #+ ( 8 ="># * #

+ E * += " > , *+ "5!/ "5!/ #? "5!/ *2 ? = 8 * * #* *2 2 *$>

+ * + +2 * + 3"5!/ 2 + = 5 > = 5 > * * + "5!/ ? "5!/ :+ # * + ?* * 2 2 + = 5 > = 5 > =, 2 + = 5 > = 5 > * + ? #+ > 1 2 * + ?+ + * #$ = * + *>* #$ 2 + #$ * #2 +2 + I "=+ "/# > " =+ "%-#> = 2 *2 " S " # > :+ * #$ *+ B + "5!/ * 2 2

!5

+ = 5 > = 5 > ) 2 #2 + * #$+ 2 # ? I + $* + * 7 2 7 #$

: B +"5!/ 2 2* + * * "+ + !%5 "5!/ "%- F " K " I #" $

!. . * 54

, + * 2* !#**+ $ +# + ) * " 7+ I 2 # & + *$ " *

/ / , 2 +#$ :*

*

-# 2$ # + +# + * E* + E + <? + # +7 B 2* 2 * 2* +() 7 + * # + + + #2 + + *+ +* " +$$ "

.# 2,$ + :+ 2 " + $* * ," + * #4"# "%-#