Ашық кілті бар алгоритм негізінде цифрлық қол қою [Системы информационной безопасности]

Автор статьи : Нұржігіт Ы.
Организация : Л.Н.Гумилев атындағы Еуразия ұлттық университеті
Должность : Магистрант
Дата : 31.05.2016
Номер журнала : 03-13-2021

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

  1. қолды тек бір адам ғана қоялады, ал дұрыстығын көбі тексеру мүмкін;
  2. қол қою берілген хабармен үздіксіз байланыста болу керек және басқа құжатқа көшірілмейді;
  3. құжатқа қол қойғаннан кейін, оны өзгертуге болмайды;
  4. қойылған қолдан бас тарту мүмкін емес, яғни құжатқа қол қойған адам кейін мен қоймадым деп айталмайды.

Ассиметриялық шифрлау алгоритмдер цифрлық (электронды) қол қоюды құрастыру үшін пайдалану мүмкін. Цифрлық (электронды) қол қою (digital signature) – бұл берілетің ақпараттың авторлығын тексеруге мүмкіндік беретің оның бірегей сандық қосымшасы. Электронды (цифрлық) қол қою (ЭЦҚ) тіркелген ұзындығы бар биттер  тізбегі болып табылады, ол белгілі бір түрде ақпараттың ішіндегісі мен құпиялы кілт көмегімен есептеледі.

Цифрлық қол қоюды құрастыру барысында арнайы түрімен барлық хабар толық шифрланады немесе хабардан хеш-функциясының есептеу нәтижесі. Көбінесе соңғы   әдіс пайдалынады, себебі хабардың мөлшері әртүрлі болу мүмкін, кейде өте үлкен, ал хеш- кодының ұзындығы тұрақты және аса үлкен емес. Екі вариантын да қарап шығайық.

Ең қарапайым әдіс өзара байланысқан екі кілтті (ашық және жабық) пайдалану. Бірақ жабық пен ашық кілттің рольдері ауысады – қол қою кілті құпиялы болады, ал тексеру кілті – ашық. Егер ашық кілті бойынша жабық кілтті таба алмау қасиеті сақталатын болса, онда қол ретінде құпиялы кілтпен шифрланған хабардың өзі болу мүмкін.  Сонымен, хабарға қол қояды тек жабық кілттің иесі, ал ашық кілті бар әрбіреулер қол қоюды тексере алады.

Мысалы, пайдаланушы    А пайдаланушы Б-ға қол қойылған хабар жібергісі келеді.

Қол қоюды жасау және тексеру процедурасы келесі қадамнан тұрады:

  1. Пайдаланушы А пайдаланушы Б-ға өзінің ашық кілтің U кез келген байланыс арна арқылы жібереді, мысалы электронды поштамен.
  2. Пайдаланушы А хабарды М өзінің  жабық  R кілтімен  шифрлап шифрланған    С хабарды алады.
  1. Шифрланған хабар С пайдаланушы Б-ға жіберіледі.
  2. Пайдаланушы Б пайдаланушы А-ның ашық кілтің пайдаланып алынған хабарды

С ашып оқиды. Егер хабар ашылса, онда оған пайдаланушы А қол қойды.

Бұл протоколды схема түрінде көрсетуге болады (сурет 1).

1 Сурет 1. Цифрлық қол қоюды жасау және тексеру схеманың бірінші нұсқасы

Пайдаланушы А өз жабық кілтің сенімді сақтап отырғанша, оның қол қоюы   дұрыс болады. Одан басқа, абонент А-ның жабық кілтіне рұқсат алмай, хабарады өзгерту мүмкін емес; осымен аутентификация және деректер бүтіндігі қамтамасыз етіледі.

Қос кілттің физикалық ұсынуы ЭЦҚ пайдаланатың нақты жүйеге тәуелді. Көбінесе кілт файлға жазылады, онда кілттен басқа пайдаланушы – кілт иесі туралы ақпарат,  кілттің қызмет ету мерзімі, және нақты жүйенің жұмысына қажетті деректер жиынтығы болу мүмкін. Кілт иесі туралы деректер авторлықты анықтауға мүмкіндік береді, себебі қолды тексеру кезінде анық шығады - кім хабарға қол қойды. Әдетте ЭЦҚ тексергенде нәтижесі ыңғайлы түрде қол қойған пайдаланушыны көрсетіп экранға шығады, мысалы былай: "Мақала.doc құжатының қолтаңбасы дұрыс(Авторы:Ысқақ Н.А.)"

1 суретте көрестілген схема – бұл құжатты қалпына келтіруімен цифрлық қол қою схемасы. Құжатты қалпына келтіруімен цифрлық қолдың құрамына құжаттын өзі де кіреді: қолды тексеру барысында автоматты түрде құжат денесі де есептеледі. Егер ашып оқыған кезде хабар дұрыс қалпына келсе, онда қойылған қол да дұрыс деп саналады. Құжатты қалпына келтіруімен цифрлық қол қою, мысалы RSA алгоритмы көмегімен жүзеге асырылу мүмкін.

Құжатты қалпына келтіруімен цифрлық қол қоюды пайдаланғанда барлық хабарға қол қойылады, яғни ол шифрланады. Бірақ, қазір тәжірибеде олай істемейді. Ашық кілті бар шифрлау алгоритмдер баяу, одан әрі хабардың бүтіндігін растау үшін көп жад көлемі қажет болады. Және де ЭЦҚ есептейтің алгоритмдердің барлығы есеп үшін алдын ала стандартты ұзындығы берілген хабарларды пайдаланады. Мысалы, ресей ГОСТ Р34.10-94 алгоритмда бұл мөлшері 32 байтқа тең. Сондықтан, уақытты және есептеу ресурстарды үнемдеу үшін, ассиметриялық алгоритм әдетте бір бағытталған хеш-функциямен бірге пайдаланады. Мұнда басында хеш-функция көмегімен кез келген ұзындығы бар хабардан керекті мөлшері бар хеш-код есептеледі, сосын ЭЦҚ есептеу үшін алдында алынған хеш- код шифрланады.

Құжаттын хеш-коды бойынша есептелген ЭЦҚ қосылатын цифрлық қол қоюлар деп аталады. Осындай цифрлық қолдар кейбір сандық коды болып табылады және оны  қол қойылатын құжатқа тіркеу қажет. Хабардың өзі бұл жағдайда шифрланбайды және ашық түрде цифрлық қолмен бірге жіберіледі.

Егер пайдаланушы А пайдаланушы Б-ға қосылған цифрлық қолмен толықтырылған хабар М жібергісі келсе, онда қол қоюды жасау және тексеру процедурасы келесі  қадамнан тұрады:

  1. Пайдаланушы А пайдаланушы Б-ға өзінің ашық кілтің U кез келген байланыс арна арқылы жібереді, мысалы электронды поштамен.
  2. Пайдаланушы А сенімді хеш-функциясы Н көмегімен өз хабарының  хеш-кодын
  3. h = H(M) есептейді.
  4. Сосын пайдаланушы А хабардың хеш-кодын h өзінің жабық R кілтімен шифрлайды және цифрлық қолды С алады.
  5. Бастапқы хабар М цифрлық қолмен С бірге пайдаланушы Б-ға жіберіледі.
  6. Пайдаланушы Б алынған хабардың М хеш-кодын h есептейді, сосын пайдаланушы А-ның ашық кілтің пайдаланып цифрлық қолды С тексереді.

Бұл протоколды схема түрінде көрсетуге болады (сурет 2).

1 Сурет 2. Цифрлық қол қоюды жасау және тексеру схеманың екінші нұсқасы

Хеш-функция ЭЦҚ-ң алгоритмнын құрамына кірмейді, сондықтан схемада кез келген сенімді хеш-функция пайдалану мүмкін.

Суреттелген қол қоюды жасау процесі конфиденциалдықты қамтамасыз етпейді. Яғни осы тәсілмен жіберілген хабарды өзгертуге болмайды, бірақ жіберушінің ашық  кілтің пайдаланып оқуға болады.

Көп жағдайда келтірілген цифрлық қолды жасау және пайдалану схемасы әбден жеткілікті. Бірақ пайдаланушы Б алаяқтық жасау жағдайлары да болады. Мысалы, жіберілген құжат А пайдаланушының чегі болсын (қызмет еткен үшін). Пайдаланушы Б цифрлық қолдың дұрыстығын анықтап оны ақша алу үшін пайдаланды. Бірақ, пайдаланушы Б қол қойылған құжаттан бір не бірнеше көшірме жасап алып, анда-санда банкіге барып ақша алу мүмкін.

Осындай алаяқтықты болдырмау үшін цифрлық қолдарға жиі қосады уақыт белгісін. Құжатқа қол қойлған дата мен уақытты хабарға қосып құжатпен бірге қол қояды. Чек арқылы төлем жасағанда уақыт белгісін банк байқап деректер қорына енгізу мүмкін. Енді чекты қайтадан пайдаланатын болса, бұл көрініп қалады.

Цифрлық қол қоюдын өзге түрі мойындамайтың цифрлық қол. ЭЦҚ-дан оның айырмашылығы – қол қойған адам рұқсат бермесе қолды тексеруге болмайды. Сонымен, құжатты алушы хабарға қол қойған адамның рұқсатын алмай қол қоюды көрсете алмайды (немесе қолдың дұрыстығын дәлелдей алмайды).