Тобы: тммп 20-12 Қабылдаған: Шайкулова А. А. Алматы,2023



бет2/3
Дата05.05.2023
өлшемі90,65 Kb.
#90286
1   2   3
Байланысты:
ДЭС SAYA

Блоктық шифр
Блок шифрына кіріс n биттік Блок және k-биттік кілт болып табылады. Шығу кезінде шифрлау түрлендіруін қолданғаннан кейін n-биттік шифрланған блок алынады, ал кіріс деректеріндегі шамалы айырмашылықтар әдетте нәтиженің айтарлықтай өзгеруіне әкеледі. Блоктық шифрлар кейбір негізгі түрлендірулердің бастапқы мәтін блоктарына бірнеше рет қолдану арқылы жүзеге асырылады.
Негізгі түрлендірулер:
Блоктың бір жергілікті бөлігінде күрделі түрлендіру.
Блок бөліктері арасындағы қарапайым түрлендіру.
Түрлендіру блок түрінде жүргізілетіндіктен, жеке қадам ретінде бастапқы деректерді қажетті өлшемдегі блоктарға бөлу қажет. Бұл жағдайда бастапқы деректердің форматына қарамастан, мәтіндік құжаттар, суреттер немесе басқа файлдар болсын, олар екілік көрініске түсіндірілуі керек және содан кейін ғана блоктарға бөлінуі керек. Жоғарыда айтылғандардың барлығын бағдарламалық жасақтамамен де, аппараттық құралдармен де жасауға болады.



Д

0xC4

1100

0100

Ж

0xC6

1101

0110

а

0xE0

1110

0000

а

0xE0

1111

0000

у

0xF3

1111

0011

н

0xED

1110

1101

л

0xEB

1110

1011

с

0xF1

1110

0001

е

0xE5

1110

0101

а

0xE0

1110

0000

т

0xF2

1111

0010

я

0xFF

1111

1111

Шифр:C4,E0,F3,EB,E5,F2


Ключ: C6,E0,ED,F1,EO,FF


0000
1234

0000
5678

0000
9101112

0000
13141516

1100
17181920

0100
21222324

1110
25262728

0000
29303132

1111
333435366

0011
37383940

1110
41424344



1011
45464748

1110
49505152

0101
53545556

1111
57585960

0010
61626364

58 50 42 34 26 18 10 02


60 52 44 36 28 20 12 04
62 54 46 38 30 22 14 06
64 56 48 40 32 24 16 08
57 49 41 33 25 17 09 01
59 51 43 35 27 19 11 03
61 53 45 37 29 21 13 05
63 55 47 39 31 23 15 07



1111

F

1100

C

1001

9

0000

0

0100

4

0100

4

1100

C

1000

8

1111

F

1100

C

1111

F

1000

8

0010

2

0000

0

1011

B

0000

0

Осылай екіге бөлеміз


L0=F94CFF2B R0= C048C800

0000

0000

0000

0000

1101

0110

1111

0000

1234

5678

9101112

13141516

17181920

21222324

25262728

29303132



1110

1101

1110

0001

1110

0000

1111

1111

33343536

37383940

41424344

45464748

49505152

53545556

57585960

61626364

Мәліметтерді шифрлау алгоритмінің сипаттамасын аяқтау үшін 48 разрядты K(i), i=1...16 кілттерін алу алгоритмін беру қалады. Әрбір итерацияда бастапқы K кілтінен есептелетін жаңа кілттік мән K(i) пайдаланылады. K 8,16,24,32,40,48 позицияларында орналасқан сегіз паритет биттері бар 64 биттік блок, 56, 64.


Басқару разрядтарын алып тастау және қалғандарын қайта реттеу үшін кілтті бастапқы дайындаудың G функциясы қолданылады.
57 49 41 33 25 17 09
01 58 50 42 34 26 18
10 02 59 51 43 35 27
19 11 03 60 52 44 36

63 55 47 39 31 23 15


07 62 54 46 38 30 22
14 06 61 53 45 37 29
21 13 05 28 20 12 04



1111

1100

1111

1100

1111

1000

1000

1000

0100

1001

0100

1001

0000

1100

1111 1111 1111 0000 1000 1000 0001


1001 1001 0001 0001 0011 0011 1001



1111

1111

1111

0000

1000

1000

0001

1001

1234

5678

9101112

13141516

17181920

21222324

25262728

29303132



1001

0001

0001

0011

0011

1001

33343536

37383940

41424344

45464748

49505152

53545556



0110

6

1111

F

0111

F

1001

9

1010

1

1000

8

1010

A

0100

4

1101

D

1100

C

1010

A







0011

3






-Ключ 1 раунда

R0= FCF87088



1111

1100

1111

1000

0011

0000

1000

1000
1111 1001 1111 0000 0110 0001 0001 00

f функциясының мәнін есептеу үшін келесі матрицалық функциялар қолданылады:


E - 32-биттік тізбекті 48-битке дейін кеңейту,
S1, S2, ... , S8 - 6 разрядты блокты 4 разрядты блокқа түрлендіру,
P - 32 биттік тізбектегі биттік ауыстыру.
Кеңейту функциясы Е 3-кестеде анықталған. Осы кестеге сәйкес E(R(i-1)) бірінші 3 биті 32, 1 және 2 биттері, ал соңғылары 31, 32 және 1 биттері болып табылады.

32 01 02 03 04 05


04 05 06 07 08 09
08 09 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 01

Ro=1111 1111 1111 1111 1010 0001 0100 0101 0000 0000 1111 0011


Ko=0110 1111 0001 0111 0110 0111 0100 1000 0100 0010 0110 0011
1001 0000 1110 1000 1110 0110 0000 1101 0100 0010 1001 0000
6-БИТ ,S- БЛОК
100100 001110 100011 100110 000011 010100 001010 010000
S1 S2 S3 S4 S5 S6 S7 S8

номер строки номер столбца


S1 10=2 0010=2 4=0100
S2 00=0 0111=7 8=1000
S3 11=3 0001=1 12=1100
S4 10=2 0011=3 8=1000
S5 01=1 0001=1 15=1111 F
S6 00=0 1010= A 10 6=0110
S7 00=0 0101 =5 15=1111
S8 00=0 1000=8 3=0011






Номер столбца
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15




Н
о
м
е
р

с
т
р


о
к
и

0
1
2
3

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

S1

0
1
2
3

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

S2

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

S3

0
1
2
3

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

S4

0
1
2
3

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

S5

0
1
2
3

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

S6

0
1
2
3

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

S7

0
1
2
3

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

S8

Нәтижесінде 32биттік блок аламыз



0100

1000

1100

1000

1111

0110

1111

0011

1234

5678

9101112

13141516

17181920

21222324

2526728

29303132



1010

0011

0011

1111

1000

1101

1100

1001

Конечная перестановка
16 07 20 21
29 12 28 17
01 15 23 26
05 18 31 10
02 08 24 14
32 27 03 09
19 13 30 06
22 11 04 25
1010 0011 0011 1111 1000 1101 1100 1001
A 3 3 F 8 D C 9
F= A33F8DC9 (XOR)модульне саламыз
L0=1111 1001 0100 1100 1111 1111 0010 1011
F= 1010 0011 0011 1111 1000 1101 1100 1001
0101 1010 0111 0111 0111 0010 1110 0011 = R1
5 A 7 7 7 2 E 3
Қорытынды: C048C800 5A7772E3




Достарыңызбен бөлісу:
1   2   3




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет