You are on page 1of 67

7

: 64 ., 27 ., 17 ., 2 , 16
.
' .

.
,
'
.

,
,
.
,
,
, ,
-
.
,

,
,
,
,
,
,

:
. .. .

.
..
1 .
1.1 .
1.2 DES...
1.3 28147-89.
1.4 IDEA..
1.5 .
2

2.1
2.2
3 ....
3.1 .
3.2
...
4 .
4.1

4.2 .
........


9
10
11
11
14
25
34
37
39
39
40
46
46
48
54
54
56
62
63

64
66

CBC Cipher Block Chaining ( );


CFB Cipher Feedback ( ' );
DES Data Encryption Standard ( );
ECB Electronic Code Book ( );
IDEA International Data Encryption Algorithm (
);
MAC Message Authentication Code (
);
MDC Manipulation Detection Code ( );
MIC Message Integrity Check ( ).
MIPS Microprocessor without Interlocked Pipeline Stages (
);
NIST National Institute Standard Technology (
);
OFB Output Feedback ( );
;
- ;
;
' ;
;
;
.

10

,
, ,
, , ,
. ,
,
.
, ,
- ,
,
, .


[1]. ,
,

.
.

. ,
, . ,

.
:
, ,
, .


: -, , (),
(), . , . ,

.

11
1

1.1
,
,
. ,
. ,
, .
3 :
- .
, , .
- .
, .
, .
- . .
.
. , '
, . , ,


. .

. ,
, . ,

[14].
.
. ,
.
,
.
- .
,

12
.
( )
.
( ) .
-,
. , (
) ,
.

.
.
( -, ,
).
'
.

. . ,
[10].
.
.
,
.

. .
,
.
,
,
,
[6].
, ().
, ,

13
, . ,
,
.
. ' , : .

,
.
,
'
.

, ,
,
.
, ,
, .
.
.
,
, . , , .
,
- [3].
. (
) : RSA, Elgamal.

,
. ,
' , -
, ,
.

, .

14
,
, .

[3,7].
. ,
,
.
, .
, ,
, , ,
( ).
[4].
- . : MD4-MD6, SHA
1, SHA2, 34.11-94.
.
-.
, . ,
( ,
),
( ,
) [13].
1.2 DES
DES (Data Encryption Standard) 1977 . ,
DES
, .
, , 1980
(). DES
.
,
[16].
.
64 .

15
64- ,
56 ( 8 ).
DES
2.
,
DES . DES . 1.1.

( 16 )

1.1 DES
64- .
,
, , .
= m1, m2, , m64
() = m58, m50, , m7, mi
0 1. . 1.1.
1.1
58
50
42
34
60
52
44
36
62
54
46
38
64
56
48
40
57
49
41
33
59
51
43
35
61
53
45
37
63
55
47
39

26
28
30
32
25
27
29
31

18
20
22
24
17
19
21
23

10
12
14
16
9
11
13
15

2
4
6
8
1
3
5
7

16
, 8
8 , .
,
. 2,4, 6, 8,1, 3, 5, 7.
, , .

.
,
. 5, 1, 6, 2, 7, 3, 8, 4.
, . 1.2, .
1.2
40
8
48
16
56
39
7
47
15
55
38
6
46
14
54
37
5
45
13
53
36
4
44
12
52
35
3
43
11
51
34
2
42
10
50
33
1
41
9
49

24
23
22
21
20
19
18
17

64
63
62
61
60
59
58
57

32
31
30
29
28
27
26
25

.
.
64-
32- L0 R0.
,
16- .
- [2]:
Mi = Li Ri,

(1.1)

Li = m1, m2, , m32; Ri = m33, m34, , m64


[2]:
Li = Ri-1, i = 1, 2, ..., 15; L16 = L15 f(R15, K16);
Ri = Li-1 f(Ri-1, Ki); i = 1, 2, , 15; R16 = R15.

(1.2)
(1.3)

17
f .
, 48-
, 64-
.
, DES,
. 1.2.
, 64

R0

L0
f

K1
11

R1= L1+f (R0, K1)

L1 = R 0
f

K2

L2 = R 1

R1= L1+f (R0, K1)

L15

R15
K16

L16= L15+f (R15,


K16)

R16= R15


(), 64

1.2 DES
L0 R ,
, . L1 ,
0

18
R1 f(R0, K1).
, . 1.3.
32- 48- .
16 , ,
. 1.3.
L1 = R0 .

Ri-1

32

S1

S2

S3

S4

S5

S6

S7

S8


f (Ri 1, Ki), 32

1.3 f (Ri 1, Ki )
1.3
32
1
2
4
5
6
8
9
10
12
13
14
16
17
18
20
21
22
24
25
26
28
29
30

3
7
11
15
19
23
27
31

4
8
12
16
20
24
28
32

5
9
13
17
21
25
29
1

48-
48- 1. 48-
8 6 . 6-
Bj 4-
. 1.3. 4-
32- ,
(.1.4).

19
6- 4-
:
- Bj (j= b1 b2 b3 b4 b5 b6,
bj =
0 1) k.
, . 1.4;
- , , ' Bj
l. b2 b3 b4 b5,
, . 1.4;
- k l.
1.4 P
16
7
29
12
1
15
5
18
2
8
32
27
19
13
22
11

20
28
23
31
24
3
30
4

21
17
26
10
14
9
6
25

= 011011. S(1) () = 0101. , k = 1 (b1 b6 = 01 = 1D), l = 13


(b2 b3 b4 b5 = 1101 = 13D);
13 1 5 D= 0101B. ,
011011 0101.
. 1.4.
.
.
64- ,
8, 16, 24, 32, 40, 48, 56, 64.

G (. 1.5).
G() 0 D0 28
. 0
( ). D0). 0 D0
i Di.

20
1.5
57
49
41
33
25
1
58
50
42
34
10
2
59
51
43
19
11
3
60
52
63
55
47
39
31
7
62
54
46
38
14
6
61
53
45
21
13
5
28
20

17
26
35
44
23
30
37
12

9
18
27
36
15
22
29
4


, . 1.6.
1.6

1
1
2
1
3
2
4
2
5
2
6
2
7
2
8
2

9
10
11
12
13
14
15
16

1
2
2
2
2
2
2
1

i Di.
i , 48 56- (. 1.4).
H [2]:
= (i Di).

(1.4)

H , .
1.7.
i Di, H
. ,
.
1.7

21
14
3
23
16
41
30
44
46

17
28
19
7
52
40
49
42

11
15
12
27
31
51
39
50

24
6
4
20
37
45
56
36

1
21
26
13
47
33
34
29

5
10
8
2
55
48
53
32

,
.

G
0(28 )

D0(28 )

D1

D2

16

D16

1.4 Ki

K1

K2

K1

22
, DES, .
Kj.
K16 K1.
DES
. , .
DES '
, .
DES:
- (Electronic Codebook) ECB;
- (Cipher Block Chaining) CBC;
- (Cipher Feedback) CFB;
- (Output Feedback) OFB.
"
DES. 64
(. 1.5).

M1
DES

C1
DES
M1

M2
DES

C2
DES

M2

.
.
.
.
.

Mn
DES

Cn
DES

Mn

1.5
.
. ,

23
.
.
" ,
, = 1 2 3 ...
S,
. DES. , 64- 1.
1 ,
S.
, , S
1.
64- (. 1.6).
S1

M1

DES

M2

M3

DES

DES

C1
C2
C3

..
C1
C2
C3

S1

DES

DES

DES

M1

M2

M3

1.6
, , , .
().
, .
' "
64 . , ,
, 64 (. 1.7).

24
. DES.
, n
( ). = 1... n
[2]:
Ci = Mi Pi-1,

(1.5)

Pi-1 k .
'
k i .

. .
k

1
64-k

. .
64-k

. .

64-

k -

. .

64-

k -

1.7
' ", CFB,
, 64 .
'.
, ',

. = 1 2 , , n . i = 1, , . Ci = Mi Pi,
k DES Ci-1. . 1.8.

25

. .
k

1
64-k

. .

64-k
. .

64-k

k -

. .

k -

64-k

1.8
1.3 28147-89
28147-89
.
, ' ,
[8].
.
L0 R0 ,
[2]:
Li = Ri-1;
Ri = Li-1 f(Ri-1, Ki);

(1.6)
(1.7)

i.
DES , 56-
256- . 28147-89
f, fDES,
DES. DES,
32.
, , S-, ,
, , ,
610 .

26
28147-89 ,
, ,
' .
.
64
.
, 64- . '
.
32 .
' 256 8- 32 .
8- ,
( 11 ) 32- ,
S.
. 1.9.
M

M0
N2
1

X0 (K0)

N1
32

32

X1 (K1)
X2 (K2)
X3 (K3)

S1

S2

S3

S4

S5

S6

S7

S8

X4 (K4)
X5 (K5)
X6 (K6)

R
32

X7 (K7)

' 256 ;
1 32- 232;
2 32- 2;
N 1 , N 2 32- ;
R 32- ;

27
S 32- ,
S1... S2 ' 64 .
1.9
64- 0.
32 (j = 1,,32).
' 256-
, 32 [2]:
= 7 6 5 4 3 2 1 0.

(1.8)

: 0 = a1(0), 2(0), ,
32(0), b1(0), b2(0), , b32(0). b(0) , , (0) ,
. (0) = a32(0), a31(0), , a0(0).
N1, b(0) = b32(0), b31(0), , b0(0)
N2.

[2]:
(1) = f[a(0) K0] b(0);
b(1) = (0).

(1.9)
(1.10)

(1) N1 ;
b(1) N2 ; f
.
f 232 (0) 0.
32- (a(0) 0).
S.
8- S1 S8 ' 64 . 32 , , 4-
, 4- .
- 16- 4-
0000...1111. ,
. ,
.
32- 11
. R.

28
2
f N2. N1, N2 , N1. .
. ,
, 25- , 7 ... 0.
, 32-
[2]:
0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7,
0, 1, 2, 3, 4, 5, 6, 7, 7, 6, 5, 4, 3, 2, 1, 0.

(1.11)
(1.12)

32- 2 N2,
N1 .
N1 N2 ,
0.

: = [1(32), a2(32), , 32(32), b1(32), b2(32), , b32(32)].

.
, . ' N1
N2 , N1 [32(32),
31(32),..., 32(32), 1(32)], N2 [b32(32), b31(32),..., b32(32),
b1(32)].
, , 32-
[2]:

29
0, 1, 2, 3, 4, 5, 6, 7, 7, 6, 5, 4, 3, 2, 1, 0,
7, 6, 5, 4, 3, 2, 1, 0, 7, 6, 5, 4, 3, 2, 1, 0.

(1.13)
(1.14)

32- N1 N2
0 = [a1(0), 2(0), , 32(0), b1(0), b2(0), ,
b32(0)].
.

A(0)=.

.
.
, ,
64 : M0(1), M0(2), M0(3), , M0(i), , M0(t), 0(t) - 64-

; = 1, , t.

: =( (2), (3), , (i), , (t)), (i)
i- 64- ; = 1, ..., t.
64.
.
[2]:
M(i)= M0(i)+ (i),

(1.15)

(i)= A( Yi-1 + C2, Zi-1 +C1), i = 1, , t; M(i) i- 64-


; A() ; 1,
2 32- ; Yi, Zi 32- .
Yi, Zi
[2]:
(Yi, Zi) = A(S),

(1.16)

S (64- ).
(. 1.10). N6 N5
,
: 1 = 01010104 2 = 01010101.

30
' 256 ,
N1 N2 64-
() S = (S1, S2, , Si, , S64).
N1 N2
[2]:
N1 (S32, S31, , S2, S1) N2 (S64, S63, , S32, S31).
(Yi, Zi) = A(Yi-1 + C2, Zi-1 +C1), i = 1, , t.

(1.17)

S ,
A(S) = (Y0, Z0), 32- N3 N4
: N1 N3 ,N2 N4.
N6 N4 232 - 1
4, N5 N3 232 .

N4, N3.
N4
N2, N3 N1.
N4 N3 , N1 N2
(1) = (1(1), 2(1), , 63(1), 64(1)),
2 5 M0(1) = (m1(1), m2(1), ,
m63(1), m64(1)). 5
M(1) = M0(1) +(1) = (1(1), 2(1), , 63(1), 64(1)).

31
M(i)( M0(i))

M0(i)( M(i))

(i)( 0(i))

+
5
C2

C1
32
4

32

+ 232 -1
32
N4

1
1

32

N2

N1
1

32

X0 (K0)

X3 (K3)

1
1

32

X1 (K1)
X2 (K2)

N3
1

32

32

32

32

S1

S2

S3

S4

S5

S6

S7

S8

X4 (K4)
X5 (K5)
X6 (K6)

R
1

32

X7 (K7)

+
32

2
1

' 256 ;
1 32- 232 ;
2 32- 2;
3 32- 232;
4 32- 232- 1;
N1, N2 32- ;
R 32- ;
S 32- , 8-
S1... S8 ' 64 .
1.10

32
,
M0(2) 1
2, N5 N6.
N1 N2,
, , (2).
(i) .
, . M0(i) = M(i) +(i) = M(i) + A(Yi-1
+ C2, Zi-1 +C1), i = 1, , t.
,

.
'.
, ,
, 64- : M0(1) , M0(2) , M0(3) , , M0(i) , , M0(t) .
, ,
= (1), (2), , (i), ,
(t).
[2]:
(1) = A(S) + 0 (1) = (1) + 0 (1)
(i) = A((i-1)) + 0 (i) = (i) + 0 (i), i = 2, , t.

(1.18)
(1.19)

(i) - , 64- ; A(S)


; t
.
.
256 ; N1 N2 64-
() S = (S1, S2, , Si, , S64).

. , 32- N1 N2
64- (1) = A(S).
2 3
M0(1) = (m1(1), m2(1), , m63(1), m64(1)).
M(1) = M0(1)
+(1) = (1(1), 2(1), , 63(1), 64(1)).

33
M(i)( M0(i))
M

M0(i)( M(i))

(i-1)

+
3
N2

N1
32

X0 (K0)

32
+

X1 (K1)
X2 (K2)
X3 (K3)

S1

S2

S3

S4

S5

S6

S7

S8

X4 (K4)
X5 (K5)
X6 (K6)

R
32

X7 (K7)
+

' 256 ;
1 32- 2;
2 32- 2;
3 64- 2;
N1, N2 32- ;
R 32- ;
S 32- , 8-

1.11 '
'
N1 N2; 64-
(1).

. ', , M =M(1) , M(2) , , M(i) , , M0(t) , i = 1, , t.

34
' . [2]:
0(1) = A(S) + (1) = (1) + (1)
(1.20)
0(i) = A((i-1)) + (i) = (i) + 0 (i), i = 2, , t.
(1.21)
.
(1) S.
""
2.
. ,
,
.
'
.

, .
( )
, ' 1/(2P).
0(1)
() 16- .
16- 64- '(0(1))
2 0(2) . ('(0(1) )+
0(2))
(). .
64- ('(0(1) )+ 0(2)) 2
0(3) () . .
0(t) ( 64 ) 2
(t 1),
().
64- (),
: =[a(m)(32-p+1)(16), a(m)(32-p+2)(16), , a(m)(32)(16)], i(m) -
64- , 16-
(), 32 p +1 i 32.
'
(1)
M , M(2) , , M(m), .

35
, ,
.
, . ,
, , [8].
1.4 IDEA
1990 .
. International Data
Encryption Algorithm (IDEA). , IDEA
, [15].
64 , 128- .
.
(.1.12).
IDEA, ,
.
, :
- XOR ( 2);
- 216;
- 216 + 1.
16- .
64- 16-
1, 2, 3 4, .
.
2, 2 16
216 + 1 16- .
64- 16-
1, 2, 3 4, .
.
2, 2 16
216 + 1 16- .
:
1) 1 1 ;
2) 216 2 2;
3) 216 3 3;

36
4) 4 4;
5) 2 1 3 ;
6) 2 2 4;
(1)

X1


X2(1)

K2(1)

K1(1)

K3(1)

X3(1)

X4(1)

K4(1)

K5(1)
K6(1)

K1(9)

K2(9)
Y1

K4(9)

K3(9)
Y2

Y3

Y4

Xi 16- ;
Yi 16- ;
Ki 16- ;
2 16- ;
216 16- ;
216 +1 16- ;
1.12 IDEA
7) 1 1 ;
8) 216 2 2;
9) 1 1 ;
10) 216 2 2;
11) 216 3 3;
12) 4 4;
13) 2 1 3 ;
14) 2 2 4;

37
15) 5 ' K5;
16) 216 6 7 ;
17) 8 6;
18) 216 7 9 ;
19) 2 1 9 ;
20) 2 3 9 ;
21) 2 2 10 ;
22) 2 4 10 .
,
. (
). , .
, , :
- 1 1;
- 216 2 2;
- 216 3 3;
- 4 1.
Y1, Y 2, Y 3 Y 4
, .
IDEA 52- .
128- 16- ,
,
. 128- 25
.
, .
IDEA - ,
. DES. , , . -,
. , , DES.

38

1.8 IDEA

Z1(1) Z2(1) Z3(1) Z4(1) Z5(1) Z6(1)

Z1(9)-1 -Z2(9) -Z3(9) Z4(9)-1 Z5(8) Z6(8)

Z1(2) Z2(2) Z3(2) Z4(2) Z5(2) Z6(2)

Z1(8)-1 -Z3(8) -Z2(8) Z4(8)-1 Z5(7) Z6(7)

Z1(3) Z2(3) Z3(3) Z4(3) Z5(3) Z6(3)

Z1(7)-1 -Z2(7) -Z3(7) Z4(7)-1 Z5(6) Z6(6)

Z1(4) Z2(4) Z3(4) Z4(4) Z5(4) Z6(4)

Z1(6)-1 -Z3(6) -Z2(6) Z4(6)-1 Z5(5) Z6(5)

Z1(5) Z2(5) Z3(5) Z4(5) Z5(5) Z6(5)

Z1(5)-1 -Z2(5) -Z3(5) Z4(5)-1 Z5(4) Z6(4)

Z1(6) Z2(6) Z3(6) Z4(6) Z5(6) Z6(6)

Z1(4)-1 -Z3(4) -Z2(4) Z4(4)-1 Z5(3) Z6(3)

Z1(7) Z2(7) Z3(7) Z4(7) Z5(7) Z6(7)

Z1(3)-1 -Z2(3) -Z3(3) Z4(3)-1 Z5(2) Z6(2)

Z1(8) Z2(8) Z3(8) Z4(8) Z5(8) Z6(8)

Z1(2)-1 -Z3(2) -Z2(2) Z4(2)-1 Z5(1) Z6(1)

. Z1(9) Z2(9) Z3(9) Z4(9)

Z1(1)-1 -Z2(1) -Z3(1)

Z4(1)-1

IDEA ,
(1/x) 0 0.
1.5
(512
). . ,
. .
,
.
.

, .
, '

. ,

:
1) ,
, ;

39
2) , ,
, ;
3) ,
;.
4)
;
5) .
, '
,
, , ,
.
,
, .

: , , ,
.
1.9

DES
Triple DES
28147
IDEA
MARS
RC6
TWOFISH

56
168
256
128
128-448
128, 192, 256
256

64
64
64
64
128
128
128


Intel Core
2 Duo, /
16
12,2
16
5,9
32
20,1
8
15,5
32
17,6
20
17,8
16
60,3

, 1977
, 1978
, 1989
, 1990
, 1998
, 1998
, 1999

40
2

2.1

, .
, : , ,
.. ,
.

:
-
;
- ,

, ;
- ,

(
);
- ;
-

;
-

;
- ;
- , ,
;
-
;
-
, ;

41
- -
.

42
2.2

,
. ',

' .

.

Xn = (a Xn -1 + b) mod m, Xn n- ,
Xn - 1 . a, b m : a
, b , m . ( )
X0.
, m. a, b m
,
( " ") m - 1. ,
, b m.
,
.
.
,
, , b
.
. ,

, , .

.
.
S0, Si, ... Sn. S,
[6]:
Si

ajj (S0, , Si-1 ) mod

(2.1)

43
2.1
:

b
m
1
2
3
4
20
2
106
1283
6075
21
2
211
1663
7875
22
2
421
1663
7875
23
2
430
2531
11979
936
1399
6655
1366
1283
6075
24
2
171
11213
53125
859
2531
11979
419
6173
29282
967
3041
14406
25
2
141
28411
134456
625
6571
31104
1541
2957
14000
1741
2731
12960
1291
4621
21870
205
29573
139968
26
2
421
17117
81000
1255
6173
29282
281
28411
134456
27
2
1093
18257
86436
421
54773
259200
1021
24631
116640
1021
25673
121500
28
2
1277
24749
117128
741
66037
312500
2041
25673
121500
29
2
2311
25367
120050
1807
45289
214326
1597
51749
244944
1861
49297
233280
2661
36979
175000
4081
25673
121500
3661
30809
145800

2.1
1
230
231
232
233
234
235

2
3877
3613
1366
8121
4561
7141
9301
4096
2416
17221
36261
84589

3
29573
45289
150889
28411
51349
54773
49297
150889
374441
107839
66037
45989

4
139968
214326
714025
134456
243000
259200
233280
714025
1771875
510300
312500
217728



. , ,
f, aj m .

[6]:
S

a Si-1 + b mod m

(2.2)

x0, xi, ... xn, x0,


t S, , .
x, "" t ,
S. ,

m.
.

, ,
'. : -, ,
,
. ,
,
.
' :
'. ,
, a, b

, : r
, , r- . ,
, ().
,
'. 1 ,
.
, .


' ( 2.2). ,
' (
, ),
.
, ,
2,
. ( q i {0,1}
. 0 mod
2.)
an-1

q1

an-2

q2

an-r+1 an-r

qr-1

qr

2.2 '
'
,
, .

. ,
, :
, ,
', .
,

,
'.
. n
2n-1 . ,
2n-1
, .
2n-1
.
-. , ,
.
,
mod 2 .
, .

.
mod 2 .
, , ,
(2q - 1, q ), .
, , ,
. mod 2
' .
, , -
, 31,
16 (
). ,
. , , ,
.
" "
"" mod 2 .
. ,
', .
,
.
',
,

. ,

. ,
', ' XOR-.
VLSI-

.

. ,
; '
. ,
64 , DES
. , -,
,
DES.
, ,
, , ,
.

. ,
. ,
' Cray (Cray 1, Cray X-MP, Cray YMP) , " ".


,
. ,
[6].

3.1
,
,
.
, .

,

.


.
,
' .

,
:
.
,
- ,
() ,
. ,
, ,
,
1/2
.
, ,
. '
, , .

,
. DES

| SDES | = 211 = 256 . 28147


: | S | = 29 = 64 .
,
.
1) - ,

.
2) .
,
,
.
32-62 . ,
64-256 . , ,
.
3) ( )
, ""
'
.
:
1) ()
.
2) ()
() .
,
() .
,
, . 3.1.

3.1
3.2
. 3.2 -
.
, ` .
: .
: :/zashifr.txt, :/razshifr.txt.
,
. ,
. .

, . 2.1. ,
. 8,
,
.
Turbo Pascal.
.
.
.
,
: .

var l,k,c,w,u,i,m

GotoXY ();

goto 11;

vaf:= chr(n); write (af,vaf); goto 11;


u:=k[j]; m:=k[j] mod3; v=(k[j] mod4)+1; a:=8-v
m=1

m=0
1
u= (106u+1283) mod 6075

2
u= (211u+1663) mod 7875

m=2
3
u= (421u+1663) mod 7875

b[i]=c[i]+u; m=(ni+a) mod8; c[j]=b(v)

i<8


k[i]=k[i]+c[i]

For i : = 1 to 8 do Begin c[i] := 0; w[i] := 0


end;

3.2 -

3.3
S ' ,
.
D '
.

3.4

' ,
. .

3.5
,
.

'

3.6

3.7
'

3.8

3.9

3.10

4.1

,
.
, ,
,
, 1/2 .
.
,
,
.
,

. ,
.4.1.
4.1
n /
1
2
5
10
N
3
5%
9%
11%
15%
4
10%
13%
20%
23%
5
19%
27%
35%
39%
6
29%
38%
42%
44%
7
35%
39%
44%
46%
8
38%
42%
46%
47%

15
20%
26%
42%
46%
47%
48%

. 4.1

.

. ,
,
, ,

.

. ,
,
IBM PC.
-.

4.1

,
, 10%, .
, , ,
. ,
,
.


.
*.txt 0,779 , *.bmp 970 , *.avi
69,2 .
4.2

1
2
3

(txt)

(bmp)

(avi)

'

,
, %

'

'

'

0,779

0,779

0,432

0,849

109

970

970

122

326

34

69,2103

69,2103

69103

69,6103

101

,
, , , .
, , ,
, .
4.2
.
,
. ,
, .
, ,
( / .)
:
= + + + + +

(4.1)

,
;
- ;
;
(
);
;
;
.
-,
,
Q.
Q :
Q= q c

(4.2)

q ,
.
, .
q . 4.3
4.3



1400 1500
900 1000

1500 1700
1000 - 1200

3000 3500
1500 - 2000

4500 5000
2000 - 2500

5000 5500
2500 - 3000
-,
,
, :
T = Q/ ( )
Q ;
;

(4.3)

,
= 0,5 1,67.
q = 1400

4- :
- ;
- ;
- ;
- .
: .

3- :
- ;
- , ;
- .
1 .
. 4.3
.
4.3
.

1
1,38
1,26
1,15

2
1,30
1,19
1,08
3
1,20
1,10
1,00
1
1,58
1,45
1,32

2
1,49
1,37
1,24
3
1,38
1,26
1,15

0,69
0,65
0,60
0,79
0,74
0,69

= 0,6
, 1, Q
Q = 14000,6=840 (/)
. 4.4.
4.4

2-
2 3
3 5
5 10
10

0,8
1,0
1,1 1,2
1,2 1,3
1,3 1,5

:
,
:
1) ( ), :
= 10 (/).
( ) :
= Q / (50 ),

(4.4)

= 1,1
= 840 1,1 / (50 0,8 ) = 23,1 (/).
2) :
= 1.
= Q / (50 )

(4.5)

=840 / (50 0,8) = 21(/)


3)
(4.5)
= 21 (/).
4) (
)
= 1,4
= Q / (50 )

(4.6)

(4.6)

= 840 1,4 / (50 0,8 ) = 29,4 (/).


5)
:

= 1,5
= Q / (50 )

(4.7)

(4.7) :
= 840 1,5 / (50 0,8) = 31,5 (/).
6) ,
,
:
= 10 (/).
7) :
= Q / 50

(4.8)

(4.8) .
= 840 / 50 = 16,8 (/).
8) , , ,
:
= + + + + + + + = 162,8(/)
.
= + + = 58,3 (/)
9)
= / 8 = 162,8/ 8 = 20,35()
10)
= / ( 8) = 162,8/ (20,35 8 ) = 1 ()

. :
= ( ) / ( .. (1 + / 100)),
3 1- (.);
(/);
;
.. .
, .

(4.9)

.. = 8 .
= 21 .
3 = 2100 .

.
=2100 162,8/ (21 8) = 2035 (.)
10% .
= 2035 0,1 = 203,5 (.)
:
= + = 2035 + 203,5 = 2238,5 (.)

Windows 7 Home Premium Rus ++ Builder 6.
. 4.5 .
4.5

, .

MS DOS
.
1
204,67
Turbo Pascal 7.0
.
1
557,98

1
33,50
USB Flash
.
1
57,00
D-RW
.
1
8,20
:
861,35

.
4.6

, .



2238,5,00
861,35
680,51
235,00
4015,36


,
, .

,
, , (CFB, OFB),
. ,
. ,
,
.
,

,
.
, ,
. , ,

.
,
,
.

,
. ,
. .

1 22 1998 N 505/98

. 2009-06-12.
2 .. : /
.. , .. . : . .. , 2007. 151
3 . . , ,
.: , 2002. 816 .
4 .. . .: , 2000.
384.
5 . : (http:// pmi.ulstu.ru/
new_project / telecommunication/ redar.htm)
6 . . ./ . , . . .: 1997. 400
.
7 . = Modern
Cryptography: Theory and Practice. .: , 2005. 768 .
8 . 28147-89,
Intel x86. :
http://www.rsdn.ru/article/crypto/gost28147_1.xml#EVBAG
9 . , Byte. 8
(60), 2003.
10 .,
./ . , , 2003. 163 .
12
, : / .. , ..
, .. , .. . : . .. , 2013.
48 .
13 http://uk.wikipedia.org/wiki/
14 http://uk.wikipedia.org/wiki/__
15 http://ru.wikipedia.org/wiki/IDEA
16 http://ru.wikipedia.org/wiki/DES



{Program;
Uses WinCrt;
label 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;
var te: file of char; var af: file of char; type put = string[25]; var s,p : put; vaf, tkx: char;
type kluh = array [1..8] of char; type klch = array [1..8] of integer;
type nach = array [1..8] of integer; type bufr = array [1..8] of integer;
type wmsv = array [1..8] of integer; type pchp = array [1..4] of integer;
var l: kluh; lu, y: char; var k: klch; r: pchp; kl :integer;
var c: nach; b: bufr; n, i:integer; var w: wmsv; v, m, a, j :integer; var u: longint;
BEGIN
r[1] := 1; r[2] := 3; r[3] := 5; r[4] := 7; j := 0;
ClrScr; GotoXY (20, 7); writeln (''); GotoXY (20, 8); writeln ('');
GotoXY (20, 9); writeln (' "S" ');
GotoXY (20, 10); writeln ('');
GotoXY (20, 11); writeln (' "D" ');
GotoXY (20, 12); writeln (''); GotoXY (20, 13); writeln (''); GotoXY (38,14); readln (y);
ClrScr; GotoXY (24, 8); writeln (' ');
GotoXY (24,10); begin readln (s); end; assign (te, s); GotoXY (24,12);
writeln (' '); GotoXY (24,14); begin readln (p); end;
reset (te); assign (af, p); rewrite (af);
ClrScr; GotoXY (12, 7); writeln (''); GotoXY (12, 8); writeln ('');
GotoXY (12, 9); writeln ('|| 8- ||');
GotoXY (12,10); writeln ('|| Enter,
||');
GotoXY (12,11); writeln (''); GotoXY (12,12); writeln (''); GotoXY (38,16);
For i:=1 to 8 do Begin read (l[i]); End;
ClrScr; GotoXY (30,8); write (' :');
GotoXY (32,10);
For i := 1 to 8 do write (' ',l[i]); kl:= Ord (l[i]); k[i]:=kl; End;
For i:= 1 to 8 do c[i] := (k[i] i) mod 256 end; gotoxy (30,18);

write (' ? ("-1"/"-0")'); read (i);


if i = 1 then goto 4 else goto 3;
ClrScr; GotoXY (24, 9); write (''); GotoXY (24,10); write ('');
GotoXY (24,11); write (' ');
GotoXY (24,12); write (''); GotoXY (24,13); write ('!');
GotoXY (24,14); write (''); GotoXY (24,15); write ('');
While not eof (te) do Begin
j := j + 1;
u := k[j]; m := k[j] mod 3; v := (k[j] mod 4) + 1; a := 8 - v; n := r[v];
if m = 0 then goto 6; if m = 1 then goto 7; if m = 2 then goto 8;
For i := 1 to 8 do Begin u := (106 u + 1283) mod 6075; u := u mod 256;
b[i] := c[i] xor u end; Goto 9;
For i := 1 to 8 do Begin u := (211 u + 1663) mod 7875; u := u mod 256;
b[i] := c[i] xor u end; Goto 9;
For i := 1 to 8 do Begin u := (421 u + 1663) mod 7875; u := u mod 256;
b[i] := c[i] xor u end;
For i := 1 to 8 do Begin v := (n i + a) mod 8; c[i] := b[v] end;
if j < 8 then goto 5;
j := 0; For i := 1 to m do Begin k[i] := k[i] xor c[i] end;
if y = 's' then goto 10; if y = 'd' then goto 12;
i := 0; i := i + 1; if (i > 8) or eof (te) then goto 15; read (te,tkx); n := ord (tkx);
n := n xor c[i]; c[i] := n; vaf:= chr(n); write (af,vaf);goto 11;
i := 0; i := i + 1; if i > 8 then goto 14; if eof (te) then goto 15; read (te,tkx); n := ord
(tkx);
w[i] := n; n := n xor c[i]; vaf := chr(n); write (af,vaf); goto 13;
For i := 1 to 8 do Begin c[i] := w[i] end;
For i := 1 to 8 do Begin c[i] := 0; w[i] := 0 end;
End;
ClrScr; GotoXY (22, 8); write (''); GotoXY (22, 9); write ('');
GotoXY (22,10); write (' ');
GotoXY (22,11); write (''); GotoXY (22,12); write (''); GotoXY (30,20);
close (af); close (te);
write (' "1"'); GotoXY (30,21);
write (' '); read (i);
if i=1 then goto 1 else goto 16;
END.


1 ;
. 39, 49.
1.9

DES
Triple DES
28147
IDEA
MARS
RC6
TWOFISH

56
168
256
128
128-448
128, 192, 256
256

64
64
64
64
128
128
128


Intel Core
2 Duo, /
16
12,2
16
5,9
32
20,1
8
15,5
32
17,6
20
17,8
16
60,3

, 1977
, 1978
, 1989
, 1990
, 1998
, 1998
, 1999

2 - ; . 50
2

var l,k,c,w,u,i,m

GotoXY ();

goto 11;


u:=k[j]; m:=k[j] mod3; v=(k[j] mod4)+1; a:=8-v
m=1

m=0
1
u= (106u+1283) mod 6075

2
u= (211u+1663) mod 7875

m=2
3
u= (421u+1663) mod 7875

b[i]=c[i]+u; m=(ni+a) mod8; c[j]=b(v)

vaf:= chr(n); write (af,vaf); goto 11;


i<8
2

k[i]=k[i]+c[i]

3 . 50.
3

S or D

'

'
i<8

i<8

4 - . 56,62, 57.

You might also like