Алгоритмдер жєне деректер структурасы



бет26/93
Дата07.01.2022
өлшемі2,09 Mb.
#18238
1   ...   22   23   24   25   26   27   28   29   ...   93
1-сурет. Шифрлау алгоритмінің сүлбесі
Сонымен әрқайсысының ұзындығы 48 бит 16 раундтық кілт жасалады.

2-кесте. Сығылатын орын алмастыру




14

17

11

24

1

5

3

28

15

6

21

10

23

19

12

4

16

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




2-сурет. Кілт түрлендіру алгоритмі

Хабарды шифрлау

Демек біз ұзындығы 64 бит бастапқы мәтін және ұзындығы 48 бит кілтке иеміз. Бастапқы мәтін және ұзындығы 48 бит кілтке иеміз. Бастапқы хабар кілт іспеттес тең екі бөлікке бөлінеді. Оң бөлік кілт ұзындығына дейін кеңейтіледі. Биттердің орын алу реті де өзгереді (4.3 кестесін қара). Бұл қадамның негізгі мақсаты - әр шифрмәтін битінің әрбір шифрмәтін және кілт биттеріне тәуелділігін арттыру.

3-кесте. Кеңейтетін орын алмастыру.


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

Деректердің оң жағы Ri және раундтық Ki үшін қосу операциясы орындалады, яғни Ri  Ki мәні есептелінеді.

48 бит сегіз 6 биттік блокшаға бөлінеді. Әрқайсысына S-блок деп аталатын кестелердің көмегімен ауыстыру операциясы қолданылады. DES алгоритмінде S-блоктардың атқаратын маңызы зор. Алгоритмнің сенімділігін арттыратын осы блоктар. Барлығы 8 S-қолданылады (4.4-кестесінде көрсетілген). Бастапқы блоктың бірінші және алтыншы битінің конкатенциясы 0-ден 3-ке шейінгі сан құрайды, ол сан кесте жолын анықтайды. Ортасындағы төрт бит конкатенцияланып 0-ден 15-ке шейінгі сан құрайды, ол сан кесте бағанасын анықтайды. Яғни, 4-биттік нәтиже сәйкес жолмен бағананың қиылысуында орналасады.

4-кестесі. S-блоктар.



1-ші S-блок:


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

2-ші S-блок:

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

3-ші S-блок:

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

4-ші S-блок:

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

5-ші S-блок:

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

6-ші S-блок:

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

7-ші S-блок:

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

8-ші S-блок:

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

Енді 32 биттік блок үшін Р блогінің көмегімен тікелей орын алмастыру орындалады. Блок биттері қай позицияға жылжитыны 4.5-кестесінде көрсетіледі.

5-кесте. Р блок.



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

Алынған нәтиже блоктың сол бөлігімен қосылады.

Оң және сол бөліктер орын алмастырып, келесі раунд басталады.

Соңғы орын ауыстыру. Соңғы орын ауыстыру бастапқы орын ауыстыру операциясына кері операция болып табылады. (4.6-кестесін қара). Соңғы раундтың алдыңғы раундтардан айырмашылығы одан кейін блоктың сол және оң жақтары орын алмастырмайды.

6-кесте. Соңғы орын алмастыру.



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




Достарыңызбен бөлісу:
1   ...   22   23   24   25   26   27   28   29   ...   93




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

    Басты бет