RU2369974C1 - Method for generation and authentication of electronic digital signature that certifies electronic document - Google Patents

Method for generation and authentication of electronic digital signature that certifies electronic document Download PDF

Info

Publication number
RU2369974C1
RU2369974C1 RU2007147826/09A RU2007147826A RU2369974C1 RU 2369974 C1 RU2369974 C1 RU 2369974C1 RU 2007147826/09 A RU2007147826/09 A RU 2007147826/09A RU 2007147826 A RU2007147826 A RU 2007147826A RU 2369974 C1 RU2369974 C1 RU 2369974C1
Authority
RU
Russia
Prior art keywords
mdc
bit binary
vector
mod
digital signature
Prior art date
Application number
RU2007147826/09A
Other languages
Russian (ru)
Other versions
RU2007147826A (en
Inventor
Дмитрий Николаевич Молдовян (RU)
Дмитрий Николаевич Молдовян
Николай Андреевич МОЛДОВЯН (RU)
Николай Андреевич Молдовян
Original Assignee
Николай Андреевич Молдовян
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Николай Андреевич Молдовян filed Critical Николай Андреевич Молдовян
Priority to RU2007147826/09A priority Critical patent/RU2369974C1/en
Publication of RU2007147826A publication Critical patent/RU2007147826A/en
Application granted granted Critical
Publication of RU2369974C1 publication Critical patent/RU2369974C1/en

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

FIELD: information technologies.
SUBSTANCE: invention is related to the field of cryptographic devices of electronic digital signature (EDS). Substance of invention consists in the fact that method for generation and authentication of EDS includes the following sequence of actions: secret key is generated in the form of multi-digit binary number (MBN) x, secret key is used to generate open key Y in the form of MBN size vector m, where 2≤m<64, electronic document (ED) is received, represented by MBN H, depending on received electronic document and on value of secret key, EDS Q is generated in the form of two MBNs, depending on EDS, ED and open key, the first A and second B authenticating MBN are generated, MBN A and B are compared. When they parametres coincide, conclusion is made on authenticity of electronic digital signature.
EFFECT: higher efficiency of electronic digital signature (EDS) algorithms without reduction of its resistance level.
5 cl, 10 tbl, 4 ex, 1 app

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов аутентификации электронных сообщений, передаваемых по телекоммуникационным сетям и сетям ЭВМ, и может быть использовано в системах передачи электронных сообщений (документов), заверенных электронной цифровой подписью (ЭЦП), представленной в виде многоразрядного двоичного числа (МДЧ). Здесь и далее под МДЧ понимается электромагнитный сигнал в двоичной цифровой форме, параметрами которого являются: число битов и порядок следования их единичных и нулевых значений (1)толкование используемых в описании терминов приведено в Приложении 1).The invention relates to the field of telecommunications and computer technology, and more particularly to the field of cryptographic authentication methods for electronic messages transmitted over telecommunication networks and computer networks, and can be used in electronic message systems (documents) certified by electronic digital signature (EDS) presented in as a multi-bit binary number (MDC). Hereinafter, MDC means an electromagnetic signal in binary digital form, the parameters of which are: the number of bits and the order of their unit and zero values ( 1) the interpretation of the terms used in the description is given in Appendix 1).

Известен способ формирования и проверки ЭЦП, предложенный в патенте США №4405829 от 20.09.1983 и детально описанный также и в книгах 1. М.А.Иванов. Криптография. М., КУДИЦ-ОБРАЗ, 2001; 2. А.Г.Ростовцев, Е.Б.Маховенко. Введение в криптографию с открытым ключом. СПб.: Мир и семья, 2001. - с.43. Известный способ заключается в следующей последовательности действий:A known method of formation and verification of electronic digital signature, proposed in US patent No. 4405829 from 09/20/1983 and described in detail also in books 1. M.A. Ivanov. Cryptography. M., KUDITS-IMAGE, 2001; 2. A.G. Rostovtsev, E.B. Makhovenko. Introduction to public key cryptography. St. Petersburg: Peace and Family, 2001. - p. 43. The known method consists in the following sequence of actions:

формируют секретный ключ в виде трех простых МДЧ р, q и d, формируют открытый ключ (n, е) в виде пары МДЧ n и е, где n - число, представляющее собой произведение двух простых МДЧ р и q, и е - МДЧ, удовлетворяющее условию ed=1 mod (p-1)(q-1), принимают электронный документ (ЭД), представленный МДЧ Н,form a secret key in the form of three simple MDC p, q and d, form a public key (n, e) in the form of a pair of MDC n and e, where n is a number representing the product of two simple MDC p and q, and e is a MDC, satisfying the condition ed = 1 mod (p-1) (q-1), an electronic document (ED) submitted by MDC H is received,

в зависимости от значения H и значения секретного ключа формируют ЭЦП в виде МДЧ Q=S=Hd mod n;depending on the value of H and the value of the secret key, the digital signature is formed in the form of MDC Q = S = H d mod n;

формируют первое проверочное МДЧ А=H;form the first verification MDC A = H;

формируют второе проверочное МДЧ В, для чего МДЧ S возводят в целочисленную степень е по модулю n: В=Se mod n;form the second verification MDC B, for which MDC S is raised to an integer power e modulo n: B = S e mod n;

сравнивают сформированные проверочные МДЧ А и В,comparing the generated verification MDC A and B,

при совпадении параметров сравниваемых МДЧ А и В делают вывод о подлинности ЭЦП.when the parameters of the compared MDC A and B coincide, they conclude that the digital signature is authentic.

Недостатком известного способа является относительно большой размер подписи и необходимость увеличения размера подписи при разработке новых более эффективных методов разложения числа n на множители или при росте производительности современных вычислительных устройств. Это объясняется тем, что значение элемента подписи S вычисляются путем выполнения арифметических операций по модулю n, а стойкость ЭЦП определяется сложностью разложения модуля n на множители р и q.The disadvantage of this method is the relatively large size of the signature and the need to increase the size of the signature when developing new, more efficient methods for decomposing the number n into factors or with an increase in the productivity of modern computing devices. This is because the value of the signature element S is calculated by performing arithmetic operations modulo n, and the stability of the digital signature is determined by the complexity of the decomposition of the module n into factors p and q.

Известен также способ формирования и проверки подлинности ЭЦП Эль-Гамаля, описанный в книге Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. - СПб., Лань, 2000. - с.156-159, который включает следующие действия:There is also a known method of forming and verifying the authenticity of the digital signature of El-Gamal, described in the book by Moldovyan A.A., Moldovyan N.A., Sovetov B.Ya. Cryptography. - St. Petersburg, Doe, 2000. - p.156-159, which includes the following actions:

формируют простое МДЧ р и двоичное число G, являющееся первообразным корнем по модулю р, генерируют секретный ключ в виде МДЧ х, в зависимости от секретного ключа формируют открытый ключ в виде МДЧ Y=Gx mod р, принимают ЭД, представленный в виде МДЧ H, в зависимости от H и секретного ключа формируют ЭЦП Q в виде двух МДЧ S и R, то есть Q=(S, R);form a simple MDC p and a binary number G, which is a primitive root modulo p, generate a secret key in the form of MDC x, depending on the secret key form a public key in the form of MDC Y = G x mod p, take the ED presented in the form of MDC H , depending on H and the secret key, the EDS Q is formed in the form of two MDC S and R, that is, Q = (S, R);

осуществляют процедуру проверки подлинности ЭЦП, включающую вычисление двух контрольных параметров с использованием исходных МДЧ р, G, Y, H и S путем возведения МДЧ G, Y, R в дискретную степень по модулю р и сравнение вычисленных контрольных параметров;carry out a digital signature authentication procedure, including calculating two control parameters using the original MDC p, G, Y, H, and S by raising the MDC G, Y, R to a discrete degree modulo p and comparing the calculated control parameters;

при совпадении значений контрольных параметров делают вывод о подлинности ЭЦП.when the values of the control parameters coincide, they conclude that the digital signature is authentic.

Недостатком данного способа также является относительно большой размер ЭЦП. Это объясняется тем, что значения элементов подписи S и R вычисляют путем выполнения арифметических операций по модулю р-1 и по модулю р соответственно.The disadvantage of this method is also the relatively large size of the EDS. This is because the values of the signature elements S and R are calculated by performing arithmetic operations modulo p-1 and modulo p, respectively.

Известен также способ формирования и проверки ЭЦП, предложенный в патенте США №4995089 от 19.02.1991. Известный способ заключается в следующей последовательности действий:There is also a known method of forming and verifying EDS, proposed in US patent No. 4995089 of 02.19.1991. The known method consists in the following sequence of actions:

формируют простое МДЧ p, такое что р=Nq+1, где q - простое МДЧ;form a simple MDC p, such that p = Nq + 1, where q is a simple MDC;

формируют простое МДЧ а, такое что а≠1 и aq mod р=1;form a simple MDC a, such that a ≠ 1 and a q mod p = 1;

методом генерации случайной равновероятной последовательности формируют секретный ключ в виде МДЧ х;by generating a random equiprobable sequence generate a secret key in the form of MDC x;

формируют открытый ключ в виде МДЧ у по формуле у=ax mod p;form a public key in the form of MDC y according to the formula y = a x mod p;

принимают ЭД, представленный МДЧ М;accept ED submitted by MDC M;

формируют ЭЦП в виде пары МДЧ (е, s), для чего генерируют случайное МДЧ t, формируют МДЧ R по формуле R=at mod р, формируют МДЧ е=f(M||R), где знак || обозначает операцию присоединения двух МДЧ и f - некоторая специфицированная хэш-функция, значение которой имеет фиксированную длину (обычно 160 или 256 бит), независимо от размера аргумента, т.е. от размера МДЧ M||R, а затем формируют МДЧ s по формуле s=(t-ex) mod q;form an EDS in the form of a pair of MDC (e, s), for which a random MDC t is generated, form a MDC R according to the formula R = a t mod p, form a MDC e = f (M || R), where the sign || denotes the operation of joining two MDCs and f is some specified hash function whose value has a fixed length (usually 160 or 256 bits), regardless of the size of the argument, i.e. from the size of the MDC M || R, and then form the MDC s according to the formula s = (t-ex) mod q;

формируют первое проверочное МДЧ А, для чего генерируют МДЧ R' по формуле R'=asye mod p и формируют МДЧ А=f(M||R');form the first verification MDC A, for which MDC R 'is generated according to the formula R' = a s y e mod p and form the MDC A = f (M || R ');

формируют второе проверочное МДЧ В путем копирования МДЧ е: В=е;form the second verification MDC In by copying MDC e: B = e;

сравнивают сформированные проверочные МДЧ А и В;comparing the generated verification MDC A and B;

при совпадении параметров сравниваемых МДЧ А и В делают вывод о подлинности ЭЦП.when the parameters of the compared MDC A and B coincide, they conclude that the digital signature is authentic.

Недостатком способа по патенту США является относительно высокая вычислительная сложность процедуры формирования и проверки ЭЦП, что связано с тем, что для обеспечения минимально требуемого уровня стойкости требуется использовать простой модуль р разрядностью не менее 1024 бит.The disadvantage of the method according to US patent is the relatively high computational complexity of the procedure for the formation and verification of the digital signature, which is due to the fact that to ensure the minimum required level of resistance it is required to use a simple module with a bit capacity of at least 1024 bits.

Наиболее близким по своей технической сущности к заявленному является известный способ формирования и проверки подлинности ЭЦП, предлагаемый российским стандартом ГОСТ Р 34.10-2001 и описанный, например, в книге Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111), согласно которому ЭЦП формируется в виде пары МДЧ r и s, для чего генерируют эллиптическую кривую (ЭК) в виде совокупности точек, причем каждая точка представляется двумя координатами в декартовой системе координат в виде двух МДЧ, называемых абсциссой (х) и ординатой (у), затем осуществляют операции генерации точек ЭК, сложения точек ЭК и умножения точки ЭК на число, а также арифметические операции над МДЧ, после чего в результате выполненных операций формируются МДЧ r и s. Указанные операции над точками выполняются как операции над МДЧ, являющимися координатами точек, по известным формулам [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111)]. Операция сложения двух точек А и В с координатами (xА, yA) и (xB, yB) соответственно выполняется по формулам:Closest in technical essence to the claimed one is the well-known method of forming and verifying the authenticity of the digital signature, proposed by the Russian standard GOST R 34.10-2001 and described, for example, in the book of B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M., Hot line - Telecom, 2005 .-- 229 p. (see p.110-111), according to which the digital signature is formed as a pair of MDC r and s, for which an elliptic curve (EC) is generated as a set of points, each point being represented by two coordinates in a Cartesian coordinate system as two MDCs, called abscissa (x) and ordinate (y), then they carry out operations to generate EC points, add EC points and multiply the EC points by a number, as well as arithmetic operations on the MDC, after which MDC r and s are formed as a result of the performed operations. The indicated operations on points are performed as operations on the MDC, which are the coordinates of the points, according to well-known formulas [B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M., Hot line - Telecom, 2005 .-- 229 p. (see p. 110-111)]. The operation of adding two points A and B with the coordinates (x A , y A ) and (x B , y B ), respectively, is performed according to the formulas:

xC=k2-xA-xB mod p и yC=k(xA-xC)-yA mod p,x C = k 2 -x A -x B mod p and y C = k (x A -x C ) -y A mod p,

где

Figure 00000001
, если точки А и В не равны, и
Figure 00000002
если точки А и В равны. Операция умножения точки А на натуральное число n определяется как многократное сложение точки А:Where
Figure 00000001
if points A and B are not equal, and
Figure 00000002
if points A and B are equal. The operation of multiplying point A by a natural number n is defined as the multiple addition of point A:

nА=А+А+…+А (n раз).nA = A + A + ... + A (n times).

Результатом умножения любой точки ЭК на нуль определяется точка, называемая бесконечно удаленной точкой и обозначаемой буквой О. Две точки А=(х, у) и -А=(х, -у) называются противоположными. Умножение на целое отрицательное число -n определяется следующим образом: (-n)А=n(-А). По определению принимают, что сумма двух противоположных точек равна бесконечно удаленной точке О.The result of multiplying any EC point by zero determines a point called an infinitely distant point and denoted by the letter O. Two points A = (x, y) and -A = (x, -y) are called opposite. Multiplication by a negative integer -n is defined as follows: (-n) A = n (-A). By definition, it is assumed that the sum of two opposite points is equal to the infinitely distant point O.

В прототипе, т.е. в способе формирования и проверки подлинности ЭЦП по стандарту ГОСТ Р 34.10-2001, генерируют ЭК, описываемую уравнением у23+ax+b mod p, поэтому генерация ЭК состоит в генерации чисел a, b и р, являющихся параметрами ЭК и однозначно задающих множество точек ЭК, абсцисса и ордината каждой из которых удовлетворяет указанному уравнению. Ближайший аналог (прототип) заключается в выполнении следующей последовательности действий:In the prototype, i.e. in the method of forming and verifying the authenticity of digital signatures according to GOST R 34.10-2001, they generate an EC described by the equation y 2 = x 3 + ax + b mod p, therefore, the generation of an EC consists in the generation of numbers a, b and p, which are EC parameters and uniquely defining a set of points EC, abscissa and ordinate of each of which satisfies the specified equation. The closest analogue (prototype) is to perform the following sequence of actions:

генерируют эллиптическую кривую (ЭК), которая представляет собой совокупность пар МДЧ, называемых точками ЭК и обладающих определенными свойствами (см. Приложение 1, пп.15-19);generate an elliptic curve (EC), which is a collection of MDC pairs, called EC points and having certain properties (see Appendix 1, paragraphs 15-19);

методом генерации случайной равновероятной последовательности формируют секретные ключи в виде МДЧ k1, k2, …, kn;by generating a random equiprobable sequence generate secret keys in the form of MDC k 1 , k 2 , ..., k n ;

формируют открытые ключи в виде точек ЭК P1, Р2, …, Pn, для чего генерируют точку G, имеющую значение порядка, равное q (порядком точки ЭК называется наименьшее положительное целое число q, такое, что результатом умножения данной точки на число q является так называемая бесконечно удаленная точка О; результатом умножения любой точки ЭК на нуль по определению является точка О [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)]; см. также Приложение 1, пп.15-19), и генерируют открытые ключи путем умножения точки G на МДЧ k1, k2, …, kn, т.е. формируют открытые ключи по формулам P1=k1G, P2=k2G, …, Pn=knG;form public keys in the form of EC points P 1 , P 2 , ..., P n , for which a point G is generated having an order value equal to q (the order of an EC point is the smallest positive integer q, such that the result of multiplying this point by a number q is the so-called infinitely distant point O; the result of multiplying any EC point by zero by definition is the point O [B.Ya. Ryabko, AN Fionov. Cryptographic methods of information protection. M., Hot line - Telecom, 2005. - 229 pp. (See pp. 97-130)]; see also Appendix 1, paragraphs 15-19), and generate public keys Uteem G MDCH point multiplication by k 1, k 2, ..., k n, i.e. form public keys according to the formulas P 1 = k 1 G, P 2 = k 2 G, ..., P n = k n G;

принимают ЭД, представленный МДЧ Н;accept ED submitted by MDCH N;

генерируют случайное МДЧ 0<t<q, по которому формируют точку R по формуле R=tG;generating a random MDC 0 <t <q, according to which a point R is formed according to the formula R = tG;

формируют ЭЦП Q в виде пары МДЧ (r, s), для чего генерируют МДЧ r по формуле r=xR mod q, где xR - абсцисса точки R, а затем генерируют МДЧ s по формуле s=(tH+rki) mod q, где 1≤i≤n;form an EDS Q in the form of a pair of MDC (r, s), for which MDC r is generated by the formula r = x R mod q, where x R is the abscissa of the point R, and then MDC s is generated by the formula s = (tH + rk i ) mod q, where 1≤i≤n;

формируют первое проверочное МДЧ А, для чего генерируют МДЧ v по формуле v=sH-1 mod q и МДЧ w по формуле w=(q-rH-1) mod q, затем генерируют точку R' по формуле R'=vG+wPi, после чего МДЧ А получают по формуле А=xR' mod q, где xR' - абсцисса точки R';form the first verification MDC A, for which MDC v is generated by the formula v = sH -1 mod q and MDC w by the formula w = (q-rH -1 ) mod q, then the point R 'is generated by the formula R' = vG + wP i , after which MDC A is obtained by the formula A = x R ' mod q, where x R' is the abscissa of the point R ';

формируют второе проверочное МДЧ В путем копирования МДЧ r: В=r;form the second verification MDC B by copying the MDC r: B = r;

сравнивают сформированные проверочные МДЧ А и В;comparing the generated verification MDC A and B;

при совпадении параметров сравниваемых МДЧ А и В делают вывод о подлинности ЭЦП.when the parameters of the compared MDC A and B coincide, they conclude that the digital signature is authentic.

Недостатком ближайшего аналога является относительно невысокая производительность процедуры формирования и проверки ЭЦП, что связано с тем, что выполнение операций над точками ЭК включает операцию деления МДЧ по модулю простого МДЧ, которая требует времени выполнения, длительность которого более чем в 10 раз превышает время выполнения операции умножения.The disadvantage of the closest analogue is the relatively low productivity of the procedure for generating and checking the digital signature, which is due to the fact that performing operations on EC points includes the operation of dividing the MDC modulo a simple MDC, which requires a runtime more than 10 times the duration of the multiplication operation .

Целью изобретения является разработка способа формирования и проверки подлинности ЭЦП, заверяющей ЭД, свободного от операции деления по модулю простого МДЧ, благодаря чему повышается производительность процедур формирования и проверки ЭЦП.The aim of the invention is to develop a method for generating and verifying the authenticity of an electronic digital signature that certifies an electronic signature free of the division operation modulo a simple MDC, thereby increasing the productivity of the procedures for generating and verifying an electronic digital signature.

Поставленная цель достигается тем, что в известном способе формирования и проверки подлинности ЭЦП, заверяющей ЭД, заключающемся в том, что генерируют секретный ключ в виде МДЧ х, по секретному ключу формируют открытый ключ Y в виде более чем одного МДЧ, принимают ЭД, представленный МДЧ Н, в зависимости от принятого ЭД и от значения секретного ключа формируют ЭЦП Q в виде двух МДЧ, в зависимости от открытого ключа, принятого ЭД и ЭЦП, формируют первое А и второе В проверочные МДЧ, сравнивают их и при совпадении их параметров делают вывод о подлинности электронной цифровой подписи, открытый ключ Y формируют в виде вектора МДЧ размерности m, где 2≤m≤64.This goal is achieved by the fact that in the known method of generating and verifying the authenticity of an electronic digital signature verifying an ED, which consists in generating a secret key in the form of MDC x, using the secret key, they form a public key Y in the form of more than one MDC, and the ED presented by the MDC is received N, depending on the received ED and on the value of the secret key, an EDS Q is formed in the form of two MDCs, depending on the public key received by the ED and EDS, the first A and second B are formed, verification MDCs, compare them and, if their parameters coincide, they conclude mean of the digital signature, the public key Y is formed in the form of a MDC vector of dimension m, where 2≤m≤64.

Выполнение операции умножения векторов МДЧ включает выполнение над МДЧ операций сложения и умножения по модулю простого МДЧ. Благодаря тому что при выполнении операций умножения и возведения в степень векторов МДЧ не требуется выполнять операцию деления по модулю, обеспечивается повышение производительности процедур формирования и проверки подлинности ЭЦП.Performing the operation of multiplying MDC vectors includes performing addition and multiplication operations on the MDC modulo a simple MDC. Due to the fact that when performing operations of multiplication and raising to the power of vectors of MDCs, it is not necessary to perform the division operation modulo, an increase in the productivity of the procedures for generating and verifying the authenticity of digital signatures is provided.

Новым является также и то, что открытый ключ Y генерируют в виде вектора МДЧ размерности m=2, для чего генерируют вектор МДЧ G размерности m=2, имеющий порядок, равный МДЧ q, и открытый ключ Y формируют поIt is also new that the public key Y is generated in the form of a MDC vector of dimension m = 2, for which a MDC vector G of dimension m = 2 is generated, having an order equal to MDC q, and the public key Y is generated by

формуле Y=Gx (mod р), а ЭЦП формируют в виде пары МДЧ е и s, для чего генерируют случайное МДЧ k, генерируют вектор МДЧ R по формулеthe formula Y = G x (mod p), and the EDS is formed as a pair of MDCs e and s, for which a random MDC k is generated, the MDC vector R is generated by the formula

R=Gk (mod р), где р - МДЧ, являющееся модулем, по которому выполняются операции над МДЧ, входящими в состав вектора МДЧ G при выполнении над G операции возведения в степень, затем формируют первое МДЧ е электронной цифровой подписи по формуле e=rH mod δ, где r=(r1||r2) - МДЧ, равное конкатенации МДЧ, входящих в вектор МДЧ R, и δ - вспомогательное простое МДЧ, затем генерируют второе МДЧ s электронной цифровой подписи по формуле s=(k-ex)mod q, после чего формируют первое и второе проверочные МДЧ А и В по формулам А=r'H mod δ и В=е, где r'=(r'1||r'2) - МДЧ, равное конкатенации МДЧ, входящих в вектор МДЧ R', вычисленный по формуле R'=YeGs(mod р).R = G k (mod p), where p is the MDC, which is the module used to perform operations on the MDCs that are part of the MDC vector G when performing the power raising operation on G, then form the first MDC e of an electronic digital signature by the formula e = rH mod δ, where r = (r 1 || r 2 ) is the MDC equal to the concatenation of the MDC included in the MDC vector R and δ is the auxiliary simple MDC, then the second MDC s of the electronic digital signature is generated by the formula s = (k -ex) mod q, after which the first and second verification MDCs A and B are formed according to the formulas A = r'H mod δ and B = e, where r '= (r' 1 || r ' 2 ) is the MDC equal to the concatenation M B included in vector MDCH R ', calculated according to the formula R' = Y e G s ( mod p).

Новым является также и то, что МДЧ p и q являются простыми.Also new is the fact that the FDM p and q are simple.

Новым является также и то, что открытый ключ Y генерируют в виде вектора МДЧ размерности 3×3, для чего генерируют вектор МДЧ G размерности 3×3, имеющий порядок, равный МДЧ q, и открытый ключ Y формируют по формуле Y=Gx (mod р), где р - МДЧ, являющееся модулем, по которому выполняются операции над МДЧ, входящими в состав вектора МДЧ G при выполнении над G операции возведения в степень, а электронную цифровую подпись формируют в виде пары МДЧ е и s, для чего генерируют случайное МДЧ k, генерируют вектор МДЧ R по формуле R=Gk (mod р), затем формируют первое МДЧ е электронной цифровой подписи по формуле е=rH mod δ, где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора МДЧ R, и δ - вспомогательное простое МДЧ, затем генерируют второе МДЧ s электронной цифровой подписи по формуле s=(k+ex)mod q, после чего формируют первое и второе проверочные МДЧ А и В по формулам А=r'H mod δ и В=е, где r'=(r'1||r'2||r'3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора МДЧ R', вычисленного по формуле R'=Yq-eGs(mod p).It is also new that the public key Y is generated in the form of a 3 × 3 MDC vector, for which a 3 × 3 MDC vector G is generated, having an order equal to the MDC q, and the public key Y is formed by the formula Y = G x ( mod p), where p is the MDC, which is the module by which operations are performed on the MDCs that are part of the MDC vector G when performing power-up operations on G, and an electronic digital signature is formed as a pair of MDC e and s, for which they generate random MDC k, generate the MDC vector R according to the formula R = G k (mod p), then form the first MDC e ctron digital signature by the formula e = rH mod δ, where r = (r 1 || r 2 || r 3 ) is the MDC equal to the concatenation of the MDC included in the MDC vector R, and δ is the auxiliary simple MDC, then a second MDC s of an electronic digital signature by the formula s = (k + ex) mod q, after which the first and second verification MDCs A and B are formed by the formulas A = r'H mod δ and B = e, where r '= (r' 1 || r ' 2 || r' 3 ) - MDC equal to the concatenation of the MDC included in the MDC vector R 'calculated by the formula R' = Y qe G s (mod p).

Новым является также и то, что МДЧ р является составным, т.е. представляет собой произведение двух или более простых чисел.Also new is the fact that MDC p is composite, i.e. is a product of two or more primes.

Конкатенацией двух МДЧ а и b, представленных в некоторой позиционной системе исчисления в виде а=а1а2а3…ag и b=b1b2b3…bk, называется число с=а||b=а1а2а3…agb1b2b3…bk. Знак || обозначает операцию конкатенации.The concatenation of two MDCs a and b, represented in some positional calculus in the form a = a 1 a 2 a 3 ... a g and b = b 1 b 2 b 3 ... b k , is called the number c = a || b = a 1 a 2 a 3 ... a g b 1 b 2 b 3 ... b k . Sign || denotes a concatenation operation.

Вектор многоразрядных двоичных чисел - это набор из двух или более МДЧ, называемых компонентами (вектора МДЧ). Вектор МДЧ записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции компонентов. Например, вектор МДЧ можно записать в виде (а1, a2, …, am), где m≥2 - это размерность вектора МДЧ, означающая число компонентов в векторе МДЧ. В качестве разделителя может быть использован знак операции, определенной над компонентами вектора, и тогда компоненты вектора идентифицируются указанием формальной переменной (в начале или в конце соответствующего компонента) в виде буквы латинского алфавита. Формальной называется переменная потому, что ей не приписывается никакого численного значения, и она служит только для того, чтобы идентифицировать компонент вектора МДЧ, независимо от последовательности его записи. Так, векторы МДЧ Z1=5е+3i+5j и Z2=3i+5e+5j рассматриваются как равные, т.е. Z1=Z2. Размерность вектора МДЧ - это количество МДЧ, входящих в вектор МДЧ в качестве компонентов. В данной заявке рассматриваются конечные группы, элементами которой являются векторы МДЧ вида Z=ае+bi+cj, где групповая операция определена через операции над векторами МДЧ как операция умножения многочленов с учетом того, что возникающие при этом произведения формальных переменных заменяются по некоторой специфицированной таблице. Такая таблица замены переменных для векторов МДЧ размерности m=3 имеет, например, следующий вид:A multi-bit binary number vector is a set of two or more MDC called components (MDC vector). The MDC vector is written in various ways, the requirement for which is that they identify the positions of the components. For example, the MDC vector can be written in the form (a 1 , a 2 , ..., a m ), where m≥2 is the dimension of the MDC vector, which means the number of components in the MDC vector. As a separator, the sign of the operation defined over the components of the vector can be used, and then the components of the vector are identified by indicating a formal variable (at the beginning or at the end of the corresponding component) in the form of a letter of the Latin alphabet. A variable is called formal because no numerical value is assigned to it, and it serves only to identify the component of the MDC vector, regardless of the sequence of its writing. So, the MDC vectors Z 1 = 5е + 3i + 5j and Z 2 = 3i + 5e + 5j are considered equal, i.e. Z 1 = Z 2 . The dimension of the MDC vector is the number of MDC included in the MDC vector as components. In this application, finite groups are considered whose elements are MDC vectors of the form Z = ae + bi + cj, where the group operation is defined through operations on MDC vectors as the operation of multiplying polynomials, taking into account the fact that the resulting products of formal variables are replaced by some specified table . Such a variable replacement table for MDC vectors of dimension m = 3 has, for example, the following form:

Figure 00000003
Figure 00000003

Эта таблица определяет следующее правило подстановки переменных:This table defines the following variable substitution rule:

e·i→i, e·j→j, j·i→e, i·i→j, j·j→i и т.д.e · i → i, e · j → j, j · i → e, i · i → j, j · j → i, etc.

Например, пусть Z11е+b1i+с1j и Z22е+b2i+с2j, тогда операция умножения векторов МДЧ Z1 и Z2 (обозначим ее знаком

Figure 00000004
) выполняется следующим образом:For example, let Z 1 = a 1 е + b 1 i + с 1 j and Z 2 = а 2 е + b 2 i + с 2 j, then the operation of multiplying the MDC vectors Z 1 and Z 2 (we denote it by
Figure 00000004
) is performed as follows:

Figure 00000005
Figure 00000005

Чтобы задать конечные группы векторов МДЧ, операции сложения и умножения над МДЧ, являющимися компонентами векторов МДЧ, задаются по модулю простого числа р, размер которого выбирается таким, чтобы обеспечить достаточно большой порядок группы векторов МДЧ:To define finite groups of MDC vectors, the operations of addition and multiplication over MDC, which are components of the MDC vectors, are specified modulo a prime number p, the size of which is chosen so as to provide a sufficiently large order of the group of MDC vectors:

Figure 00000006
Figure 00000006

При записи формул, описывающих выполнение операций в конечной группе векторов МДЧ и заданных через операции сложения и умножения по модулю, в конце правой части формул будем указывать в скобках (mod p), где р - значение модуля. Например, операцию

Figure 00000007
будем записывать в виде Z1Z2 (mod p), т.e.
Figure 00000008
В зависимости от размерности векторов МДЧ, над которыми определяются операции умножения, и конкретного варианта операции умножения могут быть использованы различные таблицы подстановок переменных, например:When writing formulas describing the execution of operations in a finite group of MDC vectors and given through modulo addition and multiplication operations, we will indicate in brackets (mod p) at the end of the right side of the formulas, where p is the value of the module. For example, operation
Figure 00000007
we will write in the form Z 1 Z 2 (mod p), i.e.
Figure 00000008
Depending on the dimension of the MDC vectors over which the multiplication operations are determined, and the specific variant of the multiplication operation, various variable substitution tables can be used, for example:

1. Для векторов размерности m=2 приемлемая таблица имеет вид1. For vectors of dimension m = 2, an acceptable table has the form

Figure 00000009
Figure 00000009

где 0<а<р.where 0 <a <p.

2. Для векторов размерности m=3 приемлемая таблица имеет вид2. For vectors of dimension m = 3, an acceptable table has the form

Figure 00000010
Figure 00000010

где 0<а<р. Значение параметра а может выбираться любым из указанного интервала. Различные значения параметра а придают различные свойства конечной группе векторов МДЧ при фиксированном значении размерности m и модуля р. Аналогичным способом могут быть определены групповые операции над конечными группами векторов МДЧ размерностей m=4, m=5 и т.д.where 0 <a <p. The value of parameter a can be selected by any of the specified interval. Different values of the parameter a give different properties to a finite group of MDC vectors for a fixed value of dimension m and modulus p. In a similar way, group operations on finite groups of MDC vectors of dimensions m = 4, m = 5, etc. can be defined.

При соответствующем выборе таблицы замены формальных переменных и простого значения р множество векторов МДЧ является конечным, и это конечное множество содержит подмножество векторов МДЧ, которое образуют группу с групповой операцией

Figure 00000011
причем порядок этой подгруппы является достаточно большим. Группа - это алгебраическая структура (т.е. множество математических элементов некоторой природы), над элементами которой задана некоторая операция таким образом, что алгебраическая структура обладает следующим набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является также элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в широкодоступной математической литературе, например в книгах А.Г.Курош. Теория групп.- М., «Наука», 1967. - 648 с. и М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп. - М., «Наука. Физматлит», 1996. - 287 с. Операция, определенная над элементами группы, называется групповой операцией. Группа называется циклической, если каждый ее элемент может быть представлен в виде g=an для некоторого натурального числа n, где а - элемент данной подгруппы, называющийся генератором или образующим элементом циклической подгруппы, и степень n означает, что над элементом а выполняются n последовательных операций, т.е.
Figure 00000012
(n раз). Известно, что, если порядок группы есть простое число, то она циклическая [А.И.Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.]. Важной характеристикой группы является ее порядок, который равен числу элементов в группе. Для элементов группы также применяется понятие порядка. Порядком элемента группы, является минимальное значение степени, в которую нужно возвести этот элемент, чтобы результатом операции было получение нейтрального элемента группы.With the appropriate choice of the formal variable change table and the simple value p, the set of MDC vectors is finite, and this finite set contains the subset of MDC vectors that form a group with a group operation
Figure 00000011
moreover, the order of this subgroup is quite large. A group is an algebraic structure (i.e., a set of mathematical elements of some nature), on the elements of which an operation is specified in such a way that the algebraic structure has the following set of properties: the operation is associative, the result of the operation on two elements is also an element of the same structure, there is a neutral element such that when performing an operation on it and some other element of a group, the result is element a. A detailed description of the groups is given in the widely available mathematical literature, for example, in the books of A.G. Kurosh. Theory of groups. - M., "Science", 1967. - 648 p. and M.I. Kargapolov, Yu.I. Merzlyakov. Fundamentals of group theory. - M., “Science. Fizmatlit ", 1996. - 287 p. An operation defined on group elements is called a group operation. A group is called cyclic if its every element can be represented in the form g = a n for some natural number n, where a is an element of a given subgroup, called a generator or a generating element of a cyclic subgroup, and degree n means that n consecutive operations i.e.
Figure 00000012
(n times). It is known that if the order of a group is a prime, then it is cyclic [A.I. Kostrikin. Introduction to Algebra. Fundamentals of Algebra. M .: Fizmatlit. 1994. - 320 p.]. An important characteristic of a group is its order, which is equal to the number of elements in the group. For group elements, the concept of order also applies. The order of an element of a group is the minimum value of the degree to which this element must be raised so that the result of the operation is to obtain a neutral element of the group.

Обычно при разработке способов формирования и проверки ЭЦП используются циклические группы большого простого порядка или группы, порядок которых делится нацело на большое простое число [Венбо Мао. Современная криптография. Теория и практика. - М., СПб, Киев. Издательский дом «Вильямс», 2005. - 763 с.]. При соответствующем задании группы векторов МДЧ это условие легко обеспечивается. При этом стойкость способов формирования и проверки ЭЦП определяется сложностью задачи дискретного логарифмирования, которая состоит в определении значения степени n, в которую надо возвести заданный элемент группы, чтобы результатом этой операции был некоторый другой заданный элемент группы [Молдовян Н.А. Практикум по криптосистемам с открытым ключом. - СПб., БХВ-Петербург, 2007. - 298 с.].Usually, when developing methods for forming and checking digital signatures, cyclic groups of large simple order or groups whose order is divided entirely into a large prime number are used [Wenbo Mao. Modern cryptography. Theory and practice. - M., St. Petersburg, Kiev. Williams Publishing House, 2005. - 763 p.]. With the appropriate definition of the group of MDC vectors, this condition is easily ensured. Moreover, the stability of the methods of forming and checking the digital signature is determined by the complexity of the discrete logarithm problem, which consists in determining the value of degree n to which the given element of the group must be raised so that the result of this operation is some other given element of the group [N. Moldovyan Workshop on public key cryptosystems. - SPb., BHV-Petersburg, 2007. - 298 p.].

Поскольку групповая операция

Figure 00000013
над векторами МДЧ выполняется путем выполнения модульных умножений и сложений над МДЧ, являющихся компонентами векторов МДЧ, достаточно высокая трудность задачи дискретного логарифмирования в группе векторов МДЧ достигается при сравнительно малом значении размера модуля р, благодаря чему обеспечивается сравнительно высокая производительность операции возведения векторов МДЧ в большую степень. Поскольку производительность процедур формирования и проверки ЭЦП определяется производительностью операции возведения в степень, то при использовании операций над векторами МДЧ обеспечивается сравнительно высокая производительность процедур формирования и проверки ЭЦП.Since the group operation
Figure 00000013
on MDC vectors is performed by performing modular multiplications and additions on MDC, which are components of the MDC vectors, a rather high difficulty of the discrete logarithm problem in the group of MDC vectors is achieved with a relatively small value of the module size p, which ensures a relatively high performance of the operation of raising the MDC vectors to a large degree . Since the performance of the procedures for generating and checking the digital signature is determined by the performance of the exponentiation operation, when using operations on the MDC vectors, a relatively high productivity of the procedures for generating and checking the digital signature is ensured.

Порядком вектора МДЧ V называется наименьшее натуральное число q, такое что Vq=1, т.е. такое, что результатом умножения вектора МДЧ Q на самого себя q раз является единичный вектор МДЧ Е=1e+0i+0j=1.The order of the MDC vector V is the smallest positive integer q such that V q = 1, i.e. such that the result of multiplying the MDC vector Q by itself q times is a unit MDC vector E = 1e + 0i + 0j = 1.

Корректность заявленного способа доказывается теоретически. Рассмотрим, например, вариант реализации способа по пп.4 и 5 формулы изобретения. Открытый ключ, соответствующий секретному ключу х, представляет собой вектор МДЧ Y=Gx(mod p).The correctness of the claimed method is proved theoretically. Consider, for example, an embodiment of the method according to claims 4 and 5 of the claims. The public key corresponding to the secret key x is the MDC vector Y = G x (mod p).

Вектор МДЧ R генерируется по формуле R=Gk (mod р), а первое МДЧ в ЭЦП (e, s) вычисляется по формуле e=rH mod δ, где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, входящих в вектор МДЧ R. Значение s генерируется по формуле s=(k+ex)mod q, поэтому вектор МДЧ R', генерируемый по формуле R'=Yq-eGs mod p и используемый для формирования первого проверочного МДЧ А, равенThe MDC vector R is generated by the formula R = G k (mod p), and the first MDC in the EDS (e, s) is calculated by the formula e = rH mod δ, where r = (r 1 || r 2 || r 3 ) - MDC equal to the concatenation of the MDC included in the MDC vector R. The value of s is generated by the formula s = (k + ex) mod q, therefore the MDC vector R 'generated by the formula R' = Y qe G s mod p and used to form the first verification MDC A is

R'=Yq-eGs(mod p)=G(q-e)xGs(mod p)=G(q-e)x+(k+ex)(mod p)=R '= Y qe G s (mod p) = G (qe) x G s (mod p) = G (qe) x + (k + ex) (mod p) =

=Gqx+k(mod p)=GqxGk(mod p)=Gk(mod p)=R.= G qx + k (mod p) = G qx G k (mod p) = G k (mod p) = R.

Поскольку векторы МДЧ R' и R одинаковы, то равны между собой и значения r' и r: r'=(r'1||r'2||r'3)=r=(r1||r2||r3), следовательно, A=r'H mod δ=rH mod δ=e=В, т.e. правильно сформированная коллективная подпись удовлетворяет процедуре проверки подписи, т.e. корректность процедур генерации и проверки ЭЦП доказана. Аналогичным образом дается доказательство корректности и для пп.2 и 3 формулы изобретения.Since the MDC vectors R 'and R are the same, the values of r' and r are equal to each other: r '= (r' 1 || r ' 2 || r' 3 ) = r = (r 1 || r 2 || r 3 ), therefore, A = r'H mod δ = rH mod δ = e = B, i.e. A correctly formed collective signature satisfies the signature verification procedure, i.e. the correctness of the procedures for generating and verifying EDS is proved. Similarly, the proof of correctness is given for claims 2 and 3 of the claims.

Рассмотрим примеры реализации заявленного технического решения, где конкретные значения использованных параметров описаны в приводимых ниже численных примерах. Использованные в примерах вектора МДЧ были сгенерирована с помощью программы, разработанной специально для генерации матриц, включая векторы МДЧ с заданным порядком, и выполнения операций над векторами МДЧ. Приводимые в примере МДЧ взяты сравнительно малого размера и записаны для краткости в виде десятичных чисел. В вычислительных устройствах МДЧ представляются и преобразуются в двоичном виде, т.e. в виде последовательности сигналов высокого и низкого потенциала. В реальных приложениях следует использовать вектора МДЧ, которые включают МДЧ длиной от 16 до 512 бит в зависимости от значения их размерности m. При меньшей размерности следует использовать МДЧ более высокой разрядности.Consider examples of the implementation of the claimed technical solution, where specific values of the parameters used are described in the numerical examples given below. The MDC vectors used in the examples were generated using a program developed specifically for generating matrices, including MDC vectors with a given order, and performing operations on MDC vectors. The MDCs given in the example are taken of a relatively small size and are written for brevity in the form of decimal numbers. In computing devices, MDCs are represented and converted in binary form, i.e. as a sequence of high and low potential signals. In real applications, MDC vectors should be used, which include MDCs from 16 to 512 bits in length, depending on the value of their dimension m. With a smaller dimension, a higher-resolution MDC should be used.

При использовании на практике заявляемого способа следует выбрать таблицу замены переменных и размер параметров р и q таким образом, чтобы разрядность значения порядка q была равна или превышала 160 бит. В примерах, приводимых ниже, используются параметры с искусственно уменьшенной разрядностью, чтобы уменьшить размер примеров и сделать их более наглядными.When using the proposed method in practice, one should choose a variable replacement table and the size of the parameters p and q in such a way that the bit capacity of the order q is equal to or greater than 160 bits. The examples below use parameters with artificially reduced bit depth to reduce the size of the examples and make them more visual.

Пример 1. Случай использования двухкомпонентных векторов МДЧ (иллюстрация пп.2 и 3 формулы изобретения). В данном примере групповая операция

Figure 00000014
выполняется с использованием следующей таблицы замены переменных:Example 1. The case of using two-component MDC vectors (illustration of claims 2 and 3 of the claims). In this example, a group operation
Figure 00000014
performed using the following variable replacement table:

Figure 00000015
Figure 00000015

Выполняется следующая последовательность действий.The following sequence of actions is performed.

1. Генерируют простое число р, такое что p-1 содержит большой простой множитель q, т.е. р=Nq+1, где N - четное число:1. A prime number p is generated such that p-1 contains a large prime factor q, that is, p = Nq + 1, where N is an even number:

р=3990163786012426536171919;p = 3990163786012426536171919;

q=1997539432909;q = 1997539432909;

G=2205829896139765611199743е+750652585528120205203869i;G = 2205829896139765611199743e + 750652585528120205203869i;

2. Генерируют секретный ключ х в виде случайного МДЧ:2. Generate the secret key x in the form of a random MDC:

х=1853362791;x = 1853362791;

3. Формируют открытый ключ в виде вектора МДЧ Y, для чего выполняют следующую последовательность действий.3. The public key is formed in the form of a MDC vector Y, for which the following sequence of actions is performed.

3.1. Генерируют вектор МДЧ, имеющий порядок q=1997539432909.3.1. An MDC vector of order q = 1997539432909 is generated.

3.2. Генерируют вектор МДЧ Y=Gх (mod р):3.2. Generate the MDC vector Y = G x (mod p):

Y=1170349070330824405069406е+2505690115109586035639139i;Y = 1170349070330824405069406e + 2505690115109586035639139i;

4. Принимают ЭД, представленный, например, следующим МДЧ H (в качестве которого может быть взята, в частности, хэш-функция от ЭД):4. Accept the ED represented, for example, by the following MDC H (which can be taken, in particular, the hash function of the ED):

H=635473563483.H = 635473563483.

5. Формируют ЭЦП Q в виде пары чисел (е, s) для чего выполняют следующие действия:5. Form the digital signature Q in the form of a pair of numbers (e, s) for which they perform the following steps:

5.1. Формируется первый элемент ЭЦП е, для чего5.1. The first element of the digital signature is formed e, for which

5.1.1. Генерируется случайное МДЧ k=18357236873.5.1.1. A random MDC k = 18357236873 is generated.

5.1.2. Генерируется вектор МДЧ R=Gk(mod p):5.1.2. The MDC vector R = G k (mod p) is generated:

R=2057361867821351253457028е+3679538494005836479635721i.R = 2057361867821351253457028е + 3679538494005836479635721i.

5.1.3. Вычисляется МДЧ е по формуле е=r1h mod δ, где δ - вспомогательное простое число (например, δ=q=1997539432909), r1 - первое МДЧ в векторе МДЧ R: е=113678582682.5.1.3. MDC e is calculated by the formula e = r 1 h mod δ, where δ is an auxiliary prime number (for example, δ = q = 1997539432909), r 1 is the first MDC in the MDC vector R: е = 113678582682.

5.2. Формируется второй элемент ЭЦП s по формуле s=k+xe mod q:5.2. The second element of the EDS s is formed by the formula s = k + xe mod q:

s=139316649025.s = 139316649025.

6. Формируется первое проверочное МДЧ А, для чего выполняются следующие действия.6. The first verification MDC A is formed, for which the following actions are performed.

6.1. Вычисляется вектор МДЧ R' по формуле:

Figure 00000016
6.1. The MDC vector R 'is calculated by the formula:
Figure 00000016

q-е=1883860850227;q-e = 1883860850227;

Yq-e=2005499870579969554139198е+3027974868612498293037474i. Gs=1846689595470242217257892e+2845865428349522504128287i. R'=20573б1867821351253457028е+3679538494005836479635721i.Y qe = 2005499870579969554139198е + 3027974868612498293037474i. G s = 1846689595470242217257892e + 2845865428349522504128287i. R '= 20573b1867821351253457028e + 3679538494005836479635721i.

6.2. Вычисляется МДЧ А по формуле А=R'eh mod q: A=113678582682.6.2. MDC A is calculated by the formula A = R ' e h mod q: A = 113678582682.

7. Формируется второе проверочное МДЧ по формуле В=е:7. The second verification MDC is formed according to the formula B = e:

B=113678582682.B = 113678582682.

8. Сравнивают первое и второе проверочные МДЧ: А=В.8. Compare the first and second verification MDC: A = B.

Совпадение проверочных МДЧ подтверждает подлинность ЭЦП.The coincidence of verification MDC confirms the authenticity of the digital signature.

Пример 2. Случай использования трехкомпонентных векторов МДЧ (иллюстрация п.4 формулы изобретения). В данном примере групповая операция

Figure 00000014
выполняется с использованием следующей таблицы замены переменных:Example 2. The case of the use of three-component MDC vectors (illustration of claim 4 of the claims). In this example, a group operation
Figure 00000014
performed using the following variable replacement table:

Figure 00000017
Figure 00000017

Выполняется следующая последовательность действий.The following sequence of actions is performed.

1. Генерируют простое число р, такое что p-1 содержит большой простой множитель q, т.е. р=Nq+1, где N - четное число:1. A prime number p is generated such that p-1 contains a large prime factor q, that is, p = Nq + 1, where N is an even number:

р=30817; q=107;p = 30817; q is 107;

2. Генерируют секретный ключ х в виде случайного МДЧ:2. Generate the secret key x in the form of a random MDC:

x=79.x = 79.

3. Формируют открытый ключ в виде вектора МДЧ Y, для чего выполняют следующую последовательность действий.3. The public key is formed in the form of a MDC vector Y, for which the following sequence of actions is performed.

3.1. Генерируют вектор МДЧ G, имеющий порядок q=107:3.1. Generate the MDC vector G of order q = 107:

G=11297е+10799i+23186j.G = 11297e + 10799i + 23186j.

3.2. Генерируют вектор МДЧ Y=Gх (mod p):3.2. Generate the MDC vector Y = G x (mod p):

Y=Gх (mod p)=9129e+24262i+19035j.Y = G x (mod p) = 9129e + 24262i + 19035j.

4. Принимают ЭД, представленный, например, следующим МДЧ H (в качестве которого может быть взята, в частности, хэш-функция от ЭД): Н=68.4. Accept the ED represented, for example, by the following MDC H (which can be taken, in particular, the hash function of the ED): H = 68.

5. Формируют ЭЦП Q в виде пары чисел (е, s), для чего выполняют следующие действия:5. Form the digital signature Q in the form of a pair of numbers (e, s), for which they perform the following steps:

5.1. Формируется первый элемент ЭЦП е, для чего5.1. The first element of the digital signature is formed e, for which

5.1.1. Генерируется случайное МДЧ k=87.5.1.1. A random MDF k = 87 is generated.

5.1.2. Генерируется вектор МДЧ R=Gk (mod p)=23203е+17932i+16380j.5.1.2. The MDC vector R = G k (mod p) = 23203e + 17932i + 16380j is generated.

5.1.3. Вычисляется МДЧ е по формуле е=rH mod δ, где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора R, и δ=109 - вспомогательное простое число: е=76.5.1.3. The MDC e is calculated by the formula e = rH mod δ, where r = (r 1 || r 2 || r 3 ) is the MDC equal to the concatenation of the MDC included in the vector R, and δ = 109 is an auxiliary prime number: e = 76.

5.2. Формируется второй элемент ЭЦП s по формуле s=k+хе mod q: s=99.5.2. The second element of the EDS s is formed by the formula s = k + хе mod q: s = 99.

6. Формируется первое проверочное МДЧ А, для чего выполняются следующие действия:6. The first verification MDC A is formed, for which the following actions are performed:

6.1. Вычисляется вектор МДЧ R' по формуле

Figure 00000018
6.1. The MDC vector R 'is calculated by the formula
Figure 00000018

Yq-e (mod p)=16855e+6774i+24171j.Y qe (mod p) = 16855e + 6774i + 24171j.

Gs (mod p)=6300e+3337i+13319j.G s (mod p) = 6300e + 3337i + 13319j.

R'=23203e+17932i+16380j.R '= 23203e + 17932i + 16380j.

6.2. Вычисляется МДЧ А по формуле А=r'H mod δ, где r'=(r'1||r'2||r'3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора МДЧ R', и δ=109 - вспомогательное простое число: А=76.6.2. MDC A is calculated by the formula A = r'H mod δ, where r '= (r' 1 || r ' 2 || r' 3 ) is the MDC equal to the concatenation of the MDC included in the MDC vector R ', and δ = 109 - auxiliary prime: A = 76.

7. Формируется второе проверочное МДЧ по формуле В=е: В=е=76.7. The second verification MDC is formed according to the formula B = e: B = e = 76.

8. Сравнивают первое и второе проверочные МДЧ: А=В.8. Compare the first and second verification MDC: A = B.

Совпадение проверочных МДЧ подтверждает подлинность ЭЦП.The coincidence of verification MDC confirms the authenticity of the digital signature.

Пример 3. Случай использования трехкомпонентных векторов МДЧ (иллюстрация п.4 формулы изобретения). В данном примере групповая операция

Figure 00000014
выполняется с использованием следующей таблицы замены переменных:Example 3. The case of using three-component MDC vectors (illustration of claim 4 of the claims). In this example, a group operation
Figure 00000014
performed using the following variable replacement table:

Figure 00000019
Figure 00000019

Данный пример показывает, что при соответствующем выборе простого числа р и таблицы замены переменных значение порядка q может значительно превышать значение р. Выполняется следующая последовательность действий.This example shows that with an appropriate choice of a prime number p and a variable substitution table, a value of order q can significantly exceed a value of p. The following sequence of actions is performed.

1. Генерируют простое число р, такое что число p2+р+1 содержит большой простой множитель q:1. Generate a prime number p such that p 2 + p + 1 contains a large prime factor q:

p=97; q=3169.p = 97; q = 3169.

2. Генерируют секретный ключ х в виде случайного МДЧ:2. Generate the secret key x in the form of a random MDC:

х=2079.x = 2079.

3. Формируют открытый ключ в виде вектора МДЧ Y, для чего выполняют следующую последовательность действий.3. The public key is formed in the form of a MDC vector Y, for which the following sequence of actions is performed.

3.1. Генерируют вектор МДЧ G, имеющий порядок q=3169:3.1. Generate the MDC vector G of order q = 3169:

G=8е+3i+93j.G = 8e + 3i + 93j.

3.2. Генерируют вектор МДЧ Y=Gх (mod р):3.2. Generate the MDC vector Y = G x (mod p):

Y=87е+96i+86j.Y = 87e + 96i + 86j.

4. Принимают ЭД, представленный, например, следующим МДЧ H (в качестве которого может быть взята, в частности, хэш-функция от ЭД): Н=5168.4. Accept the ED represented, for example, by the following MDC H (which can be taken, in particular, the hash function of the ED): H = 5168.

5. Формируют ЭЦП Q в виде пары чисел (е, s), для чего выполняют следующие действия:5. Form the digital signature Q in the form of a pair of numbers (e, s), for which they perform the following steps:

5.1. Формируется первый элемент ЭЦП е, для чего5.1. The first element of the digital signature is formed e, for which

5.1.1. Генерируется случайное МДЧ k=5387.5.1.1. A random MDF k = 5387 is generated.

5.1.2. Генерируется вектор МДЧ R=Gk (mod p)=96е+56i+81j.5.1.2. The MDC vector R = G k (mod p) = 96e + 56i + 81j is generated.

5.1.3. Вычисляется МДЧ е по формуле е=rH mod δ, где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора R, и δ=3169: е=3138.5.1.3. The MDC e is calculated by the formula e = rH mod δ, where r = (r 1 || r 2 || r 3 ) is the MDC equal to the concatenation of the MDC included in the vector R and δ = 3169: e = 3138.

5.2. Формируется второй элемент ЭЦП s по формуле s=k+xe mod q: s=1149.5.2. The second element of the EDS s is formed by the formula s = k + xe mod q: s = 1149.

6. Формируется первое проверочное МДЧ А, для чего выполняются следующие действия:6. The first verification MDC A is formed, for which the following actions are performed:

6.1. Вычисляется вектор МДЧ R' по формуле

Figure 00000020
6.1. The MDC vector R 'is calculated by the formula
Figure 00000020

Yq-e (mod p)=75e+46i+84jY qe (mod p) = 75e + 46i + 84j

Gs(mod p)=27e+81i+81jG s (mod p) = 27e + 81i + 81j

R'=96е+56i+81j.R '= 96e + 56i + 81j.

6.2. Вычисляется МДЧ А по формуле А=r'H mod δ, где r'=(r'1||r'2||r'3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора МДЧ R', и δ=3169 - вспомогательное простое число: А=3138.6.2. MDC A is calculated by the formula A = r'H mod δ, where r '= (r' 1 || r ' 2 || r' 3 ) is the MDC equal to the concatenation of the MDC included in the MDC vector R ', and δ = 3169 is an auxiliary prime: A = 3138.

7. Формируется второе проверочное МДЧ по формуле В=е: В=е=3138.7. A second verification MDC is formed by the formula B = e: B = e = 3138.

8. Сравнивают первое и второе проверочные МДЧ: А=В.8. Compare the first and second verification MDC: A = B.

Совпадение проверочных МДЧ подтверждает подлинность ЭЦП.The coincidence of verification MDC confirms the authenticity of the digital signature.

Пример 4. Случай использования трехкомпонентных векторов МДЧ (иллюстрация п.5 формулы изобретения). В данном примере в качестве модуля р используется составное МДЧ, а групповая операция

Figure 00000014
выполняется с использованием следующей таблицы замены переменных:Example 4. The case of using three-component MDC vectors (illustration of claim 5 of the claims). In this example, the composite MDC is used as the module p, and the group operation
Figure 00000014
performed using the following variable replacement table:

Figure 00000021
Figure 00000021

Выполняется следующая последовательность действий.The following sequence of actions is performed.

1. Генерируют составное число р, равное произведению простых чисел 11 и 457: р=5027.1. Generate a composite number p equal to the product of the prime numbers 11 and 457: p = 5027.

2. Генерируют секретный ключ х в виде случайного МДЧ:2. Generate the secret key x in the form of a random MDC:

х=279.x = 279.

3. Формируют открытый ключ в виде вектора МДЧ Y, для чего выполняют следующую последовательность действий.3. The public key is formed in the form of a MDC vector Y, for which the following sequence of actions is performed.

3.1. Генерируют вектор МДЧ G, имеющий порядок q=457:3.1. Generate the MDC vector G of order q = 457:

G=1e+4631i+4785j.G = 1e + 4631i + 4785j.

3.2. Генерируют вектор МДЧ Y=Gх (mod p):3.2. Generate the MDC vector Y = G x (mod p):

Y=1e+2156i+2860j.Y = 1e + 2156i + 2860j.

4. Принимают ЭД, представленный, например, следующим МДЧ Н (в качестве которого может быть взята, в частности, хэш-функция от ЭД): Н=168.4. Accept the ED represented, for example, by the following MDC N (which can be taken, in particular, the hash function of the ED): N = 168.

5. Формируют ЭЦП Q в виде пары чисел (е, s), для чего выполняют следующие действия:5. Form the digital signature Q in the form of a pair of numbers (e, s), for which they perform the following steps:

5.1. Формируется первый элемент ЭЦП е, для чего5.1. The first element of the digital signature is formed e, for which

5.1.1. Генерируется случайное МДЧ k=387.5.1.1. A random MDC k = 387 is generated.

5.1.2. Генерируется вектор МДЧ R=Gk (mod p)=1e+2475i+1859j.5.1.2. The MDC vector R = G k (mod p) = 1e + 2475i + 1859j is generated.

5.1.3. Вычисляется МДЧ е по формуле е=rH mod δ, где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора R, и δ=319: е=190.5.1.3. The MDC e is calculated by the formula e = rH mod δ, where r = (r 1 || r 2 || r 3 ) is the MDC equal to the concatenation of the MDC included in the vector R, and δ = 319: e = 190.

5.2. Формируется второй элемент ЭЦП s по формуле s=k+xe mod q: s=385.5.2. The second element of the EDS s is formed by the formula s = k + xe mod q: s = 385.

6. Формируется первое проверочное МДЧ А, для чего выполняются следующие действия:6. The first verification MDC A is formed, for which the following actions are performed:

6.1. Вычисляется вектор МДЧ R' по формуле

Figure 00000022
6.1. The MDC vector R 'is calculated by the formula
Figure 00000022

Yq-e (mod p)=1e+2475i+4543j; Gs(mod p)=1e+2937i+2343jY qe (mod p) = 1e + 2475i + 4543j; G s (mod p) = 1e + 2937i + 2343j

R'=1е+56i+81j.R '= 1e + 56i + 81j.

6.2. Вычисляется МДЧ А по формуле А=r'H mod δ, где r'=(r'1||r'2||r'3) - МДЧ, равное конкатенации МДЧ, входящих в состав вектора МДЧ R', и δ=3169 - вспомогательное простое число: А=190.6.2. MDC A is calculated by the formula A = r'H mod δ, where r '= (r' 1 || r ' 2 || r' 3 ) is the MDC equal to the concatenation of the MDC included in the MDC vector R ', and δ = 3169 is an auxiliary prime: A = 190.

7. Формируется второе проверочное МДЧ по формуле В=е: В=е=190.7. A second verification MDC is formed according to the formula B = e: B = e = 190.

8. Сравнивают первое и второе проверочные МДЧ: А=В.8. Compare the first and second verification MDC: A = B.

Совпадение проверочных МДЧ подтверждает подлинность ЭЦП.The coincidence of verification MDC confirms the authenticity of the digital signature.

Приведенные выше примеры показывают принципиальную реализуемость и корректность заявленного способа формирования и проверки подлинности ЭЦП, заверяющей ЭД. Аналогичным образом реализуется заявляемый способ при использовании векторов МДЧ размерности m=4, m=5, m=6 и т.д. Например, могут быть использованы следующие таблицы замены формальных переменных, в которых значение параметра а может быть выбрано в интервале 0≤а<р, где число р выбирается таким образом, чтобы обеспечивалось значение порядка векторов МДЧ q, равное достаточно большому простому МДЧ, например равное значению простого МДЧ разрядности 160, 256 или 512 бит. Таблица для задания групповой операции над четырехкомпонентными векторами МДЧ (случай m=4) имеет вид:The above examples show the fundamental feasibility and correctness of the claimed method of forming and verifying the authenticity of the digital signature certifying the ED. Similarly, the inventive method is implemented using MDC vectors of dimension m = 4, m = 5, m = 6, etc. For example, the following formal variable replacement tables can be used, in which the value of the parameter a can be selected in the interval 0≤a <p, where the number p is chosen so that a value of the order of the MDC vectors q is ensured, which is equal to a sufficiently large simple MDC, for example, equal to the value of a simple MDC of 160, 256 or 512 bit. The table for specifying a group operation on four-component MDC vectors (case m = 4) has the form:

Figure 00000023
Figure 00000023

Таблица для задания групповой операции над пятикомпонентными векторами МДЧ (случай m=5) имеет вид:The table for specifying a group operation on five-component MDC vectors (case m = 5) has the form:

Figure 00000024
Figure 00000024

Таблица для задания групповой операции над шестикомпонентными векторами МДЧ (случай m=6) имеет вид:The table for specifying the group operation on the six-component MDC vectors (case m = 6) has the form:

Figure 00000025
Figure 00000025

Была разработаны программы для ЭВМ, реализующие операции умножения и возведения в большую целочисленную степень векторов МДЧ, имеющих размерность m=2, m=3, m=4, m=5 и m=6. С помощью этих программ были сгенерированы приведенные выше примеры и установлено, что аналогичные примеры реализации заявленного способа с использованием векторов МДЧ размерности m=4, m=5 и m=6 также обеспечивают корректность процедуры проверки подлинности ЭЦП.Computer programs have been developed that implement the operations of multiplying and raising to a large integer power MDC vectors having dimensions m = 2, m = 3, m = 4, m = 5, and m = 6. Using these programs, the above examples were generated and it was found that similar examples of the implementation of the claimed method using MDC vectors of dimensions m = 4, m = 5 and m = 6 also ensure the correctness of the digital signature authentication procedure.

По аналогии с построением приведенных выше таблиц можно построить таблицы, определяющие групповые операции над векторами произвольных размерностей m. При этом при использовании групп векторов МДЧ, имеющих сравнительно большую размерность, высокая криптографическая стойкость ЭЦП обеспечивается при меньшей разрядности МДЧ, являющихся компонентами векторов МДЧ. Например, при m=16 и m=32 разрядность указанных МДЧ может составлять 64 и 32 бита соответственно, что позволяет повысить быстродействие процедур формирования и проверки подписи при программной реализации для выполнения программ, реализующих заявляемый способ, на 64- и 32-разрядных микропроцессорах.By analogy with the construction of the above tables, we can construct tables defining group operations on vectors of arbitrary dimensions m. Moreover, when using groups of MDC vectors having a relatively large dimension, high cryptographic strength of the digital signature is ensured with a lower bit depth of the MDC, which are components of the MDC vectors. For example, with m = 16 and m = 32, the bit depth of these MDCs can be 64 and 32 bits, respectively, which allows to increase the speed of signature generation and verification procedures in software implementation to run programs that implement the claimed method on 64- and 32-bit microprocessors.

Приведенные выше примеры экспериментально подтверждают корректность реализации заявляемого способа, что дополняет приведенные выше математические доказательства корректности описанных конкретных реализаций заявленного способа формирования и проверки ЭЦП, заверяющей ЭД.The above examples experimentally confirm the correctness of the implementation of the proposed method, which complements the above mathematical proofs of the correctness of the described specific implementations of the claimed method of forming and checking the digital signature verifying the ED.

Таким образом, показано, что заявляемый способ может быть положен в основу стойких систем ЭЦП, обеспечивающих повышение производительности устройств и программ формирования и проверки ЭЦП.Thus, it is shown that the inventive method can be the basis for stable systems of digital signature, providing increased productivity of devices and programs for the formation and verification of digital signature.

Приведенные примеры и математическое обоснование показывают, что предлагаемый способ формирования и проверки подлинности ЭЦП работает корректно, технически реализуем и позволяет достичь сформулированного технического результата.The above examples and mathematical justification show that the proposed method for generating and verifying the authenticity of the digital signature works correctly, is technically feasible and allows to achieve the formulated technical result.

Приложение 1Annex 1

Толкование терминов, используемых в описании заявкиInterpretation of the terms used in the description of the application

1. Двоичный цифровой электромагнитный сигнал - последовательность битов в виде нулей и единиц.1. Binary digital electromagnetic signal - a sequence of bits in the form of zeros and ones.

2. Параметры двоичного цифрового электромагнитного сигнала: разрядность и порядок следования единичных и нулевых битов.2. Parameters of a binary digital electromagnetic signal: bit depth and order of single and zero bits.

3. Разрядность двоичного цифрового электромагнитного сигнала - общее число его единичных и нулевых битов, например число 10011 является 5-разрядным.3. The bit depth of a binary digital electromagnetic signal is the total number of its single and zero bits, for example, the number 10011 is 5-bit.

4. Электронная цифровая подпись (ЭЦП) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от подписанного электронного документа и от секретного ключа. Проверка подлинности ЭЦП осуществляют с помощью открытого ключа, который зависит от секретного ключа.4. Electronic digital signature (EDS) - a binary digital electromagnetic signal, the parameters of which depend on the signed electronic document and on the secret key. EDS authentication is carried out using a public key, which depends on the secret key.

5. Электронный документ (ЭД) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от исходного документа и способа его преобразования к электронному виду.5. An electronic document (ED) is a binary digital electromagnetic signal, the parameters of which depend on the original document and how it is converted to electronic form.

6. Секретный ключ - двоичный цифровой электромагнитный сигнал, используемый для формирования подписи к заданному электронному документу. Секретный ключ представляется, например, в двоичном виде как последовательность цифр «0» и «1».6. Secret key - a binary digital electromagnetic signal used to generate a signature for a given electronic document. The secret key is represented, for example, in binary form as a sequence of digits "0" and "1".

7. Открытый ключ - двоичный цифровой электромагнитный сигнал, параметры которого зависят от секретного ключа и который предназначен для проверки подлинности цифровой электронной подписи.7. Public key - a binary digital electromagnetic signal, the parameters of which depend on the secret key and which is designed to verify the authenticity of a digital electronic signature.

8. Хэш-функция от электронного документа - двоичный цифровой электромагнитный сигнал, параметры которого зависят от электронного документа и выбранного метода ее вычисления. В системах ЭЦП считается, что хэш-функция однозначно представляет ЭД, поскольку используемые хэш-функции удовлетворяют требованию коллизионной стойкости, которое означает вычислительную невозможность нахождения двух различных ЭД, которым соответствует одно и то же значение хэш-функции.8. A hash function of an electronic document is a binary digital electromagnetic signal, the parameters of which depend on the electronic document and the chosen method of its calculation. In EDS systems, it is believed that the hash function uniquely represents ED, since the used hash functions satisfy the requirement of collision stability, which means it is computationally impossible to find two different EDs that correspond to the same value of the hash function.

9. Многоразрядное двоичное число (МДЧ) - двоичный цифровой электромагнитный сигнал, интерпретируемый как двоичное число и представляемый в виде последовательности цифр «0» и «1».9. A multi-bit binary number (MDC) is a binary digital electromagnetic signal, interpreted as a binary number and represented as a sequence of digits "0" and "1".

10. Операция возведения числа S в дискретную степень А по модулю n - это операция, выполняемая над конечным множеством натуральных чисел {0, 1, 2, …, n-1}, включающем n чисел, являющихся остатками от деления всевозможных целых чисел на число n; результат выполнения операций сложения, вычитания и умножения по модулю n представляет собой число из этого же множества [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.]; операция возведения числа S в дискретную степень Z по модулю n определяется как Z-кратное последовательное умножение по модулю n числа S на себя, т.е. в результате этой операции также получается число W, которое меньше или равно числу n-1; даже для очень больших чисел S, Z и n существуют эффективные алгоритмы выполнения операции возведения в дискретную степень по модулю.10. The operation of raising a number S to a discrete power A modulo n is an operation performed on a finite set of natural numbers {0, 1, 2, ..., n-1}, including n numbers that are the remainders of dividing all kinds of integers by a number n; the result of the operations of addition, subtraction and multiplication modulo n is a number from the same set [Vinogradov IM Fundamentals of number theory. - M .: Nauka, 1972. - 167 p.]; the operation of raising a number S to a discrete power Z modulo n is defined as a Z-fold sequential multiplication modulo n of the number S by itself, i.e. as a result of this operation, the number W is also obtained that is less than or equal to the number n-1; even for very large numbers S, Z and n, there are effective algorithms for performing the operation of raising a discrete power modulo.

11. Показатель q по модулю n числа а, являющегося взаимно простым с n - это минимальное из чисел γ, для которых выполняется условие aγ mod n=1, т.е. q=min{γ1, γ2, …} [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.].11. The exponent q modulo n of the number a, which is coprime with n, is the minimum of the numbers γ for which the condition a γ mod n = 1 is satisfied, that is, q = min {γ 1 , γ 2 , ...} [I. Vinogradov Fundamentals of number theory. - M .: Nauka, 1972. - 167 p.].

12. Операция деления целого числа А на целое число В по модулю n выполняется как операция умножения по модулю n числа А на целое число В-1, которое является обратным к В по модулю n.12. The operation of dividing the integer A by an integer B modulo n is performed as the operation of multiplying modulo n the number A by an integer B -1 , which is the inverse of B modulo n.

13. Порядок числа q по модулю n числа а - это показатель q по модулю n числа а.13. The order of q modulo n of a is the exponent q modulo n of a.

14. Группа - это алгебраическая структура (т.е. множество математических элементов различной природы), над элементами которой задана некоторая операция и они обладают заданным набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является также элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в книгах А.Г.Курош. Теория групп. М., «Наука», 1967. - 648 с. и М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп. - М., «Наука. Физматлит», 1996. - 287 с. Операция, определенная над элементами группы называется групповой операцией.14. A group is an algebraic structure (that is, a set of mathematical elements of various nature), on the elements of which a certain operation is specified and they have a given set of properties: the operation is associative, the result of the operation on two elements is also an element of the same structure, there is a neutral an element such that when performing an operation on it and some other element a of the group, the result is element a. A detailed description of the groups is given in the books of A.G. Kurosh. Group theory. M., "Science", 1967. - 648 p. and M.I. Kargapolov, Yu.I. Merzlyakov. Fundamentals of group theory. - M., “Science. Fizmatlit ", 1996. - 287 p. An operation defined over group elements is called a group operation.

15. Циклическая группа - это группа, каждый элемент которой может быть представлен в виде g=аn для некоторого натурального значения n, где а - элемент данной группы, называемый генератором или образующим элементом циклической группы. Степень n означает, что над элементом а выполняются n последовательных операций, т.е. выполняются вычисления по формуле

Figure 00000026
обозначает операцию, определенную над элементами группы.15. A cyclic group is a group, each element of which can be represented in the form g = a n for some natural value n, where a is an element of this group, called a generator or generatrix element of a cyclic group. The degree n means that n consecutive operations are performed on element a, i.e. calculations are performed according to the formula
Figure 00000026
denotes an operation defined on group elements.

16. Циклическая подгруппа группы - это подгруппа, каждый элемент g которой может быть представлен в виде g=аn для некоторого натурального значения n, где а - элемент данной подгруппы, называющийся генератором или образующим элементом циклической подгруппы.16. A cyclic subgroup of a group is a subgroup, each element of g of which can be represented as g = a n for some natural value n, where a is an element of this subgroup, called a generator or a generating element of a cyclic subgroup.

17. Вектор - это набор из двух или элементов различной природы, называемых компонентами вектора.17. A vector is a set of two or elements of different nature called components of a vector.

18. Вектор многоразрядных двоичных чисел (вектора МДЧ) - это набор из двух или более МДЧ, называемых компонентами вектора МДЧ. Вектор МДЧ записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции компонентов. Например, вектор МДЧ можно записать в виде (а1, а2, …, аm), где m≥2 - это размерность вектора МДЧ, означающая число компонентов в векторе МДЧ. В качестве разделителя может быть использован знак операции, определенной над компонентами вектора, и тогда компоненты вектора идентифицируются указанием формальной переменной (в начале или в конце соответствующего компонента) в виде буквы латинского алфавита. Формальной называется переменная потому, что ей не приписывается никакого численного значения, и она служит только для того, чтобы идентифицировать компонент вектора МДЧ независимо от последовательности его записи. Так, векторы МДЧ Z1=5e+3i+5j и 18. A vector of multi-bit binary numbers (MDC vector) is a set of two or more MDC called components of the MDC vector. The MDC vector is written in various ways, the requirement for which is that they identify the positions of the components. For example, the MDC vector can be written in the form (a 1 , a 2 , ..., a m ), where m≥2 is the dimension of the MDC vector, which means the number of components in the MDC vector. As a separator, the sign of the operation defined over the components of the vector can be used, and then the components of the vector are identified by indicating a formal variable (at the beginning or at the end of the corresponding component) in the form of a letter of the Latin alphabet. A variable is called formal because no numerical value is assigned to it, and it serves only to identify the component of the MDC vector, regardless of the sequence of its recording. So, the MDC vectors Z 1 = 5e + 3i + 5j and

Z2=3i+5e+5j рассматриваются как равные, т.е. Z1=Z2. При использовании некоторых частных таблиц замены переменных формальные переменные в литературе иногда называются базисными векторами, а числа Z1 и Z2 - векторами m-мерного пространства [Л.Б.Шнеперман. Курс алгебры и теории чисел в задачах и упражнениях. - Минск, «Вышэйшая школа», 1986. - 272 с.].Z 2 = 3i + 5e + 5j are considered equal, i.e. Z 1 = Z 2 . When using some private variable substitution tables, formal variables in the literature are sometimes called basis vectors, and the numbers Z 1 and Z 2 are called vectors of the m-dimensional space [L.B.Shneperman. A course in algebra and number theory in problems and exercises. - Minsk, “Higher School”, 1986. - 272 p.].

19. Размерность вектора МДЧ - это количество МДЧ, входящих в вектор МДЧ в качестве компонентов.19. The dimension of the MDC vector is the number of MDC included in the MDC vector as components.

Claims (5)

1. Способ генерации и проверки подлинности электронной цифровой подписи, заверяющей электронный документ, заключающийся в том, что генерируют секретный ключ в виде многоразрядного двоичного числа х, по секретному ключу формируют открытый ключ Y в виде более чем одного многоразрядного двоичного числа, принимают электронный документ, представленный многоразрядным двоичным числом Н, в зависимости от принятого электронного документа и от значения секретного ключа формируют электронную цифровую подпись Q в виде двух многоразрядных двоичных чисел, в зависимости от открытого ключа, принятого электронного документа и электронной цифровой подписи формируют первое А и второе В проверочные многоразрядные двоичные числа, сравнивают их и при совпадении их параметров делают вывод о подлинности электронной цифровой подписи, отличающийся тем, что открытый ключ Y формируют в виде вектора многоразрядных двоичных чисел размерности m, где 2≤m≤64.1. A method for generating and verifying the authenticity of an electronic digital signature certifying an electronic document, which consists in generating a secret key in the form of a multi-bit binary number x, using the secret key, form a public key Y in the form of more than one multi-bit binary number, receiving an electronic document, represented by a multi-bit binary number H, depending on the received electronic document and the value of the secret key, form an electronic digital signature Q in the form of two multi-bit binary numbers, depending on the public key, the received electronic document and electronic digital signature, form the first A and second B multi-bit verification binary numbers, compare them and, if their parameters coincide, make a conclusion about the authenticity of the electronic digital signature, characterized in that the public key Y is formed in as a vector of multi-bit binary numbers of dimension m, where 2≤m≤64. 2. Способ по п.1, отличающийся тем, что открытый ключ Y генерируют в виде вектора многоразрядных двоичных чисел размерности m=2, для чего генерируют вектор многоразрядных двоичных чисел G размерности m=2, имеющий порядок, равный многоразрядному двоичному числу q, и открытый ключ Y формируют по формуле Y=Gx (mod р), где р - многоразрядное двоичное число, являющееся модулем, по которому выполняются операции над многоразрядными двоичными числами, входящими в состав вектора многоразрядных двоичных чисел G при выполнении над G операции возведения в степень, а электронную цифровую подпись формируют в виде пары многоразрядных двоичных чисел е и s, для чего генерируют случайное многоразрядное двоичное число k, генерируют
вектор многоразрядных двоичных чисел R по формуле R=Gk (mod p), затем формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле е=r1Н mod δ, где r1 - первое многоразрядное двоичное число в векторе многоразрядных двоичных чисел R и δ - вспомогательное простое многоразрядное двоичное число, затем генерируют второе многоразрядное двоичное число s электронной цифровой подписи по формуле s=(k+ex)mod q, после чего формируют первое и второе проверочные многоразрядные двоичные числа А и В по формулам А=r'Н mod δ и В=е, где r'1 - первое многоразрядное двоичное число в векторе многоразрядных двоичных чисел R', вычисленном по формуле R'=Yq-eGs(mod p).
2. The method according to claim 1, characterized in that the public key Y is generated in the form of a vector of multi-bit binary numbers of dimension m = 2, for which a vector of multi-bit binary numbers G of dimension m = 2 is generated, having an order equal to a multi-bit binary number q, and the public key Y is formed by the formula Y = G x (mod p), where p is a multi-bit binary number, which is the module by which operations are performed on the multi-bit binary numbers that are part of the vector of multi-bit binary numbers G when performing the exponentiation operation on G b, and the electronic digital signature is formed as a pair of multi-bit binary numbers e and s, for which a random multi-bit binary number k is generated, generate
the vector of multi-bit binary numbers R by the formula R = G k (mod p), then the first multi-bit binary number e of an electronic digital signature is formed by the formula e = r 1 H mod δ, where r 1 is the first multi-bit binary number in the vector of multi-bit binary numbers R and δ is an auxiliary simple multi-bit binary number, then a second multi-bit binary number s of electronic digital signature is generated by the formula s = (k + ex) mod q, after which the first and second test multi-bit binary numbers A and B are formed by the formulas A = r ' H mod δ and B = e, where r ' 1 is the first multi-bit binary number in the vector of multi-bit binary numbers R 'calculated by the formula R' = Y qe G s (mod p).
3. Способ по п.2, отличающийся тем, что многоразрядные двоичные числа р и q являются простыми.3. The method according to claim 2, characterized in that the multi-bit binary numbers p and q are prime. 4. Способ по п.1, отличающийся тем, что открытый ключ Y генерируют в виде вектора многоразрядных двоичных чисел размерности m=3, для чего генерируют вектор многоразрядных двоичных чисел G размерности m=3, имеющую порядок, равный многоразрядному двоичному числу q, и открытый ключ Y формируют по формуле Y=Gx (mod р), где р - многоразрядное двоичное число, являющееся модулем, по которому выполняются операции над многоразрядными двоичными числами, входящими в состав вектора многоразрядных двоичных чисел G при выполнении над G операции возведения в степень, а электронную цифровую подпись формируют в виде пары многоразрядных двоичных чисел е и s, для чего генерируют случайное многоразрядное двоичное число k, генерируют вектор многоразрядных двоичных чисел R по формуле R=Gk (mod р), затем формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле е=rН mod δ, где r=(r1||r2||r3) - многоразрядное двоичное число, равное конкатенации многоразрядных двоичных чисел, входящих в состав вектора многоразрядных двоичных чисел R, и δ - вспомогательное простое многоразрядное двоичное число, затем генерируют второе многоразрядное двоичное число s электронной цифровой подписи по формуле s=(k+ex) mod q, после чего формируют первое и второе проверочные многоразрядные двоичные числа А и В по формулам A=r'H mod δ и В=е, где r'=(r'1||r'2||r'3) - многоразрядное двоичное число, равное конкатенации многоразрядных двоичных чисел, входящих в состав вектора многоразрядных двоичных чисел R', вычисленного по формуле R'=Yq-eGs (mod p).4. The method according to claim 1, characterized in that the public key Y is generated in the form of a vector of multi-bit binary numbers of dimension m = 3, for which a vector of multi-bit binary numbers G of dimension m = 3 is generated, having an order equal to a multi-bit binary number q, and the public key Y is formed by the formula Y = G x (mod p), where p is a multi-bit binary number, which is the module by which operations are performed on the multi-bit binary numbers that are part of the vector of multi-bit binary numbers G when performing the exponentiation operation on G b, and an electronic digital signature is formed in the form of a pair of multi-bit binary numbers e and s, for which a random multi-bit binary number k is generated, a vector of multi-bit binary numbers R is generated by the formula R = G k (mod p), then the first multi-bit binary number e is formed digital signature according to the formula e = rН mod δ, where r = (r 1 || r 2 || r 3 ) is a multi-bit binary number equal to the concatenation of the multi-bit binary numbers that make up the multi-bit binary numbers vector R, and δ is an auxiliary simple multi-bit binary h Then, the second multi-bit binary number s of the electronic digital signature is generated by the formula s = (k + ex) mod q, after which the first and second test multi-bit binary numbers A and B are formed by the formulas A = r'H mod δ and B = e , where r '= (r' 1 || r ' 2 || r' 3 ) is a multi-bit binary number equal to the concatenation of the multi-bit binary numbers included in the vector of multi-bit binary numbers R 'calculated by the formula R' = Y qe G s (mod p). 5. Способ по п.4, отличающийся тем, что многоразрядное двоичное число р является составным. 5. The method according to claim 4, characterized in that the multi-bit binary number p is composite.
RU2007147826/09A 2007-12-25 2007-12-25 Method for generation and authentication of electronic digital signature that certifies electronic document RU2369974C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2007147826/09A RU2369974C1 (en) 2007-12-25 2007-12-25 Method for generation and authentication of electronic digital signature that certifies electronic document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2007147826/09A RU2369974C1 (en) 2007-12-25 2007-12-25 Method for generation and authentication of electronic digital signature that certifies electronic document

Publications (2)

Publication Number Publication Date
RU2007147826A RU2007147826A (en) 2009-06-27
RU2369974C1 true RU2369974C1 (en) 2009-10-10

Family

ID=41026746

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2007147826/09A RU2369974C1 (en) 2007-12-25 2007-12-25 Method for generation and authentication of electronic digital signature that certifies electronic document

Country Status (1)

Country Link
RU (1) RU2369974C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2457535C2 (en) * 2010-05-25 2012-07-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" (ФГБОУ ВПО "СПбГПУ") Method of generating and verifying electronic digital signature based on elliptic or hyperelliptic curve

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ. КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ. ПРОЦЕССЫ ФОРМИРОВАНИЯ И ПРОВЕРКИ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ. ГОСТ-Р 34.10-2001. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2457535C2 (en) * 2010-05-25 2012-07-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" (ФГБОУ ВПО "СПбГПУ") Method of generating and verifying electronic digital signature based on elliptic or hyperelliptic curve

Also Published As

Publication number Publication date
RU2007147826A (en) 2009-06-27

Similar Documents

Publication Publication Date Title
JP4668931B2 (en) Encryption processor with tamper resistance against power analysis attacks
US7908641B2 (en) Modular exponentiation with randomized exponent
JP5488718B2 (en) Cryptographic processing apparatus, cryptographic processing method, and program
KR101089121B1 (en) Fast batch verification method and apparatus there-of
US9176707B2 (en) Arithmetic apparatus, elliptic scalar multiplication method of arithmetic apparatus, elliptic scalar multiplication program, residue operation method of arithmetic apparatus, and residue operation program
KR101467719B1 (en) Signature generating device, method of generating signature, and recording medium
JP4988448B2 (en) Batch verification apparatus, program, and batch verification method
CN112887096B (en) Prime order elliptic curve generation method and system for signature and key exchange
CN113032845B (en) EdDSA signature implementation method and device for resource-constrained chip
US6609141B1 (en) Method of performing modular inversion
CN111740821A (en) Method and device for establishing shared secret key
RU2369974C1 (en) Method for generation and authentication of electronic digital signature that certifies electronic document
RU2392736C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2401513C2 (en) Method for generating and verification electronic digital signature authenticating electronic document
KR101990861B1 (en) Non-modular multiplier, method for non-modular multiplication and computational device
US11616994B2 (en) Embedding information in elliptic curve base point
RU2380838C1 (en) Method for creation and authentication of electronic digital signature confirming electronic document
RU2356172C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2409903C2 (en) Method of creating and authenticating electronic digital signature certifying electronic document
RU2369973C1 (en) Method for generation and authentication of electronic digital signature that certifies electronic document
RU2450438C1 (en) Method of creating and authenticating collective electronic digital signature certifying electronic document
RU2380830C1 (en) Method for creation and authentication of electronic digital signature confirming electronic document
RU2402880C2 (en) Method for generation and verification of collective electronic digital signature that certifies electronic document
KR102510077B1 (en) Apparatus and method for performing operation being secure against side channel attack
RU2382505C1 (en) Method of generating and authenticating electronic digital signature certifying electronic document

Legal Events

Date Code Title Description
HE4A Notice of change of address of a patent owner
MM4A The patent is invalid due to non-payment of fees

Effective date: 20091226