«Компьютерлік жүйеде ақпаратты қорғау» пәнінен оқу-әдістемелік кешен



бет16/31
Дата21.07.2017
өлшемі3,39 Mb.
#21805
1   ...   12   13   14   15   16   17   18   19   ...   31

RSA шифрлау жүйесі


Шифрлау үдерісінде негізгі жолында екі кілт ашық (public) және жабық (private) кілттер қолданылады. Бұл кілттер бір-бірімен өзара байланысты, бірінің көмегінсіз екіншісін ашу мүмкін емес. Сондықтан ашық кілт көмегімен тек деректерді шифрлауға ғана болатындықтан оларды таратуға болады. Жабық кілт көмегімен деректерді бастапқы түрге түрлендіреді және бұл кілт меншік иесінің өзінде ғана сақталуы тиіс.

70-ші жылдардың ортасында, 80-ші жылдардың басында RSA алгоритмі пайда болды. RSA алгоритмі шифрлаудың ассиметриялық түріне жатады және артықшылығы шифрланған деректі ашық кілт көмегімен бастапқы түрге түрлендіре алмауы.

Алгоритмнің негізгі орындалу барысы төмендегідей:

1. Алдымен p және q екі үлкен жай сандарды генерациялау керек.

2. n=pq табу қажет.

3. phi=(p-1)(q-1) тең болатын сандарды таңдау.

4. d саны генерацияланады, яғни ed=1(mod phi)

5. n және е сандары ашық кілт ретінде жарияланады, егер d - жабық кілт болып саналады.

Хабар y=xe(mod n) формуласы арқылы шифрланады. Мұндағы х – бастапқы хабар, ал у – шифрланған хабар. Кері шифрлау үшін x=yd(mod n) формуласы қолданылады. Алгоритмнің сенімділігі сол, ол d жабық кілтті қалыпқа келтіру үшін p және q сандарын білу керек.
ЖҰМЫСТЫ ОРЫНДАУ РЕТІ


  1. Теориялық мағлұматпен танысу.

  2. Теориялық мағлұматқа талдау жасау.

  3. Бақылау сұрақтарына жауап беру.

  4. Жеке тапсырмаға талдау жасап, мысалдар келтіру.


БАҚЫЛАУ СҰРАҚТАРЫ

  1. DЕS стандартының негізін қалаушылар кімдер?

  2. Бастапқы орын алмастыру қалай орындалады?

  3. Кілт түрлендіру жолдары.

  4. Хабарды шифрлау жолы.
  5. RSA шифрлау жүйесінің орындалу жолы.



ЖЕКЕ ТАПСЫРМАЛАР
DЕS және RSA стандарттарының көмегімен ақпаратты шифрлау мысалын келтіріңіздер.
Практикалық сабақ №12

Тақырыбы: «RIJNDAEL алгоритмі». Симметриядық криптожүйелер (DES стандарты). AES шифрлау алгоритмі

Теориялық мағлұмат

АҚШ стандарттар және техологиялар үлттық институты (NIST) 1997 жылы жаңа криптографиялық стандарт таңдап алу үшін сынақ жариялады (www.nist.gov қара). Дүние жүзіңдегі ең әйгелі криптологилық ұйымдар NIST жұмысына үлесін қосты.

Сынаққа 15 ұсыныс келіп түсті. Комитет мамандары екі жыл бойы жүмыс жасап, ең жақсы деген 5 талапкерді таңдап алды.



Конкурс финалына келесі алгоритмдер шықты: МАRS, ТWOFISH, RC6 (АҚШ), RIJNDAEL (Бельгия), SERPENT (Ұлыбритания, Израиль, Норвегия). Конкурс 2000 жылы мынандай нөтижслермен аякталды:

МАRS - 13 дауыс (Д. Копперсмит және баскадары)

ТWOFISH-3 1 дауыс (Б. Шнайер және басқалары)

RC6 - 23 дауыс (Р. Ривест жонс басқалары )

RIJNDAEL - 86 дауыс

SERPENT- 59 дауыс (Р. Андерсон).

Женімпаз болып бельгиялық RIJNDAEL алгоритмі аталды

(www.nist.gov/encryption/aes қара). Авторлары - Joan Daemen және Vincent Rijmen.



Осы уақыттан бастап алгоритмнен алдындағы патенттік шектеулер алынып тасталынған. Алгоритмді сіз тегін шектеусіз қолдануыңызға рүқсат бар.

RIJNDAEL алгоритмінің атауы жайындағы Р. Андерсонның ([1], 936. қара) ескертуін келтіріп кетейік: "Егер сіз Голландия, Бсльгия немесе Оңтүстік Африкадан болсаңыз, онда RIJNDAEL сөзінің аталуы ойындағыңыздай болады. Әйтпссе ол <<raindahl>> тәріздес окылады. RIJNDAEL сөзі "Ridgemen " емес, "Raymenі" деп окылады. "

15 алгоригмнің толық сипаттамасын жоғарыда жазылған NIST институтынын серверында таба аласыз. Біз RIJNDAEL алгоритмінің негізгі қадамдарын ғана қарастырамыз. Программаның коды 9-ші бөлімде келтірілген.



RIJNDAEL. итерациалық блоктық шифрға жатады. Кілт пен блоктардың ұзындығы бір -біріне байланыссыз 128, 192, 256 битке тең болуы мүмкін.

Аралык нәтижелер 4 жолы бар массивте жазылады. Төменде оны сәйкесінше нәтижелер массивы мен кілтшелер массивы деп атайық. (Ағылшышиа state, орысша состоянис деп аударган). Шифрлау блогы үшін Nь багана, ал кілт үшін Nк бағана қолданылады. Nк кілт ұзындыгын 32 бөлгендегі шығатын санға тең. NЬ блок ұзындығын 32 бөлгендегі шығатын санға тең.

Раунд саны Nб және Nk сандарына тәуелді (4.7.-кестесін қара).

4.7.-кестесі



Nr Nb =4 Nb =6 Nb =8

Nk = 4 10 12 14

Nk = 6 12 12 14

Nk = 8 14 14 14


Криптоалгоритмде қолданылатын операциялар GF(28) өрісіне тиісті элементтерде анықталған. GҒ(28) өрісінің элементтері болып дәрежесі N<8 екілік көпмүшелер саналады. 0 1 0 1 0 1 1 1 байтына келесі көпмүше сәйкес

X6+x4+x2+x+1

Қосу амады әдеттегідей көпмүшелерді қосу жәнс ұқсас мүшелерін ХОR операциясы көмегімен біріктіру арқылы орындалады.

(x6 +x4+x2+x+1) + (x7+x+1)=x7+x6+x4+x2

немесе


0 10 10 111 + 1 0 0 0 0 0 11 = 1110 10 1 0 0

Екі көпмүше үшін көбейту амалын қарастырайық.

а(х)= a3x3+a2x2+a1x+a0x



b(x)=b3x3+b2x2+b1x+b0x

Нәтиже ретінде козффициеіггтсрі келесідсй С(х) көпмүшесін аламыз.

C0 = a0 b0;

C1 = a1 b0 + a0 b1;

C2 = a2 b0 + a1 b01 + a0 b2;

C3 = a3 b0 + a2 b1 + a1 b2 + a0 b3;

C4 = a3 b1 + a2 b2 + a1 b3;

C5 = a3 b2 + a2 b3; C6 = a3 b3

Енді нәтижені дәрежесі 4-тен аспайтын копмүше модулі бойынша алу қажет. Алгоритм құрастырушылар келесі көпмүшені үсынған:

Ф(x) = x4+1

Бүл көпмүше үшін келесі теңдік орындалады.

x mod ф(х) = xmod 4

Арқылы нәтижеміз

d(х)= d3x3+d2x2+d1x+d0x
көпмүшесі болады, мүндағы
d0 = a0 b0+ a3 b1+ a2 b2+ a1 b3;

d1 = a1 b0 + a0 b1+ a3 b2+ a2 b3;

d2 = a2 b0 + a1 b01 + a0 b2+ a3 b3;

d3 = a3 b0 + a2 b1 + a1 b2 + a0 b3;


Акырлы өрісте кез келген нөлге тең емес z элементі үшін мультипликативті кері элемент z-1 анықталған, және zz-1 = 1

Өзара кері көпмүшелер мысалы:

4 + 1)(x7 + х5 + х4 + х2)=1



Раунд төрт түрлендіруден тұрады: нәтижелер массивындағы байттарды ауыстыру; жолдарды жылжыту; бағаналарды араластыру; раундтық кілтті қосу.

Rijndael (AES, Advanced Encryption Standart) алгоритмі


Rijnael алгоритмін өңдеуде үш категория қабылданған:

  1. Барлық белгілі шабуылдарға тұрақтылығы

  2. Орындалу жылдамдығы және әр түрлі үлгідегі кодтың жинықтылығы

  3. Алгоритмінің қарапайымдылығы.

Алгоритмнің сипаттамасы

Rijnael - бұл шифрлау блогы және кілт ұзындығы әртүрлі блоктық шифр. Шифрлау блогы мен кілт ұзындығы 128,192 және 256 бит құрайды. Блокты шифрлау бірнеше қайталану кезінде орындалады, мысалы, блок және кілт ұзындығы 128 бит болғанда алгоритм 10 қайталану (раунд) орындайды.



Rijnael алгоритмі DES шифрлау жүйесіне қарағанда тұрақты қайталануы жоқ. Оның орнына әрбір қайталану қабат деп аталатын әртүрлі қайтымды түрлендірулерден тұрады. Сұлба түрінде әрбір қайталануды 4 операция түрінде қарастыруға болады. 128 биттен және кілттен тұратын шифрлау нұсқасын қарастырайық. Шифрлау алгоритмін байттардың тікбұрышты массиві түрінде қарастыруға болады. Мұндағы байттар деректер блогын келесі түрде түрлендіреді:
, ,

Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   ...   31




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

    Басты бет