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


Симметриялық криптожүйелер



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

DES (Data Encryption Standard). 1972 жылы NBS (National Bureau of Standards, АҚШ) стандартты криптографиялық алгоритм құрастыруға сынақ жариялады. Бірақ келіп түскен бір де бір ұсыныс қойылып отырған талаптарға сай келмеді. Тек 1974 жылы Lucifer атты алгоритм IBM корпорациясында жұмыс істеуші крипографтар атынан ұсынылды. Олар – Рой Адлер, Дон Копперсмит, Хорст Файстель, Эдна Кроссман және басқалары. NBS бюросы NSA ұйымынан алгоритмді бағалауда көмек сұрады. 1976 жылы DES федералдық стандарт ретінде бекітілді.

Енді DES сипаттауға көшейік. DES блоктық алгоритм болып табылады. Ашық мәтін ұзындығы – 64 бит. Кілт ұзындығы – 56 бит. Алгоритмде 16 раунд орындалады, яғни бірдей тәсілдердің комбинациясы ашық мәтінге 16 рет қолданылады. Алгоритмнің негізгі қадамдарын қарастырайық. 1 және 2 суреттердегі кілт түрлендіру алгоритмі және шифрлану алгоритмінің сүлбелері келтірілген.

Бастапқы орын алмастыру.

Алгоритм басталмас бұрын ашық текст биттері үшін орын алмастыру процедурасы орындалады. Рk деп k-ші жаңа позицияға орналасатын ашық текст битінің нөмірін белгілейік. Р0 = 0, Р1 = 58 болсын. Алдыңғы төрт байттың құрамындағы бірінші бит позицисына келесі бит орналастырылады.

P8i+1= P1 + P8i , i = 0.3 (1)

Бесінші байттың бірінші битінің позициясы былай есептеледі:

P8i+1 = P1 - 1 , i = 4

i = 5,6,7 болғандағы 8i+1 позицияларына орналасар бит нөмірлері (1) формуласы арқылы есептеледі. Қалған позицияларға келесі нөмірлі биттер орналасады:

P8i+j+1 = P8i+1 – 8j , i = 0.7 , j = 1.8

Ақыры мынадай орын алмастыру кестесін аламыз.

1-кесте. Бастапқы орыналамастыру


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

Кілт түрлендіру



  1. 64-биттік кілттің әрбір сегізінші биті ескерілмейді. Олар тақтық қасиетін тексеру үшін қолданылады. Кілттің биттері алдыңғы пункте сипатталған тәсілмен орын алмастырылады.

  2. 56 биттік кілт екі тең бөлікке бөлінеді. Раунд нөміріне байланысты кілт бөліктері бір немесе екі битке солға жылжытылады. 1,2,9,16-шы раундтарда кілт бір битке жылжиды. Қалған жағдайларда 2 бита жылжиды.

  3. 56 биттің 48 таңдап алынады. Бит орналасу реті де өзгертіледі. Бұл операция сығылатын орын алмастыру деп аталады (2-кестеге қараңыз).






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




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

    Басты бет