Лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі

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

· RSA схемасы

· RSA қол қоюы.

RSA шифрлау жүйесі. Бірінші болып және ең көп тараған ашық кілтті криптографиялық жүйе 1978 жылы RSA деп аталатын жүйе ретінде ұсынылған. RSA жүйесінің атауы жүйені құрушылардың авторларының бас әріптерінен алынған, олар Р. Ривеста, А. Шамира, Л. Адлеман. Ол өте көп қиын бүтін сандарды қарапайым көбейткіштерге жіктеуге негізделген. Көбейту нәтижесінде шифрлау ашық кілтті элементі қолданыла алады. Ағымдық қарапайым сандар шифрды қайта ашу үшін қолданылады, бірақ оны орнына қайта келтіру мәселесі криптоаналитиктердің шифрды бұзу жұмысына қарсы тұрып келеді. Осылайша біржақты құпия функцияны құруға болады. Мысал ретінде авторлардың шифрлау принципін көрсетейік.

· Шифрлау ашық кілті: n және e саны

· Шифрды ашу жабық кілті: p,q және d саны

· лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ақпаратын шифрлау алгоритмі:

§ лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru

· с жабық ақпаратын қайта ашу алгоритмі:

§ лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru

лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru қайта ашу алгоритмін табудың жалғыз әдісі, және e сандары белгілі болғанда, n cанын қарапайым көбейткіштерге көбейтіп, p және q сандарының мәнін, сонымен бірге d санының мәнін табу керек. p және q сандарының разрядтығын дұрыс таңдау есептің n факторизациясын іс-жүзінде мүмкін емес етеді (RSA авторлары бірінші 40-разрядтан төмен емес ондық сандарды қолдануды ұсынған). Келтірілген схема бойынша шифрлау келесі суретте көрсетілген (сурет 1), мұндағы е=7, d=3 және n=33.

 
  лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru

Сурет 1 - RSA схемасы бойынша шифрлау

RSA авторлары өздерінің жүйелерінің жұмыс істеу принциптерін жазғанда төмендегі сөзді таңдап алды:

ITS ALL GREEC TO ME (Мен үшін мұның бәрі түсініксіз)

Бұл мәтінді үлкен санға айналдыру үшін сөздің арасындағы бос аралықты 0, А әрпін – 1, В әрпін – 2, С әрпін – 3, ... , Z әрпін – 26 деп кодтап алды. Әр символды көрсету үшін әрқайсысына 5 екілік разряд бөлді. Нәтижесінде келтірілген мәтінге келесі сан тең болды:

лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru = 09201900011212000718050511002015001305.

Шифрлау үшін авторлар e=9007 және

n=114381625757888867669235779976146642010218296721242362562651842935706935245733897830597123563958705058989075147599290026879543541 сандарын таңдап алды.

Шифрлағаннан соң

c = лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (mod n)=

санын алды. Кездейсоқ таңдап алынған n саны 64 және 65 дәрежелі p және q сандарының көбейтіндісі. Егер мәтін өте үлкен болған жағдайда онымен бір сан ретінде жұмыс жасау үшін оны блоктарға бөлу керек, әр блокты жеке сан ретінде қарастырып және шифрлау барысында блоктар байланысын қолдану қажет.

RSA схемасы. RSA [Schn 96] шифрлау үшін де және қол қою үшін де қолданылады.

P жәнеq – үлкен қарапайым сандарын таңдап аламыз. n = p×q модуль болсын, келесі функция

j(n) = (p-1)×(q-1) –Эйлерфункциясы.

Кез-келген 1£е<j(n) аламыз, ол ҮОБ(е, j(n)) = 1.

Онда тек қана жалғыз

1£d <j(n) болады, ол ed(modj(n)) = 1 болады.

RSA шифрлау жүйесі – ашық кілтті жүйе, мұндағы
е –ашық, ал d – құпия кілттер. Егер 0£x<n – ашық ақпарат болса, онда шифрланған ақпарат келесі түрде алынады:

С = х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (mod n).

Шифрды ашу мүмкіндігі келесі теорема бойынша анықталады:

Теорема 1.Егер p және q – үлкен қарапайым сандар болса, ed(modj(n)) = 1, онда" х, 0£x<n:

лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ) лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modn) = x.

Дәлелдеу.ҮОБ(х, n) =1 деп алайық. Онда

лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ) лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru = х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru = x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru .

сондықтан Эйлертеоремасы бойынша

лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ) лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modn) = (х( x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modn)))(modn)= (x× 1)(modn) = x.

Егер

ҮОБ(х,n) ¹ 1

болса, онда

х =0(modn), немесеҮОБ(х,n) = p, немесеҮОБ(х,n) = q.

Егер

х =0(modn)

болса, онда

х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru =0(modn), ҮОБ(х,n) = p

деп аламыз.

Онда

х = х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru p,

мұндағы (х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru , n) =1.

х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru = x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru = px лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru p лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ºy(modpq).

Егерmp= y(mod(pq)) болса, ондаmp = pqk + y, сәйкесінше, y = py лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru . онда
mºy лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modq. Сәйкесінше,

x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ((pх лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ) лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ) лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ºy лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modq).

Ферматеоремасы бойынша z лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru º 1 (modq). Сондықтан

x= x лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru p(mod(pq)) = y (modn) ºх лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (modn),

теорема дәлелденді.

Ашық және шифрланған мәтіндер тиімді анықталынады, егер жылдам дәрежеге жоғарылату алгоритмі арқылы ежәнеd белгілі болса. Егер d құпия кілтін белгілі е ашық кілті арқылы іздейтін болсақ, онда j(n) –ді білу керек.

Теорема 2.j(n) = (p-1)( q-1) есептеу (полиномиалды күрделілігіне дәлме-дәл алгоритмге дейін) n = p×q факторизация санына тепе-тең.

Дәләлдеу.n жәнеj(n) белгілі болсын. онда p және q жылдам табылады. Бұл келесі теңдеулерден байқалады.

j(n) = (p-1)(q-1) = pq-p-q+1 = n-p-q+1.

Бұдан

p+q= n-j(n)+1, pq = n.

Виет теоремасына кері теорема бойынша, p және q квадраттық теңдеулердің түбірлері болып табылады:

х лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru - (n -j(n)+1)x + n = 0.

Түбірлерін есептеу – полиномиалды алгоритм болып табылады. Керісінше, егер p және q, pq = n белгілі болса, онда j(n) = (p-1)(q-1) болады. Теорема дәлелденді.

RSA қол қоюы. М – қол қоятын ақпарат болсын. Қол қоя келесі алгоритм бойынша алынады:

С = М лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (mod n),

онда (М, С) – қол қойылған ақпарат. Қойылған қол келесі түрде тексеріледі

С лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru ( mod n) = М лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru лекция. Ашық кілтті криптографиялық жүйелер. RSA шифрлау жүйесі - student2.ru (mod n) = М’.

ЕгерМ = М’, болса, қойылған қол расталынады.

SWIFT ақшаны халықаралық электронды аударымдар желісі, қазіргі уақытта оның қызметін пайдаланатын банктік ұйымдардан тек осы криптографиялық жүйені қолдануды талап етіп отыр. Бұл криптографиялық жүйенің алгоритмі төмендегіше:

· Жіберуші екі өте үлкен санды таңдап алады, мысалы P және Q. Содан кейін екі көбейтіндісін есептейді N = P * Q және M = (P-1) * (Q-1);

· Одан соң кез-келген ойдан M-ге қатысты бүтін D санын таңдап алады да D * E = 1 mod M шартын қанағаттандыратын Е санын есептейді;

· Осы операциялардан кейін ол D мен N-ді ашық шифрлау кілті ретінде жариялап Е-ні жабық ретінде сақтап қалады;

· Егер S-ақпараты, оның ұзындығы өрнек мәні бойынша бүтін сандармен анықталатын және (1,N) интервалында болатын ақпарат N модулі бойынша D дәрежесіне жоғарылатылып шифрланады да, қабылдап алушыға жіберіледі S’ = (SD) mod N;

· Ақпаратты қабылдап алушы оны N модулі бойынша Е дәрежесіне көтеру арқылы шифрды қайта ашады.

Мұнда, S = (S’E) mod N = (S(D*E)) mod N

Осылайша ашық кілт ретінде N және D сандар жұбы болады да, құпия кілт ретінде Е саны болады.Бұл шифрлау жүйесінің мағынасы Ферма теоремасын ескерсек анықтала түседі. Ол теоремада, қарапайым Р саны және кез-келген Р-дан кіші К бүтін саны К(Р-1) = 1 mod P теңдігі орындалады. Бұл теорема қандайда бір санның қарапайым немесе құрама екендігін анықтауға мүмкіндік береді.

RSA әдісімен шифрлау процесін төмендегіше келтіруге болады:

· Ашық типтегі кез-келген файл болсын, яғни құрамында кез-келген ақпарат болатын мәтіндік файлды таңдап аламыз. Бұл файл RSA әдісінің алгоритмі бойынша шифрланады. Нәтижесінде шифр мәтінді файл құрылады.

· Шифрланған мәтіндік файлды бағдарлама арқылы көрсетіп және бұл файлды RSA әдісінің шифрды қайта ашу алгоритмі бойынша ашамыз.

Әдебиеттер:

1. Дүйсенов Н.Ж., Егенова Ә.М., Көшкінбаева М.Ж. Компьютерлік жүйелердегі ақпаратты қорғау.

2. Балапанов Е.Қ., Бөрібаев Б., Дәулетқұлов А.Б. Жаңа информациялық технологиялар: информатикадан 30 сабақ.-Алматы:ЖТИ,2003,-408 б.

3. Байжұманов М.Қ., Жапсарбаева Л.Қ. Информатика. Жоғары оқу орындардың студенттеріне арналған оқу құралы. –Астана: Еуразия ұлттық университеті, 2004, -224 б.


Наши рекомендации