.


:




:

































 

 

 

 





1

 

. .

 

: () . .

 

: 1 .

 

"" . "" () . .

, , , . , , . , , , .

(.. 0 1), :

     
     
     

. ., () XOR ( 2, ).

, , .

: (and), (or), (xor) (not). :

A, B A and B A or B A xor B not A
0, 0        
0, 1        
1, 0        
1, 1        

. , , , . , 3 4 ( 0) 127 (01111111) 24 (00011000). .

: - , . , , 1, 0. ( and) .

, 3- 4- , -, 3- 4- 1, 0. : 00011000. :

 
 
 

.. , : 000110002 = 2410.

.., mask x :

y:= mask and x;

.

 

:

1. , x longint (32- ), , pos. pos . .

:

(shr) x pos .

.

, , , 1, , , 0 .

2. . , len x, pos ( , , pos, pos+1, , pos+len-1 ). , .

: 2len-1.

3. , ( ). . :

a. . .

b. ( ). ( ) . . ., RandSeed , .

c. , . .

d. xor , , (.. random()).

4. , , , . 3, RandSeed, .

 

:

1. 2-

2. -

 


 

 

2

 

. P-.

 

: , P-.

 

: 1 .

 

() , ( ). , , . , , . , , .

, . , "", . . , , : , . : , .

. :

4´7:

:

, .

(.. ) . .. , , 1, , n .

    n-1 n
f(1) f(2) f(n-1) f(n)

4- :

       
       

4- , . , . ( P-, . P-box). P- SP-.

, , , . , .. , ( ) . , .

, , , . ,

       
       

:

       
       

, ,

       
       

 

:

1. , . 56. , . , , 30.

2. , 4- . 4- .

3. , , , 2 .

:

1. 2-

2. -

 


 

3

 

. S-.

 

: S-

 

: 1 .

 

. , , . , .

, , . . a M a , M a M b a¹b, . M a a.

. , , .

a , , M a. a, M a. . M a .

, , , ( . 1) , , (.2).

. 2

. , , , . , :

   
   
   
   
   
   
   
   

: , . : .

, . n 2n , . , , . . (S-, . S-box).

S- , . , , , 0 7 (000-111). , , . :

var Sbox: array[0..7] of integer; Sbox[0]:= 7; Sbox[1]:= 1; Sbox[2]:= 2; Sbox[3]:= 6; Sbox[4]:= 5; Sbox[5]:= 4; Sbox[6]:= 3; Sbox[7]:= 0;
000 (=0) 111 (=7)
001 (=1) 001 (=1)
010 (=2) 010 (=2)
100 (=3) 110 (=6)
011 (=4) 101 (=5)
101 (=5) 100 (=4)
110 (=6) 011 (=3)
111 (=7) 000 (=0)

 

a , , , Sbox[a] .

, .

, , :

111 (=7) 000 (=0)
001 (=1) 001 (=1)
010 (=2) 010 (=2)
110 (=6) 100 (=3)
101 (=5) 011 (=4)
100 (=4) 101 (=5)
011 (=3) 110 (=6)
000 (=0) 111 (=7)

( ):

000 (=0) 111 (=7)
001 (=1) 001 (=1)
010 (=2) 010 (=2)
011 (=3) 110 (=6)
100 (=4) 101 (=5)
101 (=5) 011 (=4)
110 (=6) 100 (=3)
111 (=7) 000 (=0)

. ., :

var SboxInv: array[0..7] of integer;

SboxInv[0]:= 7;

SboxInv[1]:= 1;

SboxInv[2]:= 2;

SboxInv[3]:= 6;

SboxInv[4]:= 5;

SboxInv[5]:= 4;

SboxInv[6]:= 3;

SboxInv[7]:= 0;

( , ))

 

:

1. , . .

2. , 3- . .

3. , , , 2.

 

:

1. 2-

2. -


 

4

 

. RC4.

 

: RC4.

 

: 1 .

 

RC4 - , 1987 RSA Data Security, Inc. , .

1994 - Cypherpunks. Internet . Usenet, .

RC4 . S- 256: S0, S1, , S255. 0 255, .

S-, . : S0 = 0, S1 = 1, , S255 = 255. 256- , : K0, K1, , K255.

:

j = 0;

for i = 0 to 255 do begin

j = (j + Si + Ki) mod 256

Si Sj

end

S- .

. , i, j, .

K :

i = (i + 1) mod 256

j = (j + Si) mod 256

Si Sj

t = (Si + Sj) mod 256

K = St

K XOR XOR . 10 , DES.

, (. 1.2). , , .. 111111112 = 25510.

RC4 40 . , , , - . RSA Data Security, Inc. .

 

:

1. RC4.

 

:

1. 2-

2. -

 


 

5

 

(Feistel). 28147-89.

 

: , 28147-89.

 

: 1 .

 

1970- IBM , . IBM, , . , ( : Feistel's network).

, . , , .

. 1.
, . . , , , . , . , .

(. 1).

Li Ri i - . . Fi, . i, , k (, ) ().

, -, ki . , , 2. .

. , , . .

, , :

. , DES, 2814789.

, , , F , . , , :

F , . .

. F F .





:


: 2015-11-23; !; : 802 |


:

:

. .
==> ...

1316 - | 1285 -


© 2015-2024 lektsii.org - -

: 0.065 .