114
сосын әрбір пайдаланушы жабық және ашық кілт құрастыра алады. Жабық кілті
ретінде кез келген сан
х, 0 <
x <
q алынады. Ашық кілт
y =
а
x
mod
p формуладан
алынатын
y саны болады. Әрбір жаңа қолды жасау үшін әрбір сайын жаңа
кездейсоқ сан
k, 0 <
k <
q таңдап алынады.
m хабардың қолы екі (
r,
s) саннан тұрады, олар келесі формула арқылы есептеледі:
r = (
а
k
mod
p) mod
q,
s =
k(
H(
m) +
x(
r)) mod
q,
мұндағы
H(
m) –
m хабар үшін хеш-функцияны есептеу нәтижесі.
Осымен қолды құрастыру аяқталды, және хабар
m ЭЦҚ (
r,
s) бірге алушыға
жіберілу мүмкін. Енді ГОСТ Р34.10-94 бойнша ЭЦҚ құрастыру алгоритмның DSS
алгоритмнан айырмашылығын көрсетейік.
1. Қолды есептеудің алдында бастапқы хабар әртүрлі хеширование
функцияларымен өңделеді: ГОСТ Р34.10-94 хеш-функцияға ГОСТ Р34.11-94 стандарты
қолданылады, DSS-та түрлі ұзындығы хеш-коды бар SHA-1 пайдаланады. Осыдан жай
санның
q ұзындығына әртүрлі талаптар шығады: ГОСТ Р34.10-94
q-ның ұзындығы 254
тен 256 битке дейін болу керек, ал DSS-та
q-ның ұзындығы 159 дан 160 битке дейін болу
керек.
2. Колдағы компонент
s әртүрлі есептеледі. ГОСТ Р34.10-94 компонент
s мына
формула бойынша есептеледі
s =
k(
H(
m) +
x(
r)) mod
q,
ал
DSS-та компонент s мына формула арқылы есептеледі
s = [
k
-1
(
H(
m) +
x(
r))] mod
q.
Соңғы айырмашылығы қолды тексеруге арналған формуладағы айырмашылыққа
келтіреді.
Нәтижесінде ГОСТ Р34.10-94 бойынша қолды тексеру процедурасы келесі болады.
[
m, (
r,
s)]-ты алып алушы есептейді:
w =
H(
m)
-1
mod
q,
u
1
=
w s mod
q,
u
2
= (
q-
r)
w mod
q,
v = [(
а
u1
y
u2
) mod
p] mod
q.
Сосын есептелген
v мәннің және ЭЦҚ құрамында алынған
r параметрдің теңдігі
тексеріледі. Қол
дұрыс деп есептеледі, егер
v =
r.
ГОСТ Р34.10-94 бойынша ЭЦҚ жасау алгоритмда, DSS алгоритмдағыдай,
есептеуіш ресурстарды қажет ететің күрделі есептер жүргізіледі.
12.6 ГОСТ Р34.10-94 стандарты бойынша қолды жасау және тексеру мысалы
p = 23,
q = 11,
a =6 болсын (тексереміз: 6
11
mod 23 = l).
Қолды жасау.
Пайдаланушы
А жабық кілті ретінде санды
х=8 таңдап алсын. Осыдан кейін ол
формула
y =
а
x
mod
p бойынша құпиялы кілтті есептейді. Яғни
y = 6
8
mod 23 = 18.
Қолды жасау үшін пайдаланушы
А кездейсоқ санды
k = 5 таңдайды.
Хабар үшін хеш-функцияны есептеу нәтижесі
H(
m) = 9 болсын.
Хабардың қолы екі саннан тұрады (
r,
s):
r = (
а
k
mod
p) mod
q = (6
5
mod 23) mod 11 = 2,
s = (
k H(
m) +
x r) mod
q = (5 9 + 8 2) mod 11 = 6.
Сонымен, хабардың қолы қос саннан (2, 6) тұрады.
Қолды тексеру.
Хабарды қолмен (2, 6) бірге алып,
пайдаланушы есептейді
w =
H(
m)
-1
mod
q = 9
-1
mod 11 = 5,
115
u
1
=
w s mod
q = 5 6 mod 11 = 8,
u
2
= (
q-
r)
w mod
q = (11-2) 5 mod 11 = 1,
v = [(
а
u1
y
u2
) mod
p] mod
q =[(6
8
18
1
) mod 23] mod 11 = 2.
v =
r болғандықтан, қол дұрыс деп саналады.
ГОСТ Р34.10 немесе DSS стандарттарды пайдалануымен жасалынған қолдар, Эль-
Гамаль алгоритмы арқылы алынған қолдар сияқты, рандомизироваланған болып
табылады, себебі бірдей хабарлар үшін бірдей жабық кілтті
х пайдаланғанда, әрбір сайын
түрлі қолдар (
r,
s) жасалынатын болады (түрлі кездейсоқ
k мәні пайдалануына себепті).
12.7 ЭЦҚ жаңа стандарты
Ресейде 2001 жылы ЭЦҚ құрастыруға және тексеруге жаңа стандарт қабылданды.
Оның толық аты: «ГОСТ Р34.10-2001. Ақпараттық технология. Ақпараттың
криптографиялық қорғауы. Электронды цифрлық қолды құрастыру және тексеру
процестері».
ГОСТ Р34.10-2001 негізінде эллипстік қисықтар үстінде операцияларды
пайдаланатын алгоритмдар жатыр. ГОСТ Р34.10-2001 беріктігі эллипстік қисықтын
нүктелер тобында дискретты логарифм алудың күрделілігіне негізделген, және де ГОСТ
Р34.11-94 бойынша хеш-функцияның беріктігіне. Құрастырылатын цифрлық қолдың
мөлшері - 512 бит.
Толық айтқанда, ГОСТ Р34.10-2001 алгоритмы бойынша есептеу алгоритмы ГОСТ
Р34.10-94 стандартқа ұқсайды. Алдымен кездейсоқ сан
k генерацияланады, оның
көмегімен қол компонентасы
r есептеледі. Сосын компонента
r,
k саны, құпиялы кілт мәні
және қол қойылатын деректердің хэш-мәні негізінде ЭЦҚ-ң
s-компонентасы
құрастырылады. Қолды тексергенде сол сияқты белгілі
r,
s қатынастарға ашық кілттің
және ақпараттың хэш-мәннің сәйкестігі тексеріледі. Қатынастар дұрыс болмағанда, қол
дұрыс емес деп саналады.
Ескі стандарт ГОСТ Р34.10-94 жойылмаған, сондықтан қазіргі уақытта ЭЦҚ екі
стандарты бірге істейді. Бірақ, бұрыңғы ГОСТ үшін шектеу қойылған:
p параметрдің тек
1024-битты мәнің пайдалануға болады.
Жаңа ГОСТ Р34.10-2001 стандартта эллипстік қисықтағы нүктелер тобының
математикалық аппаратын пайдалануы
p модульдің ретін қысқартуға мүмкіндік береді,
критпоберіктігін жоғалтпай. Стандартта жазылған,
p санның ұзындығы 256 немесе одан
артық бит болу мүмкін.
12.8 Симметриялық немесе асимметриялық криптография ма?
Қандай алгоритмдар жақсы - симметриялық немесе асимметриялық па – бұл
сұраққа бірмәнді жауап әрине жоқ. Симметриялық криптографияның негізгі
артықшылығы – деректерді өңдеудің үлкен жылдамдығы. Жабық кілті бар жүйелердің
проблемалары бұрын қарастырылған болатын. Енді ашық кілті бар шифрлау
алгоритмдардың ерекшеліктерін бағалап көрейік.
Ассимметриялық криптографияның басты құны - хабарлармен құпиялы алмасуда
алдын ала сенімді кілттермен алмасудың қажеттілігінің болмауы. Ассимметриялық
криптожүйелердің негізгі кемшіліктері келесі:
1. Ашық кілті бар алгоритмдар жабық кілті бар классикалық алгоритмдардан
жүздеген есе баяу жұмыс істейді. Бұл олардың ең басты кемшілігі. Өйткені ашық кілті бар
жүйелерде негізгі операция үлкен модулі бойынша 500-1000 битты сандарды дәрежелеу.
2. Ашық кілті бар алгоритмдар ашық кілттердің анықтығын қажет етеді, кейде бұл
әжептәуiр күрделі есеп. Осы да цифрлық қол протоколдарына да қатысты. Ашық кілттерді
басқару үшін арнайы инфрақұрылымды пайдаланады.