Vous êtes sur la page 1sur 13

2011 - 2012

STREAM CIPHER - AUTOKEY


Autokey Z26 k Z26.
keystream q1, q2,,
, .
Keystream :
q1 = k1, q2 = x1, q3 = x2,, qi = xi-1,,
x1, x2, x3 , :
yi= xi+qi (mod 26).
1:
) keystream .
) utokey .
) :
MALVVMAFBHBUQPTSOXALTGVWWRG.
: y1, y2, y3 . Keystream :
q1 = k1;
q2 = y1- k1
(y1- k1 = x1);
q3 = y2- x1
(y2- x1 = x2);
.
.
.
qi= yi-1- xi-2
(yi-1- xi-2 = xi-1),
:
xi= yi- xi-1 (mod 26).
, xi= yi- xi-1 (mod 26), xi
i=1,2,,
keystream : q1 = k1, q2 = x1, , qi=xi-1, xi i=1,2,..

)
A U T O K E Y
: 0 20 19 14 10 4 24.
k=3
k1 =3
q1 = k1 =3, q2 = x1 =0, q3 = x2=20, q4= x3 =19, q5= x4 =14, q6= x5 =10,q7= x6 =4
x7=24

2011 - 2012

Keystream : 3 0 20 19 14 10 4.
y1= x1+q1 (mod 26) = 0+3 = 3
y2= 20+0 = 20
y3= 19+20 = 39(mod 26) =13
y4= 19+14 = 33(mod 26) = 7
y5= 14+10 = 24
y6= 10+4 = 14
y7= 4+24 = 28 = 2
: 3 20 13 7 24 14 2.
:
D U N H Y O C.
:
: 3 20 13 7 24 14 2.
Keystream : 3 20 13 7 24 14 2.
k1 =3
x1 = y1- k= 3-3 = 0
x2 = y2- x1= 20-0 = 20
x3 = y3- x2= 13-20 = -7(mod26) = 19
x4 = y4- x3= 7-19 = -12(mod26) = 14
x5 = y5- x4= 24-14 = 10
x6 = y6- x5= 14-10 = 4
x7 = y7- x6= 2-4 = -2 (mod 26)= 24
: 0 20 19 14 10 4 24

A U T O K E Y
) Autokey cipher , 26
, .
)
MALVVMAFBHBUQPTSOXALTGVWWRG

12, 0, 11, 21, 21, 12, 0, 5, 1, 7, 1, 20, 16, 15, 19, 18, 14, 23, 0, 11, 19, 6, 21, 22, 22, 17, 6
k=1 26 ,
. k=19 .
:
THERE IS NO TIME LIKE THE PRESENT.
AUTOKEY

2011 - 2012


:
Plaintext: ATTACK AT DAWN...
Key:
QUEENL YA TTACK AT DAWN....
Ciphertext: QNXEPV YT WTWP...


Data Encryption Standard (DES)
DES , 64- , 16 , 56- , 16
,
K
64
M


K
C = DES(M,K)

64

M
DES-1

DES
64

64 56
. 8 (parity checks).
(plaintext) (ciphertext)
=DES(M, K), .

2011 - 2012

M- 64 ( IP)

( IP( IP-1 )) C- 64
1. DES-
16- 48 .
64 56 .
K PC-1.
8 (). parity
check , . 8
Ki , 1 i 16. 64- K, 56-
PC-1, 1.
57- , 57- K
Ki 4- ..
57
1
10
19
63
7
14
21

49
58
2
11
55
62
6
13

41
50
59
3
47
54
61
5

33
42
51
60
39
46
53
28

25
34
43
52
31
38
45
20

17
26
35
44
23
30
37
12

9
18
27
36
15
22
29
4

1. PC-1 (7bit*8=56bit)
8- , Ki 56
. Ki C0 D0.
28 56 C0, 28 D0.
16 (rounds) Ci-1 Di-1 , 1 i 16,
LS(i) 2,
Ci Di,.

2011 - 2012
1
LS(i) 1

2
1

3
2

4
2

5
2

6
2

7
2

8
2

9
1

10
2

11
2

12
2

13
2

14
2

15
2

16
1

2. LS(i)

2.
16 Ci Di
PC-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. PC-2 (6bit*8=48bit)
16 , 48 .
2 48 Ki , 1 i 16, K.

64 IP, 4.
58 , 50 ..
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
4. IP
32 L0, a 32 R0. 16
IP-1 .
16- . Li-1 Ri-1, 1 i 16,

2011 - 2012
, , 32 i- .
Li = Ri-1 Ri = Li-1 f(Ri-1, Ki)
f(Ri-1, Ki) 32
mod 2.
3 f.32- Ri-1
48- Bit-selection table E 5.
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
5. Bit-selection E(6bit * 8 = 48bit)

3. f(Ri-1, Ki)
f XOR (+) Ri-1 KI,
48 . 48 8 -. -
6 4 .
f(KI, Ri-1)=KI + E(Ri-1) =B1B2B3B4B5B6B7B8
6 S1, 6 S2 ..
4 . 8*4=32 -,
( P). -
6. S-. a1 , a2 , , a6 Sk , 1 k 8.
(Sk)ij , i (), 16, j () 23
45. a1a2a3a4a5a6 = 101001 k = 1, i = 11=3, j = 0100 = 4,
(S1)34 = 4, .. 0100. 32 .

2011 - 2012

0 1 2 3
0
1
S1 2
3

S2

S3

S4

S5

S6

S7

S8

14
0
4
15

4 13 1 2
15 7 4 14
1 14 8 13
12 8 2 4

6 7

15
2
6
9

11
13
2
1

3
10
15
5

10 6 12
6 12 11
12 9 7
11 3 14

11 12 13 14 15
5
9
3
10

9
5
10
0

0 7
3 8
5 0
6 13

0
1
2
3

15 18
3 13
0 14
13 8

0
1
2
3

10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8
13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1
13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7
1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12

0
1
2
3

7 13 14 3 0
13 8 11 5 6
10 6 9 0 12
3 15 0 6 10
12
11
2
8

14 6 11 3
4 7 15 2
7 11 10 4
10 1 3 15

8
1
11
7

10

4 1 7
2 12 4
1 11 10
12 7 1

4 9 7 2 13 12 0 5 10
8 14 12 0 1 10 6 9 11 5
13 1 5 8 12 6 9 3 2 15
4 2 11 6 7 12 0 5 14 9

6 9
15 0
11 7
1 13

10
7
13
14

11
13
7
2

10
3
13
8

1 2 8 5 11
4 7 2 12 1
15 1 3 14 5
9 4 5 11 12

12 4 15
10 14 9
2 8 4
7 2 14

0
1
2
3

2
14
4
11

6 8 5 3 15 13 0 14 9
1 5 0 15 10 3 9 8 6
8 15 9 12 5 6 3 0 14
13 6 15 0 9 10 4 5 3

0
1
2
3

12 1 10 15
10 15 4 2
9 14 15 5
4 3 2 12

9 2 6 8 0 13 3 4 14 7 5 11
7 12 9 5 6 1 13 14 0 11 3 8
2 8 12 3 7 0 4 10 1 13 11 6
9 5 15 10 11 14 1 7 6 0 8 13

0
1
2
3

4
13
1
6

11 2
0 11
4 11
11 13

14
7
13
8

15
4
12
1

0
1
2
3

13 2 8
1 15 13
7 11 4
2 1 14

4
8
1
7

6 15
10 3
9 12
4 10

0 8 13 3 12 9 7
9 1 10 14 3 5 12
3 7 14 10 15 6 8
4 10 7 9 5 0 15

5 10 6 1
2 15 8 6
0 5 9 2
14 2 3 12

11 1 10 9 3 14 5 0 12 7
7 4 12 5 6 11 0 14 9 2
14 2 0 6 10 13 15 3 5 8
8 13 15 12 9 0 3 5 6 11

6. S -
B S-. f P
S-. 16 L R
IP-1.

2011 - 2012

40
39
38
37
36
35
34
33

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

8
7
6
5
4
3
2
1

48
47
46
45
44
43
42
41

16
15
14
13
12
11
10
9

56
55
54
53
52
51
50
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

IP-1

P (4bit * 8 = 32bit)

64 .
1, , DES-1 ,
. :
Ri-1 = Li

Li-1 = Ri

f(Ri-1, Ki)

o DES
56
. :

DES
1. DES. DES

: S f (bijection) S S. f
f (f (x))= x x S.
:

,
.
.
C D ,
. DES

C D .
7. DES,
n
b.

7. DES
2. DES
DES k k'

2011 - 2012

:
DES .

C D , 28 .
0 ( 1),


.



.
.


.

,

i.
. 8
n
b
2n :
.

8. DES
3. (Complementation) DES.
x , ,
x.
1.
x K.
2. DES

DES.

: K
x

.
:

2011 - 2012
1. :
(IP IP-1) ,
. DES

,
K
.
, .
DES F
, - .

Feistel :

(Feistel)
-

Horst Feistel
- Shannon -
i - Ri-1 = Li-1
Li = Ri-1
Ri = (Li-1

F (Ri-1 , Ki))

,
.
2. (brute force)
DES. ,
.
6
. loop,

.
-

1. (brute force)
Input: a plaintext x and two ciphertext
and
Output: the key candidate for K
Processing:
1: for all non-tested key k do
2:
c
3:
if
then
4:
output k and stop.
5:
end if
6:
if =
then
7:
output and stop.
8:
end if
9: end for

10

2011 - 2012
4. DES 128-

DES 64- 56- .


1. ExtDES:
DES 128- ,
ExtDES. 112- DES
. 128- x :
x 64- , x = ||
=
, =
,
|| , 32-
= ||
||

|| , 32-
= ||
||

y =

x
:

4. 4

AES Advanced Encryption Standard - Joan Daemen Vincent


Rijmen Rijndael.
AES 128
128, 192 256 . 256 . AES
44 . AES
. AES
,
.

State , RoundKey .

11

2011 - 2012
1. KeyExpansionRoundKey Rijndael's
( ).
2.
1. AddRoundKey State RoundKey
xor ().

5.AddRoundKey
3.
1. SubBytes
. State e S; bij = S(aij).

6.SubBytes

2. ShiftRows State
.
.

7.ShiftRows

12

2011 - 2012
3. MixColumns ,
State. State
c(x)= 0x03 x3 + x2 + x + 0x02.

8.MixColumns

4. AddRoundKey
4. ( MixColumns)
1. SubBytes
2. ShiftRows
3. AddRoundKey

13

Vous aimerez peut-être aussi