ГОСТ 34.10-2018. Межгосударственный стандарт. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи
А.2 Пример 1
А.2.1 Параметры схемы цифровой подписи
А.2.1.1 Условие
Для формирования и проверки цифровой подписи должны быть использованы параметры, приведенные в 5.3.
А.2.1.2 Модуль эллиптической кривой
В настоящем примере параметру p присвоено следующее значение:
p = 57896044618658097711785492504343953926\\
63499233282028201972879200395656482104110,
p = 800000000000000000000000000000000
000000000000000000000000000043116.
А.2.1.3 Коэффициенты эллиптической кривой
В настоящем примере параметры a и b принимают следующие значения:
a = 710,
a = 716,
b = 43308876546767276905765904595650931995\\
94211179445103958325296884203384958041410,
b = 5FBFF498AA938CE739B8E022FBAFEF40563F
6E6A3472FC2A514C0CE9DAE23B7E16.
А.2.1.4 Порядок группы точек эллиптической кривой
В настоящем примере параметр m принимает следующее значение:
m = 5789604461865809771178549250434395392\\
708293458372545062238097359213763106961910,
m = 8000000000000000000000000000000150
FE8A1892976154C59CFC193ACCF5B316.
А.2.1.5 Порядок циклической подгруппы группы точек эллиптической кривой
В настоящем примере параметр q принимает следующее значение:
q = 5789604461865809771178549250434395392\\
708293458372545062238097359213763106961910,
q = 8000000000000000000000000000000150
FE8A1892976154C59CFC193ACCF5B316.
А.2.1.6 Коэффициенты точки эллиптической кривой
В настоящем примере координаты точки P принимают следующие значения:
xp = 210,
xp = 216,
yp = 40189740565390375033354494229370597\\
7563573938990554508069097936521343156628010,
yp = 8E2A8A0E65147D4BD6316030E16D19\\
C85C97F0A9CA267122B96ABBCEA7E8FC816.
А.2.1.7 Ключ подписи
В настоящем примере считается, что пользователь обладает следующим ключом подписи d:
d = 554411960653632461263556241303241831\\
9657670922234001657210809775000609752554410,
d = 7A929ADE789BB9BE10ED359DD39A72C\\
11B60961F49397EEE1D19CE9891EC3B2816.
А.2.1.8 Ключ проверки подписи
В настоящем примере считается, что пользователь обладает ключом проверки подписи Q, координаты которого имеют следующие значения:
xq = 57520216126176808443631405023338071\\
17663010490631363218289674134220660485940310,
xq = 7F2B49E270DB6D90D8595BEC458B5\\
0C58585BA1D4E9B788F6689DBD8E56FD80B16,
yq = 17614944419213781543809391949654080\\
03194266204536363926070984785943828676399410,
yq = 26F1B489D6701DD185C8413A977B3\\
CBBAF64D1C593D26627DFFB101A87FF77DA16.
А.2.2 Процесс формирования цифровой подписи (алгоритм I)
Пусть после выполнения шагов 1 - 3 по алгоритму I (см. 6.2) были получены следующие числовые значения:
e = 2079889367447645201713406156150827013\\
063714251537965328995261725266146887242110,
e = 2DFBC1B372D89A1188C09C52E0EE\\
C61FCE52032AB1022E8E67ECE6672B043EE516,
k = 538541376773484637314038411479966192\\
4150400343430202071296083852889319623339510,
k = 77105C9B20BCD3122823C8CF6FCC\\
7B956DE33814E95B7FE64FED924594DCEAB316.
При этом кратная точка C = kP имеет координаты:
xc = 297009809158179528743712049839382569\\
9042275210799431965163268798205921093339510,
xc = 41AA28D2F1AB148280CD9ED56FED\\
A41974053554A42767B83AD043FD39DC049316,
yc = 328425352786846634770946653225170845\\
0680472103245454326813285455653927406091010,
yc = 489C375A9941A3049E33B34361DD\\
204172AD98C3E5916DE27695D22A61FAE46E16.
Параметр принимает значение:
r = 297009809158179528743712049839382569\\
9042275210799431965163268798205921093339510,
r = 41AA28D2F1AB148280CD9ED56FED\\
A41974053554A42767B83AD043FD39DC049316.
Параметр принимает значение:
s = 57497340027008465417892531001914703\\
845522704264909856393371899917551583955210,
s = 1456C64BA4642A1653C235A98A60249
BCD6D3F746B631DF928014F6C5BF9C4016.
А.2.3 Процесс проверки цифровой подписи (алгоритм II)
Пусть после выполнения шагов 1 - 3 по алгоритму II (см. 6.3) были получены следующие числовые значения:
e = 2079889367447645201713406156150827013\\
063714251537965328995261725266146887242110,
e = 2DFBC1B372D89A1188C09C52E0EE\\
C61FCE52032AB1022E8E67ECE6672B043EE516.
При этом параметр принимает значение:
v = 176866836059344686773017138249002685\\
6274688308067549671528803657243114571897810,
v = 271A4EE429F84EBC423E388964555BB\\
29D3BA53C7BF945E5FAC8F381706354C216.
Параметры и
принимают значения:
z1 = 376991675009019385568410572935126561\\
0884134519049194261930453241274372099975910,
z1 = 5358F8FFB38F7C09ABC782A2DF2A\\
3927DA4077D07205F763682F3A76C9019B4F16,
Z2 = 141719984273434721125159179695007657\\
692466558389728621144999326533336710922110,
Z2 = 3221B4FBBF6D101074EC14AFAC2D4F7\\
EFAC4CF9FEC1ED11BAE336D27D52766516.
Точка C = z1P + z2Q имеет координаты:
xc = 2970098091581795287437120498393825699\\
042275210799431965163268798205921093339510,
xc = 41AA28D2F1AB148280CD9ED56FED\\
A41974053554A42767B83AD043FD39DC049316,
yc = 3284253527868466347709466532251708450\\
680472103245454326813285455653927406091010,
yc = 489C375A9941A3049E33B34361DD\\
204172AD98C3E5916DE27695D22A61FAE46E16.
Тогда параметр принимает значение:
R = 2970098091581795287437120498393825699\\
042275210799431965163268798205921093339510,
R = 41AA28D2F1AB148280CD9ED56FED\\
A41974053554A42767B83AD043FD39DC049316.
Поскольку выполнено равенство R = r, то цифровая подпись принимается.