Курстық жұмыс ТЭЦ

Автор работы: Пользователь скрыл имя, 26 Февраля 2013 в 20:28, курсовая работа

Краткое описание

Электрондық цифрлық қол қою электрондық құжатқа құқықтық күш беретін өзіндік қол қою аналогы ретінде физикалық және заң адамдары пайдаланады, оған адамның өз қол қоюымен және мөр басылады.

Содержание

1. Кіріспе.....................................................................................................3
2. Негізгі бөлім
2.1.Электрондық цифрлық қол қою және оны қолдану..................4
2.2. Тікелей электрондық цифрлық қол қою....................................6
2.3. Арбитражды электрондық цифрлық қол қою...........................7
2.4. Электрондық цифрлық қол қоюдың стандарты......................10
2.5. Электрондық цифрлық қол қоюдың алгоритмі.......................11
2.6. RSA электрондық цифрлық қол қою........................................14
2.7.Эль-Гамель шифрлік базасы негізіндегі электрондық цифрлық
қол қою...............................................................................................16
3. Қорытынды............................................................................................19
4. Қолданылған әдебиеттер .....................................................................20

Вложенные файлы: 1 файл

Курстық жұмыс ТЭЦ.doc

— 205.50 Кб (Скачать файл)

 

  • А-ның  Ках көпке жаймайтындығына және ЕКах[IDx║H(M)] түрінде жалған қолды генерирлемейтіндігіне Х сенуі қажет.
  • Y сенуі керек, А тек EKax[IDx║M║EKax[IDx║H(M)║T]] мына жағдайларда, хэштеу дұрыс болған жағдайда және қол шын мәнінде Х жіберушімен орындағанда жібере алады.
  • А әділетті түрде дауды шешетіндігіне, екі жақта сенімді болуы керек.

 

    1. Кесте. Арбитражды электрондық цифрлық қол қоюдың қолдану әдісі.

 



 

 


 


 

 


 


 

 

 

 

Белгіленуі:

X - жіберуші,

Y - алушы,

A - арбитр,

M - хабарлама.

Егер арбитр шын мәнінде  осындай тосуларға жауап берсе, онда оның қолын ешкім бұрмаламайтына Х сенімді бола алады, ал Y  Х-тің өз қолын жарамсыздандырмайтына сенімді бола алады.

X-тен Y-ке жіберілген хабарламаны А оқи алады және дәл осыны кез-келген ұстап алушы оқи алатындығы, алдынғы сценариде айтылған. Алдынғы сценаридегідей, 1.1.б сызбасында арбитражды қамтамасыз ету, сонымен қатар құпиялығына кепілдік беретіндігі көрсетілген.Бұл жағдайда Х және Y ортақ жасырын кілтін Кху қолданады деп болжанады.  Кху көмегімен шифрленген хабарламаның данасын, қолды және идентификаторды Х енді А арбитрына жібереді. Қол идентификатордан құралады және шифрленген хабарламаның хэш мағынасынан, енді осының бәрі Кха –ны қолданумен шифрленеді. Алдынғыдай, алынған хабарламаның дұрыстығын тексеру үшін, А қолды дешифрлейді және хэш мағынасын тексереді. Қазіргі жағдайда тек хабарламаның шифрленген нұсқасы мен жұмыс жасайды, сондықтан оны оқуға мүмкіндігі жоқ. Тексерістен кейін А,  Х алынғанын, мезгіл/уақыт белгісін қосып және осының бәрін Куа көмегімен шифрлеп Y адрестына жібереді.

Хабарламаны оқуға мүмкіндігі болмасада, арбитр X және Y жағынан алдаушылықты болдырмауға қабілетті. Осы жерде бірінші сценариден қалатын мәселелер, қол қойылып жіберілген хабарламаның фактысынан бас тарту мақсатында арбитр мен жіберушінің ұйымдасуы болып табылады немесе  жіберушінің қолды бұрмалау мақсатында арбитр мен қабылдаушының ұйымдасуы.

Қазіргі айтылған қиындықтарды 1.1.в нұсқасының біреуінде көрсетілген, ашық кілт сызбасының көмегімен жеңуге болады. Бұл жағдайда Х екірет М хабарламаны шифрлейді-бірінші Х жеке кілтінің (кілт KRx) көмегімен, ал содан кейін Y  ашық кілт (кілт KUy) көмегі арқылы. Бұл қол қойылған хабарламаның жасырын нұсқасы болады. Берілген қол қойылған хабарламаның идентификоторымен Х қайта KRx көмегімен қайта шифрленеді және IDx пен бірге А-ға жіберіледі. Ішкі, екірет шифрленген хабарлама арбитрдан сақтандырылған (және Y-тен басқа, кез-келген басқа адамнан.) Арбитр А Х-тің екі жеке/ашық кілттерінің әлі жұмыс істеп тұрғанына көз жеткізуі керек, егер солай болған жағдайда, хабарламаның өзін тексеру қажет. Содан кейін А, KRa көмегімен хабарламаны шифрлеп Y-ке жібереді. Хабарлама IDx, екірет шифрленген хабарламаны және мезгіл/уақыт белгісін қосады. Алдынғы екеуіне қарағанда бұл сызба бірқатар қасиеттерге ие. Біріншіден, екі жақтың да қызметінде алдын-ала мәліметпен алмасуға ақпарат жоқ. Екіншіден, күні  дұрыс  көрсетілмеген  мәліметпен  алмасуға  ақпараты  жоқ.

2.4. Электрондық цифрлық қол қоюдың  стандарты

 

Халқаралық стандарттар институты және (NIST) технологиясы ақпаратты өңдейтін FIPS PUB 186-ты федералды стандартын жариялады, ол DSS (Digital Signature Standart- электрондық цифрлық қол қоюдың стандарты) атымен де танымал.  DSS стандарты хэштеу SHA(Secure Hash Algorithm-хэштеудің қорғалған алгоритмі) алгоритміне негізделген. DSA(Digital Signature Algorithm- электрондық цифрлық қол қоюдың алгоритмі) алгоритмі электрондық цифрлық қол қоюдың жаңа технологиясын ұсынады. DSS стандарты 1991 жылы ұсынылған, ал оның түзетілген нұсқасы -1993 жылы.1996 жылы оған болмашы өзгертулер енгізілді. 

DSS стандартында алгоритм қолданылады, ол тек электрондық цифрлық қол қоюдың функциясын қамтамасыз ету үшін ғана шақырылады. RSA алгоритміне қарағанда бұл алгоритм шифрлеуге және кілттермен алмасуға жұмыс істей алмайды. Алайда бұл мысал, ашық кілтті криптография технологиясына. Сурет 1.1 DSS және RSA қолдана отырып электрондық цифрлық қол қоюдың генерирлеу сызбасын салыстыру. Қол қойылуы тиіс болатын RSA хабарламасына негізделген әдістемесі, хэштеу функциясының кіреберісіне келіп түседі, ал ол бекітілген ұзындықтағы қорғалған хэш-кодты береді. Бұл хэш-код жіберушінің жеке кілтімен шифрлейді, осының салдарынан қол пайда болады. Осыдан кейін хабарлама және оның қолы жіберіледі. Қобылдушы хабарламаны алады және хэш-кодын анықтайды. Одан соң қолданушының ашық кілтін қолдана отырып ол қолды дешифрлейді. Егер анықталған хэш-код дешифрленген қолға сәйкес келсе, онда қол дұрыс болып табылады. Жіберуші жеке кілтін өзі ғана білгендіктен, дұрыс қолды тек сол ғана қоя алады.

 

 


 


                                                                   


                                                                                                               


                           

 KRa


Салыстыру 


                                           EKra[H(M)]


 

 

 

(а) RSA әдістемесі.

 

 

 

 

                    k

 

(б) DSS әдістемесі.

 

Сурет 1.1. Электрондық  цифрлық қол қоюды қолданудың екі әдісі.

 

DSS әдістемесіде хэштеу функциясына негізделген. Хэш-код қолды құру және k кездейсоқ санымен бірге функциға кіреберісте береді, ол берілген қол үшін генерирленген. Қолды құру функциясы жіберушінің жеке кодынада  KRa және хабарлайтын жақ тобынадағы танымал параметрлер қатарынада тәуелді. Бұл көптік глобальді ашық кілт KUG құрайды деп есептесекте болады. Бұның салдарынан екі компоненттерден  құралған қол пайда болады, оларды s және r деп белгілейік. Белгіленген пунктка келіп түскен хабарламаның хэш-коды генерирленеді. Бұл код және қол верификация функциясының кіреберісінде беріледі. Верификация функциясы жіберушінің жеке кілтіне сәйкес келетін, глобальді ашық кілтке және ашық кілтке тәуелді. Егер қол дұрыс болса, онда шығарында верификация функциясы r қолының компонентіне сәйкес келетін мәнді қабылдайды. Қолды құру функциясы мынадай, тек жіберуші өзінің жеке кілтін біле тұра дұрыс қолды жасай алады.

 

2.5. Электрондық цифрлық қол қоюдың алгоритмі

 

Электрондық цифрлық  қол қоюдың алгоритмі (DSS –Digital Signature Algorithm) дискретті логарифмді есептеу қиындығын ескере отырып және Эль-Гамель (ElGamal) [ELGA85] мен Шнорромның (Schnorr) [SCHN91] ұсынылған схемаларға бағына отырып құрастырылған. 1.2. суретінде алгоритм сызбасы ұсынылған.Оның үш параметрі бар, олар ашық болып және танымал қолданушылар тобында ұсынылды. 160 битті q жай саны таңдалынады. Одан кейін тағы 512 және 1024 бит аралығындағы p жай санын таңдайды,  (p-1) q-ға бөледі. Әйтеуір h(p-1)/qmod p түрінде g санын таңдаймыз, бұл жерде h  1 және (p-1) аралығындағы бүтін сан, ал g 1-ден үлкен болуы тиіс.

 


 

 

 

 

 


 

 

 

 


 

 

 

 

 

 

 


 

 

 

 

 


 

 

 

 

 


 

 

 

 

 

 

 

 

M        – Қол қойылатын хабарлама

H(M) –SHA-1 әдісі бойынша M хэш-коды

M, r, s   –M, r және s нұсқасын алу

Сурет 1.2. Электрондық  цифрлық қол қоюдың алгоритмі.

Әрбір қолданушы өзінің жеке кілтін таңдайды және ашық кілтті генерирлейді. Жеке кілт х 1 мен (q-1) аралығындағы сан болуы керек және ол кездейсоқ немесе псевдакездейсоқ түрде таңдалуы керек. Ашық кілт жеке кілт формуласы y=gx mod p негізінде есептелінеді. y-ті x-пен есептеу оңай. Бірақта ашық кілт y-тің мәнінің бар болуынан x-тің мәнін y-тің мәнінмен анықтау мүмкін емес, өйткені бұл үшін g және p модуль негізі ретінде y дискретті логарифмін есептеу керек. Қолды құру үшін, қолданушы ашық кілттің компонентінің (p,q,g) функциясы болып табылатын, r және s екі көлемді анықтайды. Қолданушының жеке кілті (x), хабарламаның жеке хэш-коды (H(M)) және k кейбір бүтін сандар кездейсоқ немесе псевдакездейсоқ түрінде таңдалуы және әрбір орындалатын қолдың бірегей болуы тиіс.Белгіленген пункте верификация орындалады, ол үшін  1.2. суретте көрсетілген форманы қолданады. Ашық кілттің функцияс компоненті болып келетін v көлемді қолданады, жіберушінің ашық кілті мен түскен хабардың хэш-кодын  генерирлейді. Егер бұл көлем r қойылған қолға тура келсе, онда ол расталады. Сурет 1.3. Қолдың орындалуы мен верификация көрсетілген.1.3.суретте көрсетілген алгоритмнің структурасы қызықты. Тексеру аяқталу кезінде r мәнімен іске асатынына назар аударыңыздар және ол хабарламаға мүлде қатысы жоқ.  r мәні k функциясы және де глобальді ашық кілттің үш компонентіде  болып табылады.

 

                                                p q g

 


  


 


 

 

 

 

k                 x   q


      


 

 

s

 

 

 

 

s =f1(H(M),k,x,r,q) =(k-1(H(M)+xr))mod q

r =f2 (k, p, q, g) = (gk mod p) mod q

 

 

(a) Қолды құру.

 

 

                                                             y   q   g


  




                                           q


                                                                                 v



 

                                                                     Салыстыру


 

w = f3 (s9, q) = (s’)-1mod q

v = f4 (y, q, g, H(M),w, r’) =((g(H(M’)w) mod q yr’w mod qmod p)mod q

 

 

(б) Верификация.

 

Мультипликатты кері мән k(mod p) алушының кіреберісте хабарламаның хэш-коды және қолданушының жеке кілті функцияға беріледі. Бұл функцияның құрлымы мынадай, қабылдаушы келіп түскен хабарлама мен r мәнің қолданушының ашық кілтіне және глобальді ашық кілтіне қалыптастыра алады. Қолдың алгоритмін құруды анықтау дәрежесін енгізу кезінде gk mod p есептеу үшін ғана қажет етеді. Бұл мән қол қойылатын хабарламаға бағынышты  болмағандықтан, бұл мәнді алдын-ала анықтау мүмкін. Шын мәнінде қолданушы құжат қолын құру кезінде оларды керегінше қолдану үшін алдын-ала бір қатар r мәнін анықтай алады.

 

2.6. RSA   электрондық цифрлық қол қою

 

Ашық кілтті криптожүйе пайда болғаннан  кейін осы күнгі компьютерлерде және желі технологияларында нағыз  төңкеріс болды. Бұрын шешімін таппаған есептер шешіліп, қазіргі кезде  тәжірбие жүзінде қолданысын тауып жүр. Дәл қазіргі уақытта осы технологияның көмегімен күнделікті есеп айырысулар және көптеген миллион доллар, евроларға келісімдер жасалуда. Электрондық цифрлық қол қою осы технологияның ең маңызды элементі болып табылады. Көптеген елдерде дәлірек айтсақ Ресейде электрондық цифрлық қол қоюға стандарттар енгізілген.

Криптографиялық цифрлық  қол қоюды қарастырмас бұрын  оның үш қасиеттін қалыптастырамыз.

  • Құжатқа тек қолдың заңды иесі қол қоя алады.
  • Қолдың авторы одан бас тарта алмайды.
  • Қолдың дұрыстығын тексеру кезінде даудамай пайда болатын жағдайда оған үшінші жақ (мысалы, сот т.с.с) қатысуы мүмкін.

Әрине, электрондық цифрлық  қол қою осы қасиеттердің бәріне ие болуы тиіс, бірақта құжатқа  қол қоятын және оның дұрыстығын тексеретін адамдар бір-біріне бірнеше мындаған километр алыстықта болуы мүмкін және компьютер желісі арқылы өзара әрекеттеседі.

Қарапайым қол қоюдан басқа тағыда қазіргі кезде нотариялдық қол қою қолданылады, оған арнайы адам бөлінген ол құжатқа өзінің қолы мен мөрді қойып береді, содан кейін кез-келген  басқа адам оның дұрыстығына көз жеткізе алады. Электрондық натериалды қол қою кез-келген адамның қолындай тура сол сияқты іске асырады. Бұл бөлімде RSA сызбасына негізделген электрондық цифрлық қол қоюды қарастырамыз. Егер де Азамат құжатқа қол қоюды жоспарлап жүрсе, онда ол RSA параметрін таңдауы керек. Бұл үшін Азамат екі үлкен P және Q жай сандарды таңдайды, N=PQ және ф=(P-1)(Q-1)  есептейді. Содан кейін ол d санын таңдайды және c=d-1 mod ф есептейді. Соңында, ол  N және d сандарын жариялайды. Мысалы, ол өз атын ассоциировать етіп өз сайтына орналастырады және с санын құпияда сақтайды ( қалған P,Q және ф сандарын ұмытса да болады). Енді Азамат құжатқа немесе хабарламаларға өз қолын қоя алады. Азамат келесі хабарламаға m =m1,…,mn қол қойғысы келсін дейік.Онда ол алдын-ала хэш-функциясын есептейді,

y=h (m =m1,…,mn )

сәйкесінше ол m орнына y санын қояды. Хэш-функциясының есептеу алгоритмі барлығына белгілі дейік. Бізге маңызды деген қасиеттерді көрсетейік: y –өзгертпей негізгі мәтінді m =m1,…,mn өзгерту мүмкін емес. Сондықтан Азамат келесі қадамын y санын ғана қол қоюмен жабдықтайды және бұл қол барлық m хабарламаға қатысты болады, Азамат санды есептейді

S=ycmod N,    (1.1)

Бұл дегеніміз ол y санын өзінің жасырын дәрежесіне енгізеді. S саны электрондық цифрлық қол қою болып табылады. Ол жай ғана m хабарламаға қосады, соның салдарынан  Азамат қол қойылып құрастырылған хабарламаға ие болады.

    (m, s)               (1.2)

Енді Азаматтың параметрін білетін әрбір адам N және d,сонымен бірге ол қолдың дұрыстығын тексере алады. Бұл үшін (1.2) 0ол 0ойыл5ан хабарды алып, h(m) хэш-функциясының мәнін есептеуді,

w=sd mod N         (1.3)

сан және w=h(m) теңдіктін орындалуын тексеру.

Утверждение 1.1. Егер қол жасанды болса, онда  mo w=h(m).

Дәлелдеу. (1.3) (1.1) ден және RSA сызбасының қасиетінен шығатыны


 

w=sd mod N=ycd mod N=y=h(m)

 

Утверждение 1.2. Сипатталған  электрондық қол барлық қол қоюға  қойылатын талаптардың барлыған қанағаттандырады.

Дәлелдеу. Қолдың бірінші  қасиетін тексерейік. Ешкім N санын жай көбейткіштерге жіктей алмайды. Сол себепті N және d біле тұрып cтабу мүмкін емес. Шынында, C=d-1 mod ф есептеу үшін, ф=(P-1)(Q-1) білуі керек, ал бұл үшін жай көбеткіштерді P және Q білу қажет. Бірінші қасиет орындалады –өйткені Азаматтан басқа с санын ешкім білмейді,сол себепті хабарламаға ешкім қол қоя алмайды.

Информация о работе Курстық жұмыс ТЭЦ