Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ибизи.docx
Скачиваний:
26
Добавлен:
01.03.2025
Размер:
190.19 Кб
Скачать

19. Қарапайым орын ауысу шифрі. Күрделі орын ауысу шифрі. Программалау мысалдары.

20.Гаммалау әдісімен шифрлеу. Кездейсоқ сандарды генерациялау әдістері. Программалау мысалдары.

Гаммалау әдісі.

Бұл әдісте шифрленетін мәтіннің символдары гамма деп аталатын арнаулы тізбектің символдарымен қосылады. Кейде белгілі бір заң бойынша ашық деректер үстіне шифрдің гаммасы беттестіріледі. Сондықтан бұл әдіс гаммалау деп аталады, ал шифрдің гаммасы - белгілі бір алгоритм бойынша ашық деректерді шифрлеуге және шифрленген деректерді ашуға арналып жасалған жалған кездейсоқ (pseudo-random) тізбек.Гаммалау арқылы шифрлеудің мәні мынада: жалған кездейсоқ сандар бергішінің көмегімен шифрдің гаммасын генерациялау және алынған гамманы бастапкы мәтінге кайтадан кері аударуға болатындай етіп (мысалы, екі модулі бойынша қосу операциясын пайдалану арқылы) беттестіру.Мына жағдайды атап өтуіміз керек. Шифрлеу алдында ашык деректерді, ұзындығы бірдей, әдетте 64 биттен, Т0 (i) блоктарына бөледі. Шифрдің гаммасы осыған ұксас, ұзындығы Гш(і) блоктарынан тұратын тізбектер түрінде құрылады. Шифрлеу теңдеуі мына түрде болады: Тш(і) = Гш(i)+ Т0 (i) , і=1 ... М.

Бүл жерде Тш(і) - мәтін-шифрдің і-ші блогі; Гш(i)- шифр-гамманың і-ші блогі; Т0 (i) - ашық мәтіннің і- ші блогі; М- ашық мәтін блоктарының саны.Шифлеуді ашу процесі шифр гаммасын кайтадан генерациялау және осы гамманы шифрленген деректер үстіне салудан тұрады. Шифрлеуді ашу теңдеуінің түрі мынадай: Т0 (i) = Гш( ) Т0 (i) Осындай әдіспен алынған шифрмәтін, ашуға киындык тудырады, өйткені оның кілті айнымалы шама. Шифр гаммасы әр шифрленген блок үшін кездейсок түрде өзгеріп тұруы кажет. Егер гамма периоды барлык шифрленген мәтін ұзындығынан көп болса және шифрді бұзушыға бастапкы мәтіннің ешкандай бөлігі белгілі болмаса, онда мұндай шифрді тек кілттің барлық варианттарын түгел тікелей таңдау аркылы ғана ашуға болады. Бұл жағдайда шифрдің криптограммалык беріктілігі кілт ұзындығымен аныкталады.

21) Қазіргі заманғы симметриялық біркілтті криптожүйелерді программалау әдістері. Des, гост 28147-89.

Ресейлік ГОСТ 28147-89 шифрлеу стандарты.

Бұл стандарт криптографиялық талаптарга сай жасалған және қорғалатын ақпарат құпиялығының дәрежесіне ешкандай шектеу қоймайды. Деректерді шифрлеу алгоритмі - 256 биттік кілті бар 64 биттік блокты алгоритм. Мынадай шартты белгілер пайдаланылады: L және R - сол (left) және оң (right) биттер тізбектері; LR - L және R тізбектерінің конкатенциясы. LR биттер тізбегінің ұзындығы L және R. ұзындықтарының косындысына тең. LR биттер тізбегінде L тізбегінің биттерінен соң R биттері жазылады; - екі модулі бойынша битті битке қосу операциясы. [+] – 232 модулі бойынша екі 32-разрядтық екілік сандарды косу операциясы; [+ ]' - (232-1) модулі бойынша екі 32-разрядтық екілік-сандарды косу операциясы.Екі бүтін а және b сандары 0 а, b 2п-1, яғни а=(а32а31 ...а2а1)және b=(b32b31 ... b2b1) екілік түрде берілсін дейік: а=а3223131230+ ... 2211; b=b32231+b31230+ ... +b221+b1.

[+] және [+]' операциялары келесі ережеге сәйкес орындалады:

а[+]b =а+ b, егер а+ b <232,

а[+]b =а+ b -232, егер а+ b 232;

а[+]' b =а+ b егер а+ b <232-1,

а[+]' b =а+ b -(232-1), егер а+ b 232-1.

Блок ұзындығы 64 биттен тұрады. Келесі негізгі ақпараттар керек: кілт және ауыстыру кестесі. Кілт – бұл әрқайсысының ұзындығы 32 бит олатын сегіз элементтен тұратын тізбек, әрі қарай оны К символымен белгілейміз, ал элементтерді – k1,k2,k3,k4,k5,k6,k7,k8 деп аламыз.Ауыстыру кестесі – сегіз жолдан он алты бағаннан тұратын матрица – Hij. i жолы мен j бағанының қиылысуындағы әрбір элемент 4 биттен тұрады.

Деректерді шифрлеудің американдық DES әдісі. DES алгоритмінің негізгі жұмыс тәртіптері.

Деректерді шифрлеудің американдық стандарты DES

Деректерді шифрлеудің стандартын DES (Data Encryption Stan­dard) 1977 жылы АҚШ-тың Ұлттық стандарттар бюросы қабылдаған.

DES стандарты АҚШ-тың мемлекеттік және коммерциялық ұйымдарындағы маңызды ақпараттарға рұқсатсыз енуден қорғау үшін қолданылады.

1 сурет. DES алгоритмінің жалпылама сұлбасы

Алгоритмнің негізгі жағымды жақтары:

  • ұзындығы 56 бит болатын бір ғана кілт пайдаланыла-ды;

  • DES стандартына сәйкес болатын программалардың бір дестесінің көмегімен хабарларды шифрлеген соң, осы стандартқа сәйкес кез – келген шифрды ашу программалар дестесін пайдалануға болады;

  • алгоритмнің қарапайымдылығы өңдеудің жоғары шапшаңдығын қамтамасыз етеді;

  • алгоритмінің жеткілікті түрдегі криптоберіктілігі.

DES алгоритмі орын ауыстыру мен ауыстырулар қисындасуын пайдаланады. DES 64-биттік кілт көмегімен 64-биттік деректер блогын шифрлеуге мүмкіндік береді. Кілттегі 8 бит - жұптылықты бақылауға арналған тексеру биттері болып табылады. DES алгоритміндегі шифрлеу процесінің жалпылама сұлбасы:

ең алдымен 64 биттік блоктың биттері орын ауыстырылады (ол шифрлеудің 16 циклында өтеді), содан кейін биттердің соңғы орын ауыстыруы болады.

DES алгоритмінде мынадай шартты белгілер пайдала-нылады:

  • L және R - (сол (left) және оң (right)) биттер тізбектері;

  • LR - L және R тізбектерінің конкатенациясы, LR биттер тізбегінің ұзындығы L және R ұзындықтарының косындысына тең. R биттер тізбегі L биттер тізбегінен кейін жазылады;

- екі модулі бойынша битті битке қосу операциясы.

Бастапкы мәтін сақталатын файлдан кезекті 64-биттік (8-байттық) Т блогы оқылады. Бұл Т блогы IP бастапқы орын ауыстыру матрицасы көмегімен түрлендіріледі (2-кесте). Т (64 бит) енгізілген блоктың биттері IP матрицасының көмегімен орналастырылады: Т блогінің 58 биті 1-ші бит болады, 50-ші биті 2-ші т.б.

Бұл ауыстыруды келесі өрнек түрінде жазуға болады Т0 = IP(T). Алынған биттер тізбегі Т0 екі тізбекке бөлінеді: L0 – сол жақ немесе үлкен биттер, R0-оң немесе кіші биттер, әрқайсысы 32 биттен құралады.

2-кесте. Алғашқы орын ауыстыру матрицасы IP

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

45

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

Содан соң 16 кадамнан тұратын шифрлеудің итеративтік процесі орындалады.

Ti - i-ші итерацияның нәтижесі болсын:

Тi = Li Ri, мұндағы Li = t1t2...t32 (алғашқы 32 биттер); Ri = t33t34...t64 (соңғы 32 биттер). Онда i-ші итерацияның нәтижесі келесі формуламен сипатталады:

Li = Ri-1 , i = 1, 2,…,16;

Ri = Li-1 f (Ri-1,Ki), i = 1,2,…,16.

f функциясы шифрлеу функциясы деп аталады. Оның аргумен­ттері болып алдыңғы қадамнан алынған Ri-1 тізбегі және 64-биттік К шифрінің түрлендірілу нәтижесі болатын 48-биттік Ki кілті табылады.

Итерацияның соңғы қадамында R16 и L16 тізбектері алынады (орындары ауыстырылмайды), және олар 64-биттік R16 L16 тізбегіне конкатенация-ланады.

Шифрлеудің соңында биттер позицияларын IP-1 кері ауыстыру матрицасының көмегімен биттерді алғашқы орнына қалпына келтіру орындалады(3-кесте).

3-кесте. Кері ауыстыру матрицасы IP -1

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

IP-1 матрицасының элементтері мен IP матрицасының элементтері қалай байланысқанын 4 кестеден көрге болады.

4-кесте. Матрицалар элементтерінің байланысы

IP -1 матрицасы элементтері

IP матрицасы элементтері

40

8

48

16

56

01

02

03

04

05


Деректерді кері шифрлеу процесі шифрлеу процесіне қарағанда инверсті. Барлық іс-әрекет кері тәртіппен орындалады.

Яғни шифрленген деректер алдымен IP -1 матрицасының көмегімен орын ауыстырылады. Содан соң R16L16 биттер тізбектерімен шифрлеу процесінде болатын амалдардың кері түрі орындалады.

Кері шифрлеудің итеративті процесі келесі формулалармен сипатталады:

Ri-1 = Li , i = 1, 2,…,16;

Li-1 = Ri f (Li,Ki), i = 1,2,…,16.

Сонымен, кері шифрлеу процесі үшін алмастырылған R16L16 блогіне бірінші итерацияда К16 кілті қолданылады, екінші итерацияда К15 кілті т.б. Ал 16-шы итерацияда К1 кілті қолданылады. Соңғы қадамда L0 и R0 тізбектері алынады және олар 64-биттік тізбекке конкатенацияланады L0R0. Осы 64 биттік тізбек элементтері ең соңында IP матрицасына сәйкес орын алмастырады. Бұл түрлендірудің нәтижесі биттердің алғашқы 64-биттік тізбегі.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]