, , DES.
,
: , , .
:
DES;
( );
.
DES(Data Encryption Standard). 1977 , 1980 NIST (National Institute of Standards and Technolody ) (FIPS PUB 46).
DES (. 3.1). 64- 64- , 56 ( 8 ). DES . 3.1. 64- , , , .
DES :
L R ( (left) (right));
LR L R, .. , L R; LR R L;
Å 2.
64- (8-) . IP (. 3.1).
. 3.1. DES. |
3.1
IP
58 50 42 34 26 18 10 2
60 52 44 36 28 20 12 4
62 54 46 38 30 22 14 6
64 56 48 40 32 24 16 8
57 49 41 33 25 17 9 1
59 51 43 35 27 19 11 3
61 53 45 37 29 21 13 5
63 55 47 39 31 23 15 7
(64 ) IP: 58 1, 50 2 .. 0 = IP(). 0 : L0 , R0 , 32 .
, 16 . i, i - :
i = Li Ri
Li=t1, t2,,t32 ( 32 ), Ri=t33, t34,,t64 ( 32 ). i - :
Li = Ri1, i = 1, 2,,16;
Ri== Li1 Å f(Ri1, Ki), i = 1, 2,,16.
|
|
f . Ri1, , 48- Ki 64- .
R16 L16, 64- R16 L16.
IP 1 (. 3.2).
3.2
IP 1
40 8 48 16 56 24 64 32
39 7 47 15 55 23 63 31
38 6 46 14 54 22 62 30
37 5 45 13 53 21 61 29
36 4 44 12 52 20 60 28
35 3 43 11 51 19 59 27
34 2 42 10 50 18 58 26
33 1 41 9 49 17 57 25
. , IP, 16 , Ki : K 16 , K 1 . IP 1. .
f(Ri1, Ki) . 3.2.
. 3.2. f. |
f :
E ( 32 48);
S1 , S2 ,..., S8 ( 6- 4-);
P ( 32- ).
f Ri1 (32 ) Ki (48 ). E(Ri1) 48- . E, 32 48 ( 32 48 ), . 3.3.
E(Ri1) 32, 1 2, 31, 32, 1. 2 ( XOR) Ki 6- B1 , B2 ,, B8:
E(Ri1) Å Ki. = B1 , B2 ,, B8 .
3.3
E
32 1 2 3 4 5
4 5 6 7 8 9
8 9 10 11 12 13
12 13 14 15 16 17
16 17 18 19 20 21
20 21 22 23 24 25
24 25 26 27 28 29
28 29 30 31 32 1
- (S ): S1 , S2 ,..., S8 , 4- (. 3.4).
, Sj, . Sj; 6- Bj =b1 b2 b3 b4 b5 b6, 2- b1 b6 , 4- b2 b3 b4 b5 .
, S1 6-
B1 =b1 b2 b3 b4 b5 b6 = 100110,
2- b1 b6= 10(2)=2(10) 2 S1, 4- b2 b3 b4 b5= 0011(2)=3(10) 3 S1. , S1 B1 = 100110 2 3, .. 8(10) = 1000(2) . 6- B1 , B2 ,, B8 4- S1 , S2 ,..., S8.
|
|
S 1(B 1), S 2(B 2), ..., S8(B 8), .. 32- . 32- P (. 3.5).
,
f(Ri1,Ki) = P(S1(B1), S2(B2),,S8(B8)).
Ki ( 48 ). Ki K (. 3.3). K 64- 8 , 8, 16, 24, 32, 40, 48, 56, 64. G (. 3.6).
3.6 . G(K) C0 D0 28 . G , C0 ( C0 57 , 49 .., 44 36 ). G , D0 (.. D0 63, 55, 47,...,12, 4 ).
3.4
S1 , S2 ,..., S8
S 1 | ||||||||||||||||||
S 2 | ||||||||||||||||||
S 3 | ||||||||||||||||||
S 4 | ||||||||||||||||||
S 5 | ||||||||||||||||||
S 6 | ||||||||||||||||||
S 7 | ||||||||||||||||||
S 8 | ||||||||||||||||||
|
|
3.5
P
16 7 20 21
29 12 28 17
1 15 23 26
5 18 31 10
2 8 24 14
32 27 3 9
19 13 30 6
22 11 4 25
. 3.3. . |
3.6
G
( 1)
57 49 41 33 25 17 9
1 58 50 42 34 26 18
10 2 59 51 43 35 27
19 11 3 60 52 44 36
63 55 47 39 31 23 15
7 62 54 46 38 30 22
14 6 61 53 45 37 29
21 13 5 28 20 12 4
. 3.6, C0 D0 8, 16, 24, 32, 40, 48, 56 64 . (, ). , 56-.
C0 D0 Ci Di,
i= 1, 2,,16. , . 3.7.
3.7
|
|
Ci Di . , C3 C2 , D3 D2 , C16 D16 C15 D15 .
Ki, , 56- Ci Di . , Ki = H(Ci Di), , (. 3.8).
3.8
( 2)
14 17 11 24 1 5
3 28 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 56 34 53
46 42 50 36 29 32
. 3.8, Ki 14- Ci Di, 17- , 47- Ki, 29- Ci Di, 48- 32- Ci Di.
:
1. 3.1 .
2. , , DES. .
DES Tutorial, .. .. (. . 3.4), 2 .
. 3.4. " " DES Tutorial. |
DES. . . . DES .
DES Tutorial 2 :
1) . .
2) / , . .
:
1 " ";
2 " R 0 L 0";
3 " G ";
4 " C0 D0";
5 " Ci ";
6 " Di ";
7 " Ki ( i)";
8 " E ";
9 " Si ";
10 " f ";
11 " ".
.