RU2401513C2 - Method for generating and verification electronic digital signature authenticating electronic document - Google Patents

Method for generating and verification electronic digital signature authenticating electronic document Download PDF

Info

Publication number
RU2401513C2
RU2401513C2 RU2008130759/09A RU2008130759A RU2401513C2 RU 2401513 C2 RU2401513 C2 RU 2401513C2 RU 2008130759/09 A RU2008130759/09 A RU 2008130759/09A RU 2008130759 A RU2008130759 A RU 2008130759A RU 2401513 C2 RU2401513 C2 RU 2401513C2
Authority
RU
Russia
Prior art keywords
vector
formula
mdc
generating
bit binary
Prior art date
Application number
RU2008130759/09A
Other languages
Russian (ru)
Other versions
RU2008130759A (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 RU2008130759/09A priority Critical patent/RU2401513C2/en
Publication of RU2008130759A publication Critical patent/RU2008130759A/en
Application granted granted Critical
Publication of RU2401513C2 publication Critical patent/RU2401513C2/en

Links

Abstract

FIELD: information technologies.
SUBSTANCE: method for generating and verification electronic digital signature (EDS) includes following sequence of operations: secret key is generated as at least one string of bits (BS) - k; on the basis of the secret key, open key Y is generated as BS vector of m length, where 2<m<64; electronic document (ED) supplied by H "МДЧ" is received; depending on received electronic document and secret key value Q EDS is generated as at least two BSs depending on EDS, ED and open key the first A and the second B check BSs are generated; A and B BSs are compared. When their parametres match it is concluded that electronic digital signature is authentic.
EFFECT: increase in EDS procedures efficiency without decrease in its stability.
8 cl, 9 tbl

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов аутентификации электронных сообщений, передаваемых по телекоммуникационным сетям и сетям ЭВМ, и может быть использовано в системах передачи электронных сообщений (документов), заверенных электронной цифровой подписью (ЭЦП), представленной в виде битовой строки (БС) или нескольких БС. Здесь и далее под БС понимается электромагнитный сигнал в двоичной цифровой форме, параметрами которого являются: число битов и порядок следования их единичных и нулевых значений (толкование используемых в описании терминов приведено в Приложении 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 bit string (BS) or several BSs. Hereinafter, BS refers to 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 (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 forming and checking the 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:

формируют секретный ключ в виде трех простых многоразрядных двоичных чисел (МДЧ)p, q и d, представленных тремя БС;form a secret key in the form of three simple multi-bit binary numbers (MDC) p, q and d, represented by three BS;

формируют открытый ключ (n, е) в виде пары МДЧ n и е, где n - число, представляющее собой произведение двух простых МДЧ p и q, и е - МДЧ, удовлетворяющее условию ed=1mod(p-l)(q-1),form the 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 = 1mod (p-l) (q-1),

принимают электронный документ (ЭД), представленный БС Н,accept an electronic document (ED) submitted by BS N,

в зависимости от значения Н, под которым понимается значение МДЧ, представленное БС Н, и значения секретного ключа формируют ЭЦП в виде МДЧ Q=S=Hd mod n.depending on the value of H, which is understood as the value of the MDC represented by BS N, and the values of the secret key form an EDS in the form of a MDC Q = S = H d mod n.

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

формируют второе проверочное МДЧ В, для чего МДЧ S возводят в целочисленную степень е по модулю n: В=Sе 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 на множители p и 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 [Moldovyan A.A., Moldovyan N.A., Sovetov B.Ya. Cryptography. - St. Petersburg .: Doe, 2000. - p.156-159], which includes the following actions:

формируют простое МДЧ p и двоичное число G, являющееся первообразным корнем по модулю p, генерируют секретный ключ в виде МДЧ x, в зависимости от секретного ключа формируют открытый ключ в виде МДЧ Y=Gx mod p, принимают ЭД, представленный в виде МДЧ Н, в зависимости от Н и секретного ключа формируют ЭЦП 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 N , depending on H and the secret key, an EDS Q is formed in the form of two MDC S and R, that is, Q = (S, R);

осуществляют процедуру проверки подлинности ЭЦП, включающую вычисление двух контрольных параметров с использованием исходных МДЧ р, G, Y, Н и S путем возведения МДЧ G, Y, R в дискретную степень по модулю p и сравнение вычисленных контрольных параметров;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 вычисляют путем выполнения арифметических операций по модулю p - 1 и по модулю p, соответственно.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 p=1;form a simple MDC a, such that a ≠ 1 and a q mod p = 1;

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

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

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

формируют ЭЦП в виде пары МДЧ (е, s), для чего генерируют случайное МДЧ t, формируют МДЧ R по формуле R=at mod p, формируют МДЧ е=f(M||R), где знак || обозначает операцию присоединения двух МДЧ и f - некоторая специфицированная хэш-функция, значение которой имеет фиксированную длину (обычно 160 или 256 бит), независимую от размера аргумента, т.е. от размера МДЧ M||R, а затем формируют МДЧ s по формуле s=(t+ek) 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), independent 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 + ek) mod q;

формируют первое проверочное МДЧ А, для чего генерируют МДЧ R' пo формуле R'=asy -e 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 e '= 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.

Недостатком способа по патенту США является относительно высокая вычислительная сложность процедуры формирования и проверки ЭЦП, что связано с тем, что для обеспечения минимально требуемого уровня стойкости требуется использовать простой модуль p разрядностью не менее 1024 бит.The disadvantage of the method according to the US patent is the relatively high computational complexity of the procedure for forming and checking 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 p with a bit capacity of at least 1024 bits.

Наиболее близким по своей технической сущности к заявленному является известный способ формирования и проверки подлинности ЭЦП, предлагаемый российским стандартом ГОСТ Р 34.10-2001 и описанный, например, в книге [Б.Я. Рябко, А.Н. Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111)], согласно которому ЭЦП формируется в виде пары МДЧ r и s, для чего генерируют эллиптическую кривую (ЭК) в виде совокупности точек, причем каждая точка представляется двумя координатами в декартовой системе координат в виде двух МДЧ, называемых абсциссой (x) и ординатой (у), затем осуществляют операции генерации точек ЭК, сложения точек ЭК и умножения точки ЭК на число, а также арифметические операции над МДЧ, после чего в результате выполненных операций формируются МДЧ r и s. Указанные операции над точками выполняются как операции над МДЧ, являющимися координатами точек, по известным формулам [Б.Я. Рябко, А.Н. Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005.-229 с. (см. с.110-111)]. Операция сложения двух точек А и В с координатами (хA, yA) и (хB, yB), соответственно, выполняется по формулам:The closest in technical essence to the claimed one is the well-known method of forming and verifying the authenticity of electronic digital signatures, proposed by the Russian standard GOST R 34.10-2001 and described, for example, in the book [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 MDC , called abscissa (x) and ordinate (y), then perform the operations of generating EC points, adding EC points and multiplying 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., Hotline - 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
mod p, если точки А и В не равны, и
Figure 00000002
mod p, если точки А и В равны. При вычислении значения k выполняется операция деления МДЧ по модулю простого МДЧ, что ограничивает производительность формирования и проверки подлинности ЭЦП по стандарту ГОСТ Р 34.10-2001. Операция умножения точки А на натуральное число n определяется как многократное сложение точки А:Where
Figure 00000001
mod p if points A and B are not equal, and
Figure 00000002
mod p if points A and B are equal. When calculating the value of k, the operation of dividing the MDC modulo a simple MDC is performed, which limits the performance of the formation and authentication of the digital signature according to the standard GOST R 34.10-2001. 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, поэтому генерация ЭК состоит в генерации чисел а, b и p, являющихся параметрами ЭК и однозначно задающих множество точек ЭК, абсцисса и ордината каждой из которых удовлетворяет указанному уравнению. Ближайший аналог (прототип) заключается в выполнении следующей последовательности действий: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 parameters of the EC 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, пп.27-31);generate an elliptic curve (EC), which is a collection of MDC pairs, called EC points and having certain properties (see Appendix 1, paragraphs 27-31);

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

формируют открытый ключ Р в виде двух МДЧ, являющихся координатами точки ЭК Р, для чего генерируют точку G, имеющую значение порядка, равное q (порядком точки ЭК называется наименьшее положительное целое число q, такое что результатом умножения данной точки на число q является так называемая бесконечно удаленная точка О; результатом умножения любой точки ЭК на нуль по определению является точка О [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с.(см. с.97-130)]; см. также Приложение 1, пп.27-31) и генерируют открытый ключ путем умножения точки G на МДЧ k, т.е. формируют открытый ключ по формуле Р=kG;form the public key P in the form of two MDC, which are the coordinates of the EC point P, for which they generate a point G having an order value equal to q (the order of the EC point is the smallest positive integer q, such that the result of multiplying this point by q is the so-called infinitely distant point O; the result of multiplying any EC point by zero by definition is point O [B.Ya. Ryabko, AN Fionov. Cryptographic methods of information protection. M., Hot line - Telecom, 2005. - 229 pp. ( see p. 97-130)]; see also Appendix 1, paragraphs 27-31) and the gene iruyut public key by multiplying the point G on MDCH k, that form a public key according to the formula P = kG;

принимают ЭД, представленный МДЧ Н;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+rk) mod q;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) mod q;

формируют первое проверочное МДЧ А, для чего генерируют МДЧ ν по формуле ν=sH-1 mod q и МДЧ w по формуле w=(q-rH-1) mod q, затем генерируют точку R' по формуле R'=νG+wP, после чего МДЧ А получают по формуле А=xR' mod q, где xR' - абсцисса точки R';form the first verification MDC A, for which MDC ν is generated by the formula ν = 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' = νG + wP , 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 EDS, 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 electronic digital signature.

Поставленная цель достигается тем, что в известном способе формирования и проверки подлинности ЭЦП, заверяющей ЭД, заключающемся в том, что генерируют секретный ключ в виде, по крайней мере, одной битовой строки, по секретному ключу формируют открытый ключ Y в виде более чем одной БС, принимают ЭД, представленный БС Н1, Н2, …, Нz, где z≥1, в зависимости от принятого ЭД и от значения секретного ключа формируют ЭЦП Q в виде совокупности МДЧ е, s1, s2, …, su, где 1≤u≤8, в зависимости от открытого ключа, принятого ЭД и ЭЦП, формируют первую А и вторую В проверочные БС, сравнивают их и при совпадении их параметров делают вывод о подлинности ЭЦП, новым в заявленном изобретении является то, открытый ключ Y формируют в виде w-мерного, где 2≤m≤64, вектора путем генерации w-мерных векторов G1, G2, …, Gu, координатами каждого из которых являются БС разрядностью r, где 16≤r≤512, генерации секретного ключа в виде МДЧ k1, k2, …, ku и генерации открытого ключа Y по формуле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 at least one bit string, the public key Y is formed in the form of more than one BS take the ED represented by BS N 1 , N 2 , ..., H z , where z≥1, depending on the received ED and the value of the secret key, the digital signature Q is formed in the form of a combination of MDC e, s 1 , s 2 , ..., s u, where 1≤u≤8, depending on the public key, the received signature and ED, forming the first a and second B roverochnye BSs, and compares them with coincidence of their parameters conclude authentication signature, new in the claimed invention is, Y's public key to form a w-dimensional, where 2≤m≤64, by generating a vector w-dimensional vectors G 1, G 2 , ..., G u , the coordinates of each of which are BS bits of r, where 16≤r≤512, generate a secret key in the form of MDC k 1 , k 2 , ..., k u and generate a public key Y according to the formula

Figure 00000003
,
Figure 00000003
,

где знак ° обозначает операцию умножения векторов.where the sign ° denotes the operation of multiplying vectors.

Осуществление операций умножения векторов БС не требует выполнения операции деления МДЧ по модулю простого МДЧ, благодаря чему повышается производительность формирования и проверки подлинности ЭЦП, заверяющей ЭД. Кроме того, координаты вектора БС, являющегося результатом выполнения операции умножения векторов БС, являющихся операндами, вычисляются по координатам векторов-операндов независимо друг от друга, то имеется возможность распараллелить операцию умножения векторов БС на m независимых процессов и выполнять их параллельно, благодаря чему применение вычислений над векторами позволяет существенно повысить скорость процедур формирования и проверки подлинности ЭЦП.The implementation of the operations of the multiplication of the vectors of the BS does not require the operation of dividing the MDC modulo simple MDC, which increases the productivity of the formation and authentication of the digital signature, which certifies the ED. In addition, the coordinates of the BS vector, which is the result of the operation of multiplying the BS vectors, which are operands, are calculated independently from the coordinates of the operand vectors, it is possible to parallelize the operation of multiplying the BS vectors by m independent processes and perform them in parallel, due to which the use of calculations over vectors can significantly increase the speed of formation and authentication of digital signatures.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤64, вектора МДЧ путем генерации m-мерных векторов МДЧ G1, G2, …, Gu, координатами каждого из которых являются МДЧ разрядностью r, где 16≤r≤512, генерации секретного ключа в виде МДЧ k1, k2, …, ku и генерации открытого ключа Y по формулеAlso new is that the public key Y is formed in the form of m-dimensional, where 2≤m≤64, MDC vectors by generating m-dimensional MDC vectors G 1 , G 2 , ..., G u , the coordinates of each of which are MDC bit capacity r, where 16≤r≤512, generating a secret key in the form of MDC k 1 , k 2 , ..., k u and generating a public key Y according to the formula

Figure 00000003
,
Figure 00000003
,

где знак ° обозначает операцию умножения векторов МДЧ.where the sign ° denotes the operation of multiplying MDC vectors.

Использование в качестве векторов БС векторов МДЧ позволяет эффективно реализовать заявленный способ в программах для ЭВМ.The use of MDC vectors as BS vectors can effectively implement the claimed method in computer programs.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤64, вектора многочленов путем генерации m-мерных векторов многочленов G1, G2, …, Gu, координатами каждого из которых являются многочлены разрядностью r, где 16≤r≤512, генерации секретного ключа в виде МДЧ k1, k2, …, ku и генерации открытого ключа Y по формулеIt is also new that the public key Y is formed in the form of an m-dimensional, where 2≤m≤64, vector of polynomials by generating m-dimensional vectors of polynomials G 1 , G 2 , ..., G u , the coordinates of each of which are polynomials bit capacity r, where 16≤r≤512, generating a secret key in the form of MDC k 1 , k 2 , ..., k u and generating a public key Y according to the formula

Figure 00000003
,
Figure 00000003
,

где знак ° обозначает операцию умножения векторов многочленов.where the sign ° denotes the operation of multiplying the vectors of polynomials.

Использование в качестве векторов БС векторов МДЧ позволяет эффективно реализовать заявленный способ в специализированных вычислительных устройствах. Выполнение операции умножения векторов БС включает выполнение над БС операций сложения и умножения по модулю простого МДЧ, если БС представляют МДЧ, или по модулю неприводимого многочлена, если БС представляют собой многочлены. В обоих случаях не требуется выполнять операцию деления по модулю простого числа или по модулю неприводимого многочлена, благодаря чему обеспечивается повышение производительности процедур формирования и проверки подлинности ЭЦП как при программной, так и при аппаратной реализации заявленного способа.The use of MDC vectors as BS vectors can effectively implement the claimed method in specialized computing devices. The operation of the BS vector multiplication operation includes the addition and multiplication operations on the BS modulo a simple MDC, if the BSs are MDCs, or modulo an irreducible polynomial if the BSs are polynomials. In both cases, it is not necessary to perform the division operation modulo a prime number or modulo an irreducible polynomial, thereby increasing the productivity of the procedures for generating and verifying the digital signature authenticity both in software and in hardware implementation of the claimed method.

Новым является также то, что открытый ключ Y формируют в виде m-мерного, где m=2, вектора путем генерации m-мерных векторов G1 и G2, имеющих порядок, равный простому МДЧ q, генерации секретного ключа в виде МДЧ k1 и k2 и генерации открытого ключа Y по формулеAlso new is the fact that the public key Y is formed in the form of an m-dimensional, where m = 2, vector by generating m-dimensional vectors G 1 and G 2 having an order equal to a simple MDC q, generating a secret key in the form of MDC k 1 and k 2 and public key generation Y by the formula

Figure 00000004
,
Figure 00000004
,

принимают ЭД, представленный БС Н1, а ЭЦП формируют в виде трех МДЧ е, s1 и s2, для чего генерируют случайные МДЧ t1 и t2, генерируют вектор R по формулеreceive the ED represented by BS H 1 , and the EDS is formed in the form of three MDCs e, s 1 and s 2 , for which random MDC t 1 and t 2 are generated, the vector R is generated by the formula

Figure 00000005
,
Figure 00000005
,

затем в зависимости от R и Н1 формируют первое МДЧ е ЭЦП по формуле e=f(R,Н1), где f(R,Н1) - выражение, задающее правило вычисления МДЧ е, затем в зависимости от секретного ключа генерируют пару МДЧ s1 и s2 ЭЦП по формуламthen, depending on R and H 1 , the first MDC e EDS is formed according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating MDC e, then a pair is generated depending on the secret key MDC s 1 and s 2 EDS according to the formulas

s1=(t1-k1e)mod q и s2=(t2-k2e)mod q,s 1 = (t 1 -k 1 e) mod q and s 2 = (t 2 -k 2 e) mod q,

после чего формируют первую и вторую проверочные БС А и В по формуламthen form the first and second test BS A and B according to the formulas

A=f(R',H1) и B=e,A = f (R ', H 1 ) and B = e,

где вектор R' вычисляют по формулеwhere the vector R 'is calculated by the formula

Figure 00000006
.
Figure 00000006
.

Генерация двух различных секретных ключей позволяет повысить стойкость алгоритма ЭЦП при использовании нециклических групп векторов за счет использования векторов БС G1 и G2 размерности m=2, генерирующих циклические подгруппы нециклической группы векторов, такие, что они не попадают в какую либо одну циклическую подгруппу нециклической группы векторов.The generation of two different secret keys makes it possible to increase the stability of the EDS algorithm when using non-cyclic groups of vectors through the use of BS vectors G 1 and G 2 of dimension m = 2, generating cyclic subgroups of a non-cyclic group of vectors, such that they do not fall into any one cyclic subgroup of a non-cyclic groups of vectors.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где m=3, вектора путем генерации w-мерных векторов G1, G2 и G3, имеющих порядок, равный простому МДЧ q, генерации секретного ключа в виде МДЧ k1, k2 и k3 и генерации открытого ключа Y по формулеAlso new is the fact that the public key Y is formed in the form of an m-dimensional, where m = 3, vector by generating w-dimensional vectors G 1 , G 2 and G 3 having an order equal to the simple MDC q, generating a secret key in MDC k 1 , k 2 and k 3 and public key generation Y by the formula

Figure 00000007
,
Figure 00000007
,

принимают ЭД, представленный БС H1, а ЭЦП формируют в виде четырех битовых строк е, s1, s2, и s3, для чего генерируют случайные МДЧ t1, t2, и t3, генерируют вектор R по формулеreceive the ED represented by BS H 1 , and the digital signature is formed in the form of four bit strings e, s 1 , s 2 , and s 3 , for which random MDC t 1 , t 2 , and t 3 are generated, the vector R is generated by the formula

Figure 00000008
,
Figure 00000008
,

затем в зависимости от R и Н1 формируют первое МДЧ е ЭЦП по формуле е=f(R,Н1), где f(R,H1) - выражение, задающее правило вычисления МДЧ е, затем в зависимости от секретного ключа генерируют тройку МДЧ s1, s2, и s3 ЭЦП по формуламthen, depending on R and H 1 , the first MDC e EDS is formed according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating MDC e, then a triple is generated depending on the secret key MDC s 1 , s 2 , and s 3 EDS according to the formulas

s1=(t1-k1e)mod q, s2=(t2-k2e)mod qs 1 = (t 1 -k 1 e) mod q, s 2 = (t 2 -k 2 e) mod q

и s3=(t3-k3e)mod q,and s 3 = (t 3 -k 3 e) mod q,

после чего формируют первую и вторую проверочные БС А и В по формуламthen form the first and second test BS A and B according to the formulas

A=f(R',H1) и B=e,A = f (R ', H 1 ) and B = e,

где вектор R' вычисляют по формулеwhere the vector R 'is calculated by the formula

Figure 00000009
.
Figure 00000009
.

В качестве выражения e=f(R,H1) может быть, например, использована формула е=rH1mod δ, где r=(r1||r2||r3) - МДЧ, заданное конкатенацией БС, являющихся координатами вектора БС R, и δ - вспомогательное простое МДЧ. Генерация трех различных секретных ключей позволяет повысить стойкость алгоритма ЭЦП при использовании нециклических групп векторов БС за счет использования векторов БС G1, G2 и G3, размерности m=3, генерирующих циклические подгруппы нециклической группы векторов БС, такие, что они попарно не попадают в какую либо одну циклическую подгруппу нециклической группы векторов БС. Конкатенацией двух БС а и b, представленных в виде

Figure 00000010
и
Figure 00000011
, называется БС
Figure 00000012
. Знак || обозначает операцию конкатенации.As an expression e = f (R, H 1 ), for example, the formula e = rH 1 mod δ can be used, where r = (r 1 || r 2 || r 3 ) is the MDC given by the concatenation of BS, which are the coordinates BS vectors R, and δ is an auxiliary prime MDC. The generation of three different secret keys makes it possible to increase the stability of the EDS algorithm when using non-cyclic groups of BS vectors by using the BS vectors G 1 , G 2 and G 3 , dimension m = 3, generating cyclic subgroups of the non-cyclic group of BS vectors, such that they do not fall into pairs into any one cyclic subgroup of a non-cyclic group of BS vectors. The concatenation of two BSs a and b, represented as
Figure 00000010
and
Figure 00000011
called BS
Figure 00000012
. Sign || denotes a concatenation operation.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где m=5, вектора путем генерации m-мерных векторов G1 и G2, имеющих порядки, равные МДЧ q1 и q2, соответственно, генерации секретного ключа в виде МДЧ k1 и k2 и генерации открытого ключа Y по формулеIt is also new that the public key Y is formed in the form of an m-dimensional, where m = 5, vector by generating m-dimensional vectors G 1 and G 2 having orders equal to MDC q 1 and q 2 , respectively, generating a secret key in the form of MDC k 1 and k 2 and generating public key Y according to the formula

Figure 00000013
,
Figure 00000013
,

принимают ЭД, представленный БС Н1, а ЭЦП формируют в виде трех МДЧ е, s1 и s2, для чего генерируют случайные МДЧ числа t1 и t2, генерируют вектор R по формулеtake the ED represented by BS H 1 , and the digital signature is formed in the form of three MDCs e, s 1 and s 2 , for which random MDC numbers t 1 and t 2 are generated, the vector R is generated by the formula

Figure 00000005
,
Figure 00000005
,

затем в зависимости от R и Н1 формируют первое МДЧ е ЭЦП по формуле е=f(R',H1), где f(R,H1) - выражение, задающее правило вычисления числа е, затем в зависимости от секретного ключа генерируют пару МДЧ s1 и s2 ЭЦП по формуламthen, depending on R and H 1 , the first MDC e EDS is formed according to the formula e = f (R ', H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the number e, then, depending on the secret key, generate a pair of MDC s 1 and s 2 EDS according to the formulas

s1=(t1-k1e)mod q1 и s2=(t2-k2e)mod q2,s 1 = (t 1 -k 1 e) mod q 1 and s 2 = (t 2 -k 2 e) mod q 2 ,

после чего формируют первую и вторую проверочные БС А и В по формуламthen form the first and second test BS A and B according to the formulas

A=f(R',H1) и B=e,A = f (R ', H 1 ) and B = e,

где вектор R вычисляют по формулеwhere the vector R is calculated by the formula

Figure 00000006
.
Figure 00000006
.

Использование векторов БС размерности m=5 позволяет снизить сложность операции умножения векторов БС по сравнению со случаями использования векторов БС меньшей размерности, сохраняя возможность получения нециклических групп векторов БС, содержащих различные циклические подгруппы, не принадлежащие какой-либо одной циклической подгруппе, что позволяет повысить стойкость алгоритмов ЭЦП путем формирования открытого ключа по двум секретным ключам.The use of BS vectors of dimension m = 5 makes it possible to reduce the complexity of the operation of multiplying BS vectors in comparison with the use of BS vectors of lower dimension, while retaining the possibility of obtaining non-cyclic groups of BS vectors containing various cyclic subgroups that do not belong to any one cyclic subgroup, which improves the stability EDS algorithms by generating a public key using two secret keys.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где m=3, вектора путем генерации m-мерного вектора G1, имеющего порядок, равный МДЧ q, генерации секретного ключа в виде МДЧ k1 и генерации открытого ключа Y по формуле

Figure 00000014
, принимают ЭД, представленный БС H1, а ЭЦП формируют в виде двух МДЧ е и s1, для чего генерируют случайное МДЧ t, генерируют вектор R по формуле R=Gt, затем в зависимости от R и Н1 формируют первое МДЧ е ЭЦП по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления числа е, затем в зависимости от секретного ключа генерируют второе МДЧ s1 ЭЦП по формулеIt is also new that the public key Y is formed in the form of an m-dimensional, where m = 3, vector by generating an m-dimensional vector G 1 having an order equal to MDC q, generating a secret key in the form of MDC k 1 and generating an open key Y according to the formula
Figure 00000014
take the ED represented by BS H 1 , and the EDS is formed in the form of two MDCs e and s 1 , for which a random MDC t is generated, a vector R is generated by the formula R = G t , then, depending on R and H 1 , the first MDC e is formed EDS by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the number e, then, depending on the secret key, a second MDC s 1 EDS is generated according to the formula

s1=(t+k1e)mod q,s 1 = (t + k 1 e) mod q,

после чего формируют первую и вторую проверочные БС А и В по формуламthen form the first and second test BS A and B according to the formulas

А=f(R',Н1) и В=е,A = f (R ', H 1 ) and B = e,

где вектор R' вычисляют по формулеwhere the vector R 'is calculated by the formula

Figure 00000015
.
Figure 00000015
.

Новым является также и то, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤8, вектора путем генерации m-мерных векторов G1, G2, …, Gm, имеющих порядок, равный простому МДЧ q, генерации секретного ключа в виде МДЧ k1, k2, …, km и генерации открытого ключа Y по формулеIt is also new that the public key Y is formed in the form of an m-dimensional, where 2≤m≤8, vector by generating m-dimensional vectors G 1 , G 2 , ..., G m having the order equal to a simple MDC q, generating a secret key in the form of MDC k 1 , k 2 , ..., k m and generating a public key Y according to the formula

Figure 00000016
,
Figure 00000016
,

принимают ЭД, представленный БС Н1, Н2, …, Нm, а ЭЦП формируют в виде совокупности МДЧ е, s1, s2, …, sm, для чего генерируют случайные МДЧ t1, t2, …, tm, генерируют вектор R по формулеreceive the ED represented by BS N 1 , N 2 , ..., N m , and the EDS is formed as a combination of MDC e, s 1 , s 2 , ..., s m , for which random MDC t 1 , t 2 , ..., t are generated m , generate a vector R by the formula

Figure 00000017
,
Figure 00000017
,

затем в зависимости от R формируют первое МДЧ число е ЭЦП по формуле е=f(R,H), где f(R,H) - выражение, задающее правило вычисления числа е, и Н=H1||H2||H3||…||Hm, где знак || обозначает операцию конкатенации, затем в зависимости от секретного ключа генерируют m МДЧ s1, s2, …, sm ЭЦП по формуламthen, depending on R, the first MDC number e of the EDS is formed according to the formula e = f (R, H), where f (R, H) is an expression defining the rule for calculating the number e, and H = H 1 || H 2 || H 3 || ... || H m , where the sign || denotes a concatenation operation, then, depending on the secret key, m MDCs s 1 , s 2 , ..., s m are generated EDS according to the formulas

s1=(t1-k1e)H1-1mod q, s2=(t2-k2e)H2-1mod q, …,s 1 = (t 1 -k 1 e) H 1 -1 mod q, s 2 = (t 2 -k 2 e) H 2 -1 mod q, ...,

…, sm=(tm-kme)Hm-1mod q,..., s m = (t m -k m e) H m -1 mod q,

после чего формируют первую и вторую проверочные БС А и В по формуламthen form the first and second test BS A and B according to the formulas

A=f(R',H) и В=е,A = f (R ', H) and B = e,

где вектор R вычисляют по формулеwhere the vector R is calculated by the formula

Figure 00000018
.
Figure 00000018
.

Использование секретного ключа в виде набора из нескольких МДЧ позволяет обеспечить высокую стойкость ЭЦП при использовании векторов БС, порядок которых равен простому числу сравнительно малого размера, что упрощает выбор параметров для реализации заявленного способа формирования и проверки ЭЦП, заверяющей ЭД.Using a secret key in the form of a set of several MDCs allows for high EDS stability when using BS vectors, the order of which is equal to a prime number of a relatively small size, which simplifies the choice of parameters for implementing the claimed method of generating and checking an EDS certifying an ED.

Вектор БС - это набор из двух или более БС, называемых координатами вектора БС. Вектор БС записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции координат вектора БС. Например, вектор БС можно записать в виде (a1, a2, …, am), где m≥2 - это размерность вектора БС, равная числу координат в векторе БС. В качестве разделителя может быть использован знак операции сложения векторов БС, определенной как сложение одноименных координат двух векторов БС, являющихся слагаемыми. При использовании такого разделителя координаты вектора идентифицируются указанием формального базисного вектора (устанавливаемого перед или после соответствующей координаты) в виде буквы латинского алфавита. Формальными базисные вектора называются потому, что им не приписывается никакого физического смысла. Они служат только для того, чтобы идентифицировать координаты вектора БС, независимо от последовательности их записи. Так, например, вектора БС Z1=523425e+3676785i+53453453j и Z2=3676785i+523425e+53453453j, в которых координатами являются МДЧ, рассматриваются как равные, т.е. Z1=Z2. Отдельные слагаемые в такой записи векторов БС называются компонентами вектора БС, поскольку они представляют собой вектора БС с одной ненулевой координатой. Размерность вектора БС - это количество БС, входящих в вектор БС в качестве его координат. В данной заявке рассматриваются конечные группы векторов БС, т.е. алгебраические группы, элементами которых являются вектора БС вида Z=ае+bi+…+cj, а групповая операция определена через операции над векторами БС как операция перемножения компонентов векторов БС, являющихся операндами, с учетом того, что возникающие при этом произведения формальных базисных векторов, заменяются по некоторой специфицированной таблице одним базисным вектором или однокомпонентным вектором, т.е. вектором, содержащим только одну ненулевую координату. Такая таблица умножения базисных векторов для случая векторов БС размерности m=3 имеет, например, следующий вид:A BS vector is a set of two or more BSs called coordinates of a BS vector. The BS vector is written in various ways, the requirement for which is that they identify the positions of the coordinates of the BS vector. For example, the BS vector can be written in the form (a 1 , a 2 , ..., a m ), where m≥2 is the dimension of the BS vector equal to the number of coordinates in the BS vector. As a separator, the sign of the operation of adding BS vectors, defined as the addition of the same coordinates of two BS vectors, which are terms, can be used. When using such a separator, the coordinates of the vector are identified by indicating a formal basis vector (set before or after the corresponding coordinate) in the form of a letter of the Latin alphabet. Basic vectors are called formal because no physical meaning is attributed to them. They serve only to identify the coordinates of the BS vector, regardless of the sequence of their recording. So, for example, BS vectors Z 1 = 523425e + 3676785i + 53453453j and Z 2 = 3676785i + 523425e + 53453453j, in which the coordinates are MDCs, are considered equal, i.e. Z 1 = Z 2 . The individual terms in such a record of BS vectors are called components of the BS vector, since they are BS vectors with one nonzero coordinate. The dimension of the BS vector is the number of BS included in the BS vector as its coordinates. This application considers finite groups of BS vectors, i.e. algebraic groups whose elements are BS vectors of the form Z = ae + bi + ... + cj, and the group operation is defined through operations on the BS vectors as the operation of multiplying the components of the BS vectors, which are operands, taking into account that the resulting products of formal basis vectors, are replaced according to some specified table with one basis vector or a one-component vector, i.e. a vector containing only one nonzero coordinate. Such a table of multiplication of basis vectors for the case of BS vectors of dimension m = 3 has, for example, the following form:

Figure 00000019
Figure 00000019

Эта таблица определяет следующее правило подстановки базисных векторов:This table defines the following basis vector 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+c1j и Z22е+b2i+с2j тогда операция умножения векторов БС Z1 и Z2 (обозначим ее знаком «о») выполняется следующим образом:We will call such tables multiplication tables of basis vectors. For example, let Z 1 = a 1 е + b 1 i + c 1 j and Z 2 = а 2 е + b 2 i + с 2 j then the operation of multiplying the BS vectors Z 1 and Z 2 (we denote it by the sign “o”) performed as follows:

Figure 00000020
Figure 00000020

Чтобы задать конечные группы векторов БС операции сложения и умножения над БС, являющимися координатами векторов БС, задаются специальным образом, а именно, так, что координатами являются элементы конечного поля, в частности поля чисел, являющихся остатками от деления всех целых чисел на некоторое простое число р, называемое модулем. Такие поля называются простыми и обозначаются следующим образом GF(p). Число элементов простого конечного поля равно р и называется порядком поля. Другим практически важным случаем задания конечных множеств векторов БС является задание векторов БС над конечными полями многочленов. Такие поля называются расширенными конечными полями и обозначаются следующим образом GF(pd), где d - натуральное число, называемое степенью расширения простого поля характеристики р. Понятие поля хорошо известно в научно-технической литературе [см., например, А.И.Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.]. Многочлен - это последовательность коэффициентов, например МДЧ, являющихся элементами поля GF(p). Над многочленами определены операции сложения многочленов и умножения многочленов, которые сводятся к выполнению действий с коэффициентами многочленов, являющихся операндами. Многочлены и правила действия над ними подробно рассмотрены в книгах [А.И.Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М., «Наука», 1971. - 431 с.]. В вычислительных устройствах многочлены представляются в виде БС, в которых каждый бит или каждая подстрока битов фиксированной длины интерпретируется как один из коэффициентов многочлена, над которыми определены операции сложения и умножения коэффициентов. Элементами конечного поля многочленов являются все возможные многочлены, коэффициентами которых являются элементы простого поля GF(p) для некоторого заданного значения простого числа р. Операция умножения в поле многочленов состоит в умножение многочленов-сомножителей и взятия остатка от делении полученного произведения на некоторый заданный неприводимый многочлен. Число элементов конечного поля многочленов (порядок поля) равно pd, где d - степень неприводимого многочлена, которая совпадает с максимальным числом коэффициентов в многочленах, получаемых в качестве остатка от деления на неприводимый многочлен.To specify the finite groups of BS vectors, the operations of addition and multiplication over the BS, which are the coordinates of the BS vectors, are specified in a special way, namely, the coordinates are elements of a finite field, in particular, the field of numbers that are the remainders of dividing all integers by some prime number p called the module. Such fields are called simple and are denoted as follows by GF (p). The number of elements of a simple finite field is p and is called the field order. Another practically important case of defining finite sets of BS vectors is the specification of BS vectors over finite fields of polynomials. Such fields are called expanded finite fields and are denoted as follows GF (p d ), where d is a natural number called the degree of expansion of a simple field of characteristic p. The concept of a field is well known in the scientific and technical literature [see, for example, A.I. Kostrikin. Introduction to Algebra. The basics of algebra. M .: Fizmatlit. 1994. - 320 p.]. A polynomial is a sequence of coefficients, for example, MDF, which are elements of the field GF (p). The operations of addition of polynomials and multiplication of polynomials are defined over polynomials, which are reduced to performing actions with coefficients of polynomials that are operands. Polynomials and the rules of action on them are discussed in detail in books [A.I. Kostrikin. Introduction to Algebra. The basics of algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M., "Science", 1971. - 431 p.]. In computing devices, polynomials are represented as BSs in which each bit or each substring of bits of a fixed length is interpreted as one of the coefficients of the polynomial over which the operations of addition and multiplication of coefficients are defined. Elements of a finite field of polynomials are all possible polynomials whose coefficients are elements of a simple field GF (p) for some given value of a prime number p. The operation of multiplication in the field of polynomials consists in multiplying the polynomial factors and taking the remainder of dividing the resulting product by some given irreducible polynomial. The number of elements of the finite field of polynomials (field order) is p d , where d is the degree of the irreducible polynomial, which coincides with the maximum number of coefficients in the polynomials obtained as the remainder of the division by the irreducible polynomial.

Вектора, в которых БС являются элементами конечного простого поля, т.е. многоразрядными двоичными числами, будем называть векторами МДЧ. Вектора, в которых БС являются элементами конечного расширенного поля, т.е. многочленами, будем называть векторами многочленов. Действия над конечными множествами векторов МДЧ и конечными множествами многочленов описываются одинаково, за исключением того, что действия над координатами векторов относятся к полям различного типа, а потому отличаются в этих двух случая. Действия над координатами векторов МДЧ можно описать как выполнение операций сложения и умножения по модулю простого числа р. Действия над координатами векторов многочленов можно описать как выполнение операций сложения и умножения по модулю неприводимого многочлена p. Размер модуля в обоих случаях выбирается таким, чтобы обеспечить достаточно большой порядок группы векторов МДЧ. В обоих случаях формула, описывающая действия, которые выполняются при умножении векторов БС Z1=(a1e+b1i+c1j) и Z22е+b2i+с2j, имеет одинаковый вид:Vectors in which BS are elements of a finite simple field, i.e. multidigit binary numbers, we will call MDC vectors. Vectors in which BSs are elements of a finite extended field, i.e. polynomials, we will call vectors of polynomials. Actions on finite sets of MDC vectors and finite sets of polynomials are described in the same way, except that the actions on the coordinates of the vectors refer to fields of various types, and therefore differ in these two cases. Actions on the coordinates of the MDC vectors can be described as performing addition and multiplication modulo a prime number p. Actions on the coordinates of the vectors of polynomials can be described as performing operations of addition and multiplication modulo an irreducible polynomial p. The size of the module in both cases is chosen so as to provide a sufficiently large order of the group of MDC vectors. In both cases, the formula that describes the actions that are performed when multiplying the BS vectors Z 1 = (a 1 e + b 1 i + c 1 j) and Z 2 = a 2 e + b 2 i + c 2 j has the same form:

Figure 00000021
Figure 00000021

Таким образом, примеры реализации заявляемого способа формирования и проверки подлинности ЭЦП, приведенные для случая задания векторов БС над простыми полями, одновременно задают и примеры реализации заявляемого способа для случая задания векторов БС над конечными расширенными полями, т.е. полями многочленов.Thus, examples of the implementation of the proposed method for generating and verifying the authenticity of electronic digital signatures given for the case of specifying BS vectors over simple fields simultaneously specify examples of implementing the proposed method for the case of specifying BS vectors over finite extended fields, i.e. fields of polynomials.

В случае векторов МДЧ в качестве координат вектора МДЧ могут быть заданы целые числа из конечного кольца целых чисел, являющихся остатками от деления всех целых чисел на составное натуральное число. Возможный вариант таких случаев подробно описан в примере 6, приведенном ниже.In the case of MDC vectors, the coordinates of the MDC vector can be set to integers from a finite ring of integers that are the remainders of dividing all integers by a composite natural number. A possible variant of such cases is described in detail in Example 6 below.

В зависимости от размерности векторов БС, над которыми определяются операции умножения, и конкретного варианта задания операции умножения векторов БС могут быть использованы различные таблицы умножения базисных векторов, например, для векторов БС размерности m=2 приемлемая таблица имеет вид таблицы 2, где 0<ε<р, а для векторов БС размерности m=3 - вид таблицы 3, где 0<ε<р. Значение параметра ε, называемого коэффициентом растяжения, может выбираться произвольно из указанного интервала. Различные значения параметра ε придают различные свойства конечной группе векторов БС при фиксированном значении размерности m и модуля р. Таблицы умножения базисных векторов для случая векторов МДЧ и векторов многочленов, представляющих частные варианты задания векторов БС, имеют одинаковый вид, за исключением того, что в случае векторов МДЧ коэффициент ε представляет собой некоторое МДЧ, а в случае векторов многочленов коэффициент ε представляет собой некоторый многочлен.Depending on the dimension of the BS vectors over which the multiplication operations are determined, and the specific option for specifying the operation of the BS vector multiplication, various base vector multiplication tables can be used, for example, for BS vectors of dimension m = 2, an acceptable table has the form of table 2, where 0 <ε <p, and for BS vectors of dimension m = 3 - the form of table 3, where 0 <ε <p. The value of the parameter ε, called the tensile coefficient, can be selected arbitrarily from the specified interval. Different values of the parameter ε give different properties to a finite group of BS vectors for a fixed value of dimension m and modulus p. Multiplication tables of basis vectors for the case of MDC vectors and polynomial vectors representing particular variants of specifying BS vectors have the same form, except that in the case of MDC vectors, the coefficient ε is some MDC, and in the case of polynomial vectors, the coefficient ε is some polynomial .

Figure 00000022
Figure 00000023
Figure 00000022
Figure 00000023

Аналогичным способом могут быть определены групповые операции над конечными группами векторов БС размерностей m=4, m=5 и т.д. Например, правила умножения базисных векторов для случая m=7 приведены в следующей таблице 4, где в качестве коэффициентов растяжения p, τ, λ, ε, µ и τ могут быть использованы произвольные шесть значений, являющихся многочленами в случае, когда вектора БС представляют собой вектора многочленов, или являющихся МДЧ в случае, когда вектора БС представляют собой вектора МДЧ.In a similar way, group operations on finite groups of BS vectors of dimensions m = 4, m = 5, etc. can be defined. For example, the rules for multiplying basis vectors for the case m = 7 are given in the following table 4, where arbitrary six values can be used as the tensile coefficients p, τ, λ, ε, μ, and τ, which are polynomials in the case when the BS vectors are polynomial vectors, or being MDCs in the case when the BS vectors are MDC vectors.

Figure 00000024
Figure 00000024

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

Figure 00000025
причем порядок этой подгруппы является достаточно большим. Группа - это алгебраическая структура (т.е. множество математических элементов некоторой природы), над элементами которой задана некоторая операция таким образом, что алгебраическая структура обладает следующим набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в широко доступной математической литературе, например в книгах [А.Г.Курош. Теория групп.- М., изд-во «Наука», 1967. - 648 с.] и [М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп.- М., изд-во «Наука. Физматлит», 1996. - 287 с.]. Операция, определенная над элементами группы, называется групповой операцией. Группа называется циклической, если каждый ее элемент может быть представлен в виде g=аn для некоторого натурального числа n, где а - элемент данной подгруппы, называющийся генератором или образующим элементом циклической подгруппы, и степень n означает, что над элементом а выполняются n последовательных операций, т.е.
Figure 00000026
(n раз). Известно, что, если порядок группы есть простое число, то она циклическая [А.И. Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.]. Важной характеристикой группы является ее порядок, который равен числу элементов в группе. Для элементов группы также применяется понятие порядка. Порядком элемента группы является минимальное значение степени, в которую нужно возвести этот элемент, чтобы результатом операции было получение нейтрального элемента группы.With the appropriate choice of the base vector multiplication table and the simple value p, the set of MDC vectors is finite and this finite set contains a subset of the MDC vectors, which form a group with a group operation
Figure 00000025
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 whose elements a certain 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 an element of the same structure, there is the neutral element is such that when performing an operation on it and some other element of the group a, the result is element a. A detailed description of the groups is given in widely available mathematical literature, for example, in books [A.G. Kurosh. Theory of groups. - M., publishing house "Science", 1967. - 648 p.] And [M.I. Kargapolov, Yu.I. Merzlyakov. Fundamentals of group theory. - M., publishing house "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 00000026
(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. The basics 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 specification of the group of BS 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 into 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 [Moldovyan NA. Workshop on public key cryptosystems. - SPb. BHV-Petersburg, 2007. - 298 p.].

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

Figure 00000027
над векторами МДЧ выполняется путем выполнения модульных умножений и сложений над МДЧ, являющихся компонентами векторов МДЧ, достаточно высокая трудность задачи дискретного логарифмирования в группе векторов МДЧ достигается при сравнительно малом значении размера модуля р, благодаря чему обеспечивается сравнительно высокая производительность операции возведения векторов МДЧ в большую степень. Поскольку производительность процедур формирования и проверки ЭЦП определяется производительностью операции возведения в степень, то при использовании операций над векторами МДЧ обеспечивается сравнительно высокая производительность процедур формирования и проверки ЭЦП.Since the group operation
Figure 00000027
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, 0, 0,…, 0).The order of the BS 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, 0, 0, ..., 0).

В частных случаях задания конечного множества векторов БС оно будет представлять расширенное поле, в котором все ненулевые вектора БС составляют циклическую мультипликативную группу [Молдовян Н.А. Алгоритмы аутентификации информации в АСУ на основе структур в конечных векторных пространствах // Автоматика и телемеханика (М., РАН), 2008]. В других частных случаях формируемые группы являются нециклическими, в которых содержится q+1 циклических подгрупп простого порядка q, где q является делителем порядка поля, над которым заданы вектора БС. При этом значение q является достаточно большим, благодаря чему нециклические группы векторов БС могут быть основой для реализации стойких алгоритмов ЭЦП даже в случае, когда размер максимального простого порядка подгрупп составляет 60-100 бит и менее. Это обеспечивается за счет того, что открытый ключ формируется на основе нескольких заданных векторов БС, входящих в разные подгруппы простого порядка, которые имеют единственный общий элемент - единичный вектор БС. Данный механизм задания открытого ключа в способах формирования и проверки ЭЦП является новым и ранее неизвестным.In particular cases of defining a finite set of BS vectors, it will represent an extended field in which all nonzero BS vectors constitute a cyclic multiplicative group [N. Moldovyan Information authentication algorithms in ACS based on structures in finite vector spaces // Automation and Telemechanics (M., RAS), 2008]. In other special cases, the formed groups are noncyclic, which contain q + 1 cyclic subgroups of prime order q, where q is a divisor of the order of the field over which BS vectors are given. Moreover, the q value is quite large, due to which non-cyclic groups of BS vectors can be the basis for the implementation of stable EDS algorithms even when the size of the maximum simple order of subgroups is 60-100 bits or less. This is due to the fact that the public key is formed on the basis of several specified BS vectors that are part of different subgroups of simple order that have a single common element - a single BS vector. This mechanism for setting the public key in the methods of generating and verifying EDS is new and previously unknown.

Корректность заявленного способа доказывается теоретически. Рассмотрим, например, вариант реализации способа по п.9 формулы изобретения. Открытый ключ, соответствующий секретному ключу k, представляет собой вектор БС Y=Gk. Вектор БС R генерируется по формуле R=Gk, а первое МДЧ в ЭЦП (e, s) вычисляется по формуле е=f(R,H). Значение s генерируется по формуле s=(k+ex) mod q, поэтому вектор МДЧ R', генерируемый по формуле

Figure 00000028
и используемый для формирования первого проверочного МДЧ А, равенThe correctness of the claimed method is proved theoretically. Consider, for example, an embodiment of the method according to claim 9. The public key corresponding to the secret key k is the BS vector Y = G k . The BS vector R is generated by the formula R = G k , and the first MDC in the EDS (e, s) is calculated by the formula e = f (R, H). The value of s is generated by the formula s = (k + ex) mod q, therefore, the MDC vector R 'generated by the formula
Figure 00000028
and used to form the first verification MDC A, is

Figure 00000029
Figure 00000029

Поскольку вектора МДЧ R' и R одинаковы, то равны между собой и значения е'=f(R',H) и e=f(R,H), т.е. А=е'=е=В. Таким образом, правильно сформированная ЭЦП подпись удовлетворяет процедуре проверки подписи, т.е. корректность процедур генерации и проверки ЭЦП доказана. Аналогичным образом дается доказательство корректности и для пп.5-8 формулы изобретения.Since the MDC vectors R 'and R are the same, the values e' = f (R ', H) and e = f (R, H) are equal to each other, i.e. A = e '= e = B. Thus, a correctly formed EDS 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 5-8 of the claims.

Особенностью пп.5-7 и п.11 формулы изобретения является использование нескольких различных векторов БС G1,…, Gu (G1 и G2 в пп.5 и 7; G1, G2 и G3, в п.6; G1, G2,…, Gm в п.11), по которым вычисляется открытый ключ и которые входят в соответствующие формулы проверки подлинности ЭЦП. Этот признак является новым в области способов формирования и проверки ЭЦП и имеет принципиальное значение для случая использования конечных групп векторов БС, которые являются нециклическими. В нециклических группах векторов БС отсутствуют отдельные значения векторов БС, степени которого могут выразить любой вектор БС. Используемые различные значения G1, G2 и G3 относятся к различным циклическим подгруппам нециклической группы векторов БС, поэтому для определения секретного ключа по открытому ключу требуется вычислять секретный ключ как единое целое, т.е. нет возможности вычислять секретный ключ по частям. Это позволяет построить стойкие алгоритмы ЭЦП даже в случаях, когда порядки векторов БС G1, G2 и G3, т.е. значения МДЧ q1, q2 и q3, соответственно, имеют размер значительно меньше 160 бит. Требование безопасности состоит в том, чтобы суммарная длина значений q1, q2 и q3 была не меньше, чем 160 бит. В зависимости от параметров конечного множества векторов БС и операции умножения, с помощью которой задаются конечные группы векторов БС для формирования открытого ключа, может быть использовано одно значение G (п.9 формулы изобретения), порядок которого имеет размер 160 бит и более, также могут быть использованы два (пп.5 и 7 формулы изобретения), три (п.6 формулы изобретения), четыре и более значений Gi, i=1,2,…, u (п.11 формулы изобретения). В соответствии с этим также модифицируется уравнение проверки ЭЦП. Так в общем случае открытый ключ формируется по формуле

Figure 00000030
где k1, k2, …, ku - элементы секретного ключа, а подлинность ЭЦП проверяется по формуле
Figure 00000031
где s1, s2, …, su - элементы ЭЦП, u≤m.A feature of claims 5-7 and claim 11 of the claims is the use of several different BS vectors G 1 , ..., G u (G 1 and G 2 in claims 5 and 7; G 1 , G 2 and G 3 , in claim 6; G 1 , G 2 , ..., G m in clause 11), by which the public key is calculated and which are included in the corresponding EDS authentication formulas. This feature is new in the field of methods for generating and verifying EDS and is of fundamental importance for the case of using finite groups of BS vectors that are non-cyclic. In non-cyclic groups of BS vectors, there are no separate values of BS vectors, the degrees of which any BS vector can express. The different values used G 1 , G 2 and G 3 belong to different cyclic subgroups of the non-cyclic group of BS vectors, therefore, to determine the secret key from the public key, it is necessary to calculate the secret key as a whole, i.e. there is no way to calculate the secret key in parts. This allows you to build robust digital signature algorithms even in cases where the orders of the BS vectors G 1 , G 2 and G 3 , i.e. MDC values q 1 , q 2 and q 3 , respectively, have a size significantly less than 160 bits. The security requirement is that the total length of q 1 , q 2 and q 3 is no less than 160 bits. Depending on the parameters of the finite set of BS vectors and the multiplication operation, with which the finite groups of BS vectors are specified for generating the public key, one G value can be used (claim 9), the order of which is 160 bits or more in size, two (claims 5 and 7 of the claims), three (claims 6 of the claims), four or more values of G i , i = 1,2, ..., u (claim 11 of the claims) are used. In accordance with this, the EDS verification equation is also modified. So in the general case, the public key is formed by the formula
Figure 00000030
where k 1 , k 2 , ..., k u are the elements of the secret key, and the authenticity of the digital signature is verified by the formula
Figure 00000031
where s 1 , s 2 , ..., s u are EDS elements, u≤m.

Пункт 10 формулы изобретения представляет частный вариант реализации заявленного способа, в котором для обеспечения безопасности ЭЦП используется сложность вычисления корней большой степени w из заданного значения вектора БС. В этом случае корректность процедуры проверки подлинности ЭЦП доказывается следующим образом. Открытый ключ, соответствующий секретному ключу, сгенерированному в виде БС К, представляет собой вектор БС Y, вычисляемый по формуле Y=Kw, где w - вспомогательное простое МДЧ. Вектор МДЧ R генерируется по формуле R=Тw, где Т - вектор БС, генерируемый по случайному закону. Первое МДЧ ЭЦП (е, S) вычисляется по формуле е=f(R, H). Вектор БС S генерируется по формуле

Figure 00000032
поэтому вектор МДЧ R', генерируемый по формуле
Figure 00000033
и используемый для формирования первого проверочного МДЧ А, равенParagraph 10 of the claims represents a particular embodiment of the claimed method, in which, to ensure the security of the digital signature, the complexity of calculating the roots of a large degree w from a given value of the BS vector is used. In this case, the correctness of the EDS authentication procedure is proved as follows. The public key corresponding to the secret key generated in the form of BS K is a BS Y vector, calculated by the formula Y = K w , where w is an auxiliary simple MDC. The MDC vector R is generated by the formula R = T w , where T is the BS vector generated randomly. The first MDF EDS (e, S) is calculated by the formula e = f (R, H). Vector BS S is generated by the formula
Figure 00000032
therefore, the MDC vector R 'generated by the formula
Figure 00000033
and used to form the first verification MDC A, is

Figure 00000034
Figure 00000034

Поскольку вектора МДЧ R' и R одинаковы, то равны между собой и значения e'=f(R', H) и e=f(R, Н), т.е. A=e'=e=В. Таким образом, правильно сформированная ЭЦП удовлетворяет процедуре проверки подписи, т.е. корректность процедур генерации и проверки ЭЦП доказана и в случае частного варианта реализации заявляемого способа по п.10 формулы изобретения. Доказательство корректности проверки ЭЦП в случае п.8 включает объединение доказательств, выполненных для пп.9 и 10.Since the MDC vectors R 'and R are the same, the values e' = f (R ', H) and e = f (R, H) are equal to each other, i.e. A = e '= e = B. Thus, a correctly formed digital signature satisfies the signature verification procedure, i.e. the correctness of the procedures for generating and verifying EDS is proved in the case of a particular embodiment of the proposed method according to claim 10 of the claims. The proof of the correctness of the verification of the digital signature in the case of clause 8 includes the union of the evidence performed for clauses 9 and 10.

Рассмотрим примеры реализации заявленного технического решения, где конкретные значения использованных параметров описаны в приводимых ниже численных примерах. Использованные в примерах вектора МДЧ были сгенерирована с помощью программы, разработанной специально для генерации вектором МДЧ, включая вектора МДЧ с заданным порядком, и выполнения операций над векторами МДЧ. Приводимые в примере МДЧ взяты сравнительно малого размера и записаны для краткости в виде десятичных чисел. В вычислительных устройствах МДЧ представляются и преобразуются в двоичном виде, т.е. как БС в виде последовательности сигналов высокого и низкого потенциала. В реальных приложениях следует использовать вектора МДЧ, которые включают в качестве своих координат МДЧ длиной от 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 generation by the MDC vector, including MDC vectors with a given order, and performing operations on the 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 BS in the form of a sequence of high and low potential signals. In real applications, MDC vectors should be used, which include, as their coordinates, MDC from 16 to 512 bits in length, depending on the value of their dimension m MDC vectors. With a smaller dimension, a higher-resolution MDC should be used.

При использовании на практике заявляемого способа следует выбрать таблицу умножения базисных векторов и размер параметров р и q таким образом, чтобы разрядность значения порядка q была равна или превышала 32, 40, 64, 80 и 160 бит в зависимости от конкретного варианта реализации заявленного способа. В примерах, приводимых ниже, используются параметры с искусственно уменьшенной разрядностью, чтобы уменьшить размер примеров и сделать их более наглядными. When using the proposed method in practice, one should choose a multiplication table for the basis vectors and the size of the parameters p and q so that the bit depth of the order q is equal to or greater than 32, 40, 64, 80, and 160 bits, depending on the particular implementation of the claimed method. The examples below use parameters with artificially reduced bit depth to reduce the size of the examples and make them more visual.

Пример 1.Example 1

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

Figure 00000035
выполняется с использованием таблицы 2. В соответствии с этой таблицей умножения базисных векторов для случая размерности m=2 имеем i·i=ε, где ε∈ {1,…,М-1}. Операция умножения двухмерных БС (а, b) и (с, d) выполняется по правилу:This example illustrates an implementation option of the claimed method, corresponding to paragraph 5 of the claims, in which actions are performed on two-component BS vectors. To obtain a finite group of two-dimensional BS vectors of the form (e, b) = its + bi, BS e and b are interpreted as MDCs, over which the operations of multiplication and addition of coordinates are defined, performed modulo a positive integer M. In this example, the group operation
Figure 00000035
is performed using table 2. In accordance with this multiplication table of basis vectors for the case of dimension m = 2 we have i · i = ε, where ε∈ {1, ..., M-1}. The operation of multiplying two-dimensional BS (a, b) and (c, d) is performed according to the rule:

(a, b)(c, d)=((ас+εbd) mod М, (ad+bc) mod М)=g'e+h'i,(a, b) (c, d) = ((ac + εbd) mod M, (ad + bc) mod M) = g'e + h'i,

где g'=(ас+εbd) mod М и h'=(ad+bc) mod М. Легко проверить, что определенные таким образом операции сложения и умножения обладают свойствами ассоциативности и коммутативности. Среди алгебраических структур такого типа имеются конечные поля и мультипликативные группы, существенным свойством которых является наличие единицы Е=(1, 0) - нейтрального элемента по умножению, который определяет существование для каждой ненулевой пары А единственного обратного значения А-1 такого что АА-1=Е.where g '= (ac + εbd) mod M and h' = (ad + bc) mod M. It is easy to verify that the addition and multiplication operations defined in this way have the properties of associativity and commutativity. Among algebraic structures of this type there are finite fields and multiplicative groups whose essential property is the presence of a unit E = (1, 0), a neutral multiplication element that determines the existence for each nonzero pair A of a unique inverse value A -1 such that AA -1 = E.

Группа - это алгебраическая структура с ассоциативной операцией, для которой существует обратная операция [Курош А.Г. Курс высшей алгебры.- М., «Наука», 1971.- 431 с.], т.е. уравненияA group is an algebraic structure with an associative operation for which there is an inverse operation [Kurosh A.G. The course of higher algebra. - M., "Science", 1971.- 431 p.], Ie equations

АХ=В и YA=В имеют единственное решение для любых элементов А и В. Поскольку определенная выше операция умножения является коммутативной, то указанные уравнения являются эквивалентными и можно рассматривать только одно из них. Легко показать, что однозначность решения указанных уравнений выполняется, если для каждого элемента А существует единственное обратное значение А-1, поэтому представляет интерес рассмотреть решение уравнений вида АХ=Е, которое можно представить следующим образом:AX = B and YA = B have a unique solution for any elements A and B. Since the multiplication operation defined above is commutative, the indicated equations are equivalent and only one of them can be considered. It is easy to show that the uniqueness of the solution of these equations is satisfied if for each element A there is a unique inverse value A -1 , therefore it is of interest to consider a solution of equations of the form AX = E, which can be represented as follows:

(аe+bi)(хе+yi)=((ax+εby) mod M)e+(ay+bx) mod M)i=1e+0i. (ae + bi) (xe + yi) = ((ax + εby) mod M) e + (ay + bx) mod M) i = 1e + 0i.

Из последней записи вытекает, что для определения обратных значений следует решать следующую систему из двух линейных сравнений с двумя неизвестнымиFrom the last record it follows that to determine the inverse values, one should solve the following system of two linear comparisons with two unknowns

Figure 00000036
Figure 00000036

Рассмотрим существование решений этой системы для случая использования в качестве модуля простого МДЧ p, т.е. М=р. Приравнивая нулю главный определитель этой системы, получаем характеристическое уравнениеWe consider the existence of solutions of this system for the case of using a simple MDF p as a module, i.e. M = p. Equating to zero the main determinant of this system, we obtain the characteristic equation

е2-εb2=0 mod р.e 2 -εb 2 = 0 mod p.

Значение (а, b)=(0,0) является решением характеристического уравнения для любых значений модуля, поэтому для этой пары не существует обратного значения. Значения р и s можно выбрать таким образом, что характеристическое уравнение не имеет других решений, а значит рассматриваемая система сравнений имеет единственное решение для любой пары (а, b)≠(0,0). Рассмотрим несколько важных частных случаев.The value (a, b) = (0,0) is a solution of the characteristic equation for any values of the module, therefore, for this pair there is no inverse value. The values of p and s can be chosen in such a way that the characteristic equation has no other solutions, which means that the considered comparison system has a unique solution for any pair (a, b) ≠ (0,0). We consider several important special cases.

Случай 1. Значительный интерес представляет выбор в качестве параметра ε значения, которое является квадратичным невычетом по модулю р. В этом случае получаем структуру, являющуюся конечным полем GF(p2), мультипликативная группа которого имеет порядокCase 1. Of considerable interest is the choice of a parameter ε as a parameter, which is a quadratic non-residue modulo p. In this case, we obtain a structure that is a finite field GF (p 2 ) whose multiplicative group is of order

Ω=p2-1=(p-1)(р+1).Ω = p 2 -1 = (p-1) (p + 1).

Задавая различные значения модуля р и параметра ε, получаем различные варианты конечного поля типа GF(p2). Для заданного значения р имеем (р-1)/2 различных вариантов поля GF(p2), включающих одно и то же множество элементов, но отличающихся видом операции умножения, соответственно числу различных квадратичных невычетов по модулю p.By setting different values of the modulus p and the parameter ε, we obtain various variants of a finite field of type GF (p 2 ). For a given value of p, we have (p-1) / 2 different variants of the field GF (p 2 ), including the same set of elements, but differing in the form of the multiplication operation, respectively, according to the number of different quadratic residues modulo p.

Случай 2 (используется для иллюстрации частных вариантов реализации заявляемого способа по п.5 и п.8 формулы изобретения в примерах 1 и 4, соответственно). Пусть в определении операции умножения используется параметр ε, который является квадратичным вычетом по модулю р. При этих условиях характеристическое уравнение имеет, кроме (а,b)=(0,0), еще 2(р-1) следующих решений видаCase 2 (used to illustrate particular embodiments of the proposed method according to claim 5 and claim 8 of the claims in examples 1 and 4, respectively). Let the parameter ε be used in the definition of the multiplication operation, which is the quadratic residue modulo p. Under these conditions, the characteristic equation has, in addition to (a, b) = (0,0), another 2 (p-1) of the following solutions of the form

1/2b mod p,b) и (-ε1/2 b mod p,b),1/2 b mod p, b) and (-ε 1/2 b mod p, b),

где b∈{0,1,…,р-1}. Для пар такого вида не существуют решений системы сравнений, которые определяют значение обратных элементов. Следовательно, количество элементов, для которых существуют единственные обратные значения, равноwhere b∈ {0,1, ..., p-1}. For pairs of this kind, there are no solutions to the comparison system that determine the value of the inverse elements. Therefore, the number of elements for which there are unique inverse values is

Ω=p2-2(p-1)-1=(p-1)2.Ω = p 2 -2 (p-1) -1 = (p-1) 2 .

Эти элементы составляют мультипликативную группу, поскольку результат умножения любых двух элементов из этого множества является элементом этого же множества. Данная группа векторов БС является нециклической и содержит большое число циклических подгрупп, имеющих одно и то же значение простого порядка q, который является делителем р-1. Наибольшее значение порядка циклических подгрупп равно р-1. Выполненные нами теоретические и экспериментальные исследования показали, что группа БС, соответствующая случаю 2, содержит q+1 циклических подгрупп простого порядка q для каждого простого делителя числа р-1. При больших значениях q, размер которых превышает 80 бит, число циклических подгрупп чрезвычайно велико, что позволяет обеспечить стойкость ЭЦП соответствующей стойкости ЭЦП в случае известных аналогов при применении циклических групп простого порядка, размер которого превышает 160 бит.These elements make up the multiplicative group, since the result of multiplying any two elements from this set is an element of the same set. This group of BS vectors is non-cyclic and contains a large number of cyclic subgroups having the same value of prime order q, which is a divisor of p-1. The largest value of the order of cyclic subgroups is p-1. Our theoretical and experimental studies have shown that the BS group corresponding to Case 2 contains q + 1 cyclic subgroups of prime order q for each prime divisor of p-1. For large values of q, the size of which exceeds 80 bits, the number of cyclic subgroups is extremely large, which makes it possible to ensure the resistance of the EDS to the corresponding resistance of the EDS in the case of known analogues when using cyclic groups of simple order, the size of which exceeds 160 bits.

Случай 3 (относится к варианту реализации заявляемого способа по п.10 формулы изобретения, иллюстрируемого ниже в примере 6). Особенностью этого случая является задание операций сложения и умножения над координатами вектора БС, выполняемых по модулю М, который не является простым. В этом случае общий анализ условий существования групп и определение их порядка является более сложным. Однако интересующий нас следующий частный случай составного модуля М=w2, где w - простое число, позволяет получить формулы для расчета порядка группы при произвольном простом МДЧ w.Case 3 (relates to an embodiment of the inventive method according to claim 10 of the claims illustrated in example 6 below). A feature of this case is the specification of operations of addition and multiplication over the coordinates of the BS vector, performed modulo M, which is not simple. In this case, a general analysis of the conditions for the existence of groups and the determination of their order is more complicated. However, the following special case of the composite module M = w 2 , where w is a prime number, of interest to us, allows us to obtain formulas for calculating the order of the group for an arbitrary simple MDF w.

Пусть используется значение М=w2, где w - простое число, в качестве модуля, а параметр ε делится на w. При этих условиях для элементов (а, b), таких что а не делится на w, характеристическое уравнение не имеет решений, поскольку w|ε, а определитель системы сравнений является взаимно простым с модулем М=w2, т.е. для каждого из указанных элементов имеются обратные значения. При этом операция умножения двух элементов дает третий элемент, в котором первая координата также не делится на М, т.е. операция умножения является замкнутой на указанном множестве пар (а, b). Следовательно, это множество векторов БС является группой, порядок которой можно определить из того факта, что число возможных значений первой координаты равно функции Эйлера от модуля φ(М)=φ(w2)=w(w-1), число возможных значений второй координаты равно М=w2. Получаем следующую формулу для значения порядка построенной мультипликативной группыLet the value M = w 2 be used, where w is a prime number, as a module, and the parameter ε is divided by w. Under these conditions, for elements (a, b) such that a is not divisible by w, the characteristic equation has no solutions, since w | ε, and the determinant of the comparison system is coprime with the module M = w 2 , i.e. for each of these elements there are inverse values. In this case, the operation of multiplying two elements gives the third element, in which the first coordinate is also not divided by M, i.e. the operation of multiplication is closed on the indicated set of pairs (a, b). Therefore, this set of BS vectors is a group whose order can be determined from the fact that the number of possible values of the first coordinate is equal to the Euler function of the module φ (M) = φ (w 2 ) = w (w-1), the number of possible values of the second the coordinates are M = w 2 . We obtain the following formula for the order value of the constructed multiplicative group

Ω=w(w-l)·w2=w3(w-1).Ω = w (wl); w 2 = w 3 (w-1).

Опыт показал, что в построенной группе содержится циклическая группа порядкаExperience has shown that the constructed group contains a cyclic group of order

Ω'=w2(w-1),Ω '= w 2 (w-1),

которая подходит для решения нашей задачи синтеза алгоритмов ЭЦП, основанных на вычислительной сложности нахождения корней большой простой степени в конечных мультипликативных группах.which is suitable for solving our task of synthesizing EDS algorithms based on the computational complexity of finding roots of a large simple degree in finite multiplicative groups.

В примере 1 реализуют вычисления в группе векторов БС, тип которой соответствует случаю 2, описанному выше. При этом выполняют следующую последовательность действий.Example 1 implements the calculations in the group of BS vectors, the type of which corresponds to case 2 described above. In this case, the following sequence of actions is performed.

1. Генерируют простое число р, такое что р - 1 содержит большой простой множитель q, т.е. р=Nq+1, где N - четное число, и задают значение ε=225, являющееся квадратичным вычетом по модулю р: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, and ε = 225 is set, which is a quadratic residue modulo p:

р=3990163786012426536171919;p = 3990163786012426536171919;

q=1997539432909;q = 1997539432909;

2. Генерируют секретный ключ в виде пары случайных МДЧ k1 и k2:2. Generate a secret key in the form of a pair of random MDC k 1 and k 2 :

k1=1853362791;k 1 = 1853362791;

k2=8457313533;k 2 = 8457313533;

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. Генерируют пару векторов МДЧ G1 и G2, имеющих порядок3.1. Generate a pair of MDC vectors G 1 and G 2 of order

q=1997539432909.q = 1997539432909.

G1=3294504589562920276812106е+2766233567473802431338876i;G 1 = 3294504589562920276812106е + 2766233567473802431338876i;

G2=1028484769067346813640211е+3852939155310569961109202i;G 2 = 1028484769067346813640211е + 3852939155310569961109202i;

3.2. Генерируют вектор МДЧ

Figure 00000037
:3.2. MDC vector generate
Figure 00000037
:

Figure 00000038
=1183619390973024467297431е+3703669051605973538784782i;
Figure 00000038
= 1183619390973024467297431e + 3703669051605973538784782i;

Figure 00000039
=182788774563б60856108049е+1936038364647789724421279i;
Figure 00000039
= 182788774563b60856108049e + 1936038364647789724421279i;

Figure 00000040
=1924471834140042300320534e+174837666126798422981001i;
Figure 00000040
= 1924471834140042300320534e + 174837666126798422981001i;

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

H1=7579346783.H 1 = 7579346783.

5. Формируют ЭЦП Q в виде трех БС е, s1 и s2, для чего выполняют следующие действия:5. Form the digital signature Q in the form of three BS e, s 1 and s 2 , for which they perform the following steps:

5.1. Формируют первую БС е ЭЦП, для чего5.1. The first BS e digital signature is formed, for which

5.1.1. Генерируют пару случайных МДЧ t1=18357236873 и t2=38157216371.5.1.1. A pair of random MDC t 1 = 18357236873 and t 2 = 38157216371 are generated.

5.1.2. Генерируют вектор БС R по формуле

Figure 00000041
:5.1.2. Generate vector BS R according to the formula
Figure 00000041
:

Figure 00000042
=755879295575251075473814е+440880985283782634380692i;
Figure 00000042
= 755879295575251075473814e + 440880985283782634380692i;

Figure 00000043
=1432490514364096482144778e+952288470467392311694046i;
Figure 00000043
= 1432490514364096482144778e + 952288470467392311694046i;

Figure 00000044
Figure 00000044

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=r1H1 mod δ, где δ - вспомогательное простое МДЧ, например, δ=q=1997539432909; r1 - МДЧ, являющееся первой координатой вектора МДЧ R: е=1701612237557. 5.1.3. BS e is generated in the form of MDC calculated by the formula e = r 1 H 1 mod δ, where δ is an auxiliary simple MDC, for example, δ = q = 1997539432909; r 1 - MDC, which is the first coordinate of the vector MDC R: e = 1701612237557.

5.2. Формируют вторую и третью БС s1 и s2 ЭЦП в виде двух МДЧ, вычисляемых по формулам s1=t1-k1e mod q и s2=t2-k2e mod q:5.2. Form the second and third BS s 1 and s 2 EDS in the form of two MDC, calculated by the formulas s 1 = t 1 -k 1 e mod q and s 2 = t 2 -k 2 e mod q:

s1=1767916348307; s2=1894616394985. s 1 = 1767916348307; s 2 = 1894616394985.

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

6.1. Генерируют вектор БС R' в виде вектора МДЧ, вычисляемого по формуле6.1. Generate the BS vector R 'in the form of a MDC vector calculated by the formula

Figure 00000045
:
Figure 00000045
:

Ye=3849037943945673660459504е+3583704901879536834939540i.Y e = 3849037943945673660459504е + 3583704901879536834939540i.

Figure 00000046
=3580532237073410771710519e+896847748485820473603568i;
Figure 00000046
= 3580532237073410771710519e + 896847748485820473603568i;

Figure 00000047
=2902157646689814295993329е+1114779150752846285743470i.
Figure 00000047
= 2902157646689814295993329е + 1114779150752846285743470i.

R'=1828785111436413473493597e+3766810841718525336502327i.R '= 1828785111436413473493597e + 3766810841718525336502327i.

6.2. Генерируют БС А в виде МДЧ, вычисляемого по формуле А=r'1H1 mod q, где r'1 - МДЧ, являющееся первой координатой вектора МДЧ R':6.2. BS A is generated in the form of MDC, calculated by the formula A = r ' 1 H 1 mod q, where r' 1 is the MDC, which is the first coordinate of the MDC vector R ':

А=1701612237557.A = 1701612237557.

7. Формируют вторую проверочную БС В путем копирования МДЧ е, т.е. по формуле В=е: В=1701612237557.7. A second test BS B is formed by copying the MDC e, i.e. according to the formula B = e: B = 1701612237557.

8. Сравнивают первую и вторую проверочные БС: А=В. 8. Compare the first and second test BS: A = B.

Совпадение проверочных БС подтверждает подлинность ЭЦП.The coincidence of the test BS confirms the authenticity of the digital signature.

Пример 2 (иллюстрация п.6 формулы изобретения).Example 2 (illustration of claim 6).

В данном примере рассматривается случай использования трехкомпонентных векторов БС (m=3), в котором групповая операция о выполняется с использованием таблицы 3, задающей правило умножения базисных векторов. Выполняют следующую последовательность действий.In this example, we consider the case of using three-component BS vectors (m = 3), in which the group operation о is performed using table 3, which defines the rule for multiplying basis vectors. Perform the following sequence of actions.

1. Генерируют простое число р, такое что р-1 содержит большой простой множитель q, т.е. р=Nq+1, где N - четное число, и задают значение ε=6859=193, являющееся кубичным вычетом по модулю p: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, and set the value ε = 6859 = 19 3 , which is a cubic residue modulo p:

р=33888823497367; q=2376581;p = 33888823497367; q = 2376581;

2. Генерируют секретный ключ в трех случайных МДЧ k1, k2 и k3:2. Generate a secret key in three random MDC k 1 , k 2 and k 3 :

k1=1853362791; k2=8457313533; k3=3873059582.k 1 = 1853362791; k 2 = 8457313533; k 3 = 3873059582.

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

3.1. Генерируют три вектора МДЧ G1, G2 и G3, имеющие порядок q=2376581.3.1. Three MDC vectors G 1 , G 2 and G 3 are generated having the order q = 2376581.

G1=5955377462471e+28217758221981i+21380040635602j;G 1 = 5955377462471e + 28217758221981i + 21380040635602j;

G2=31195950338318e+1146212670059i+19798505045659j;G 2 = 31195950338318e + 1146212670059i + 19798505045659j;

G3=12169985178873e+22834221533336i+23611151771899j.G 3 = 12169985178873e + 22834221533336i + 23611151771899j.

3.2. Генерируют вектор МДЧ

Figure 00000048
:3.2. MDC vector generate
Figure 00000048
:

Figure 00000038
=26106362944111e+9121853491576i+7998895962567j;
Figure 00000038
= 26106362944111e + 9121853491576i + 7998895962567j;

Figure 00000049
=8841482011615e+31890466083034i+31068266275905j;
Figure 00000049
= 8841482011615e + 31890466083034i + 31068266275905j;

Figure 00000050
=32249398803413e+18420663759564i+31373921099158j;
Figure 00000050
= 32249398803413e + 18420663759564i + 31373921099158j;

Figure 00000051
Figure 00000051

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

H1=1578147.H 1 = 1578147.

5. Формируют ЭЦП Q в виде четырех БС е, s1, s2, и s3, для чего выполняют следующие действия:5. Form the digital signature Q in the form of four BS e, s 1 , s 2 , and s 3 , for which they perform the following steps:

5.1. Формируют первую БС е ЭЦП, для чего5.1. The first BS e digital signature is formed, for which

5.1.1. Генерируют три случайных МДЧ t1=16355233827, t2=9315216313 и t3=286572167.5.1.1. Three random MDC t 1 = 16355233827, t 2 = 9315216313 and t 3 = 286572167 are generated.

5.1.2. Генерируют вектор МДЧ R по формуле

Figure 00000052
:5.1.2. MDC R vector is generated by the formula
Figure 00000052
:

Figure 00000042
=26476756850873e+89620836256881+670851250270j;
Figure 00000042
= 26476756850873e + 89620836256881 + 670851250270j;

Figure 00000053
=30556526925766e+28584458265015i+8838154755582j;
Figure 00000053
= 30556526925766e + 28584458265015i + 8838154755582j;

Figure 00000054
=11801846609303e+18076196032752i+32080216656488j;
Figure 00000054
= 11801846609303e + 18076196032752i + 32080216656488j;

Figure 00000055
Figure 00000055

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=(r1||r2||r31 mod δ, где δ - вспомогательное простое число, в качестве которого в данном примере берется МДЧ q, т.е. δ=q=2376581; r1||r2||r3 - МДЧ, равное конкатенации координат вектора МДЧ R: е=665438.5.1.3. BS e is generated in the form of MDC, calculated by the formula e = (r 1 || r 2 || r 3 ) H 1 mod δ, where δ is an auxiliary prime number, in which, in this example, MDC q is taken, i.e. δ = q = 2376581; r 1 || r 2 || r 3 - MDC, equal to the concatenation of the coordinates of the vector MDC R: е = 665438.

5.2. Формируют вторую, третью и четвертую БС s1, s2 и s3, ЭЦП в виде трех МДЧ, вычисляемых по формулам s1=t1-k1e mod q, s2=t2-k2e mod q и s3=t3-k3e mod q:5.2. Form the second, third and fourth BS s 1 , s 2 and s 3 , EDS in the form of three MDC calculated by the formulas s 1 = t 1 -k 1 e mod q, s 2 = t 2 -k 2 e mod q and s 3 = t 3 -k 3 e mod q:

s1=56419; s2=1472355; s3=1213067.s 1 = 56419; s 2 = 1472355; s 3 = 1213067.

6. Формируют первую проверочную БС А, для чего выполняются следующие действия:6. Form the first test BS A, for which the following actions are performed:

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

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

Ye=6474526780075e+26594658074693i+27807198777585j;Y e = 6474526780075e + 26594658074693i + 27807198777585j;

Figure 00000057
=46566596б2651е+31668525221129i+9741922667955j;
Figure 00000057
= 46566596b2651e + 31668525221129i + 9741922667955j;

Figure 00000058
Figure 00000058

Figure 00000059
=13878539449612e+10268579457949i+25993200515657j;
Figure 00000059
= 13878539449612e + 10268579457949i + 25993200515657j;

Figure 00000060
=8522604164956e+3729385407205i+6316798018014j;
Figure 00000060
= 8522604164956e + 3729385407205i + 6316798018014j;

Figure 00000061
Figure 00000061

R'=10344044176952e+11648038573307i+33051212302586j.R '= 10344044176952e + 11648038573307i + 33051212302586j.

6.2. Генерируют первую проверочную БС А в виде МДЧ, вычисляемого по формуле А=(r'1||r'2||r'3)H1 mod q: А=665438.6.2. The first test BS A is generated in the form of an MDC calculated by the formula A = (r ' 1 || r' 2 || r ' 3 ) H 1 mod q: A = 665438.

7. Формируют вторую проверочную БС В путем копирования МДЧ е по формуле В=е: В=665438.7. A second test BS B is formed by copying the MDC e according to the formula B = e: B = 665438.

8. Сравнивают первую и вторую проверочные БС: А=В 8. Compare the first and second test BS: A = B

Совпадение проверочных БС подтверждает подлинность ЭЦП.The coincidence of the test BS confirms the authenticity of the digital signature.

Пример 3 (иллюстрация п.7 формулы изобретения).Example 3 (illustration of claim 7).

В данном примере рассматривается случай использования пятикомпонентных векторов БС (размерность m=5), в котором групповая операция о выполняется с использованием следующей таблицы умножения базисных векторов.In this example, we consider the case of using five-component BS vectors (dimension m = 5), in which the group operation о is performed using the following table of base vector multiplication.

Figure 00000062
Figure 00000062

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

1. Генерируют простое число p, такое что р-1 содержит большой простой множитель q, т.е. р=Nq+1, где N- четное число, и задают значение ε=17377: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, and ε = 17377 is set:

р=13900359797; q=820177;p = 13900359797; q = 820177;

2. Генерируют секретный ключ в виде двух случайных МДЧ k1 и k2:2. Generate a secret key in the form of two random MDC k 1 and k 2 :

k1=3178457367; k2=4154733715.k 1 = 3178457367; k 2 = 4154733715.

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

3.1. Генерируют два вектора БС G1 и G2, имеющие порядок q1=820177 и g2=59403247. G1=4670230529e+6363758539i+1115493580j+11774211119k+4481291788u;3.1. Two BS vectors G 1 and G 2 are generated having the order q 1 = 820177 and g 2 = 59403247. G 1 = 4670230529e + 6363758539i + 1115493580j + 11774211119k + 4481291788u;

G2=7346947995e+9935549003i+571858634j+5252170971k+11375019823u.G 2 = 7346947995e + 9935549003i + 571858634j + 5252170971k + 11375019823u.

3.2. Генерируют вектор БС

Figure 00000063
:3.2. BS vector is generated
Figure 00000063
:

Y1=5595374136e+6222510934i+5243302038j+12338881800k+1993502504u;Y 1 = 5595374136e + 6222510934i + 5243302038j + 12338881800k + 1993502504u;

Y2=8724284212e+10520629249i+37795532j+9839512858k+9802549315u;Y 2 = 8724284212e + 10520629249i + 37795532j + 9839512858k + 9802549315u;

Figure 00000064
Figure 00000064

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

5. Формируют ЭЦП Q в виде трех БС е, s1 и s2, для чего выполняют следующие действия:5. Form the digital signature Q in the form of three BS e, s 1 and s 2 , for which they perform the following steps:

5.1. Формируют первую БС е ЭЦП, для чего5.1. The first BS e digital signature is formed, for which

5.1.1. Генерируют пару случайных МДЧ k1=613352348 и k2=37591463.5.1.1. A pair of random MDCs k 1 = 613352348 and k 2 = 37591463 are generated.

5.1.2. Генерируют вектор МДЧ

Figure 00000065
:5.1.2. MDC vector generate
Figure 00000065
:

R1=2267371210e+1531475463i+11370174246j+13211765802k+10527441855u;R 1 = 2267371210e + 1531475463i + 11370174246j + 13211765802k + 10527441855u;

R2=1310809391le+3936822199i+9539524888j+5370585930k+6567932491u;R 2 = 1310809391le + 3936822199i + 9539524888j + 5370585930k + 6567932491u;

Figure 00000066
Figure 00000066

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=(r1||r2||r3,)Н1 mod δ, где δ - вспомогательное простое число, в качестве которого в данном примере берется МДЧ δ=2376581; r1||r2||r3 - МДЧ, равное конкатенации трех МДЧ, являющихся координатами вектора МДЧ R: е=119236. 5.1.3. BS e is generated in the form of MDC, calculated by the formula e = (r 1 || r 2 || r 3 ,) H 1 mod δ, where δ is an auxiliary prime number, in which, in this example, MDC is taken δ = 2376581; r 1 || r 2 || r 3 - MDC, equal to the concatenation of three MDC, which are the coordinates of the vector MDC R: е = 119236.

5.2. Формируют пару БС s1 и s2 в виде МДЧ, вычисляемого по формулам s1=t1-k1e mod q1 и s2=t2-k2e mod q2.5.2. Form a pair of BS s 1 and s 2 in the form of MDC calculated by the formulas s 1 = t 1 -k 1 e mod q 1 and s 2 = t 2 -k 2 e mod q 2 .

s1=626030; s2=2528952. s 1 = 626030; s 2 = 2528952.

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

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

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

Yе=977315114е+13874743606i+10113644214j+97683587k+971368210u;Y e = 977315114e + 13874743606i + 10113644214j + 97683587k + 971368210u;

Figure 00000057
=10769096929e+2654696484i+11130937343j+3507101146k+4306145379u;
Figure 00000057
= 10769096929e + 2654696484i + 11130937343j + 3507101146k + 4306145379u;

Figure 00000059
=12814278574e+7057455723i+12699485338j+1124012626k+147947960u;
Figure 00000059
= 12814278574e + 7057455723i + 12699485338j + 1124012626k + 147947960u;

R'=6897422139e+631158804i+593548634j+4117090044k+2590225180u.R '= 6897422139e + 631158804i + 593548634j + 4117090044k + 2590225180u.

6.2. Генерируют БС А в виде МДЧ, вычисляемого по формуле6.2. BS A is generated in the form of MDC calculated by the formula

А=(r'1||r'2||r'3)H1 mod δ: A=119236.A = (r ' 1 || r' 2 || r ' 3 ) H 1 mod δ: A = 119236.

7. Формируют вторую проверочную БС В путем копирования МДЧ е:7. Form a second verification BS In by copying MDC e:

В=е=119236.B = e = 119236.

8. Сравнивают первую и вторую проверочные БС: А=В.8. Compare the first and second test BS: A = B.

Совпадение проверочных БС подтверждает подлинность ЭЦП.The coincidence of the test BS confirms the authenticity of the digital signature.

Пример 4.Example 4

Данный пример относится к варианту реализации заявленного способа по п.8 формулы изобретения. В данном примере используется нециклическая группа Г, содержащая циклические подгруппы, порядок которых делится на w2. Формирование такой нециклической группы описано в примере 1 как случай 2. В данном конкретном примере, относящемся к использованию группы, порядок которой выражается формулой Ω=(р-1)2, в группе Г существуют элементы порядка ω=(р-1)=Nw2, где N - четное число и w - простое число достаточно большого размера.This example relates to an embodiment of the inventive method according to claim 8. In this example, we use a non-cyclic group Γ containing cyclic subgroups whose order is divided by w 2 . The formation of such a non-cyclic group is described in example 1 as case 2. In this particular example, relating to the use of a group whose order is expressed by the formula Ω = (p-1) 2 , there are elements of the order ω = (p-1) = Nw in the group Г 2 , where N is an even number and w is a prime number of a sufficiently large size.

В данном примере в качестве модуля, по которому ведут вычисления, используется простое МДЧ р=2qw2+1, гдеIn this example, the simple MDC p = 2qw 2 +1, where

р=757095462971039987; q=1433729993 - простое МДЧ; p = 757095462971039987; q = 1433729993 - simple MDC;

w=16249 - простое МДЧ.w = 16249 - simple MDC.

Выполняют следующую последовательность действий, используя значение параметра ε=152399025, являющегося квадратом числа 12345.Perform the following sequence of operations using the value of the parameter ε = 152399025, which is the square of 12345.

1. Генерируют секретный ключ в виде двухмерного вектора БС К=(k1,k2), представленного двумя МДЧ k1 и k2, и одной БС, представленной МДЧ k:1. Generate a secret key in the form of a two-dimensional vector of the BS K = (k 1 , k 2 ), represented by two MDC k 1 and k 2 , and one BS represented by MDC k:

К=(k1, k2)=(162748957475865968, 978716439507194574);K = (k 1 , k 2 ) = (162748957475865968, 978716439507194574);

k=73678436295562.k = 73678436295562.

2. Генерируют вектор БС G, порядок которого равен q:2. Generate a BS vector G whose order is q:

G=(89833863138176218, 481445738651243524).G = (89833863138176218, 481445738651243524).

3. Формируют открытый ключ Y в виде двухмерного вектора БС, вычисляемого по формуле

Figure 00000068
выполняя следующие действия:3. Form the public key Y in the form of a two-dimensional vector of the BS, calculated by the formula
Figure 00000068
following these steps:

3.1. Вычисляют значения векторов БС Gk и Кw:3.1. The values of the BS vectors G k and K w are calculated:

Gk=(328752664651659001, 188933597249340036);G k = (328752664651659001, 188933597249340036);

Кw=(561576529082416854, 311520115027605902).K w = (561576529082416854, 311520115027605902).

3.2. Генерируют открытый ключ Y=(у12), для чего умножают вектор БС Gk на вектор БС Kw:3.2. Generate the public key Y = (y 1 , y 2 ), for which the BS vector G k is multiplied by the BS vector K w :

Y=(y1,y2)=(355961954073853677, y2=52073643974617679).Y = (y 1 , y 2 ) = (355961954073853677, y 2 = 52073643974617679).

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

5. Формируют ЭЦП в виде четырех БС, заданных четырьмя МДЧ е, s, s1 и s2, для чего выполняют следующую последовательность действий.5. A digital signature is formed in the form of four BS defined by four MDCs e, s, s 1 and s 2 , for which the following sequence of actions is performed.

5.1. Генерируют случайное МДЧ t и случайный двухмерный вектор БС, в котором координаты представляют собой МДЧ:5.1. A random MDC t and a random two-dimensional BS vector are generated, in which the coordinates are the MDC:

t=2134356456473;t = 2134356456473;

Т=(64697680789267, 70914503766891).T = (64697680789267, 70914503766891).

5.2. Генерируют вектор БС R, выполняя вычисления по формуле:

Figure 00000069
5.2. Generate the vector BS R, performing calculations by the formula:
Figure 00000069

Gt=(633200307649534083,225907802600880012);G t = (633200307649534083,225907802600880012);

Тw=(334316797118875406,694605535104513177).T w = (334316797118875406.694605535104513177).

В результате перемножения векторов БС Gt и Tw генерируют следующие значения координат вектора БС R:As a result of the multiplication of the BS vectors G t and T w , the following coordinates of the BS vector R are generated:

r1=278285084410523629; r2=476437561152596152.r 1 = 278285084410523629; r 2 = 476437561152596152.

5.3. Формируют первую БС е ЭЦП в виде МДЧ, вычисляемого по формуле e=f(R,H1), где f(R,Н1) - выражение, специфицирующее процедуру вычисления числа е. Пусть получено значение, равное е=874095303603.5.3. The first BS e EDS is formed in the form of a MDC calculated by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression specifying the procedure for calculating the number e. Let a value equal to e = 874095303603 be obtained.

5.4. Вычисляют двухмерный вектор БС S, координаты которого являются третьей и четвертой БС ЭЦП, по формуле

Figure 00000070
5.4. The two-dimensional BS vector S is calculated, the coordinates of which are the third and fourth EDS BS, according to the formula
Figure 00000070

К-e=Kp-1-e=(586016270354358239, 327468169526176273);K- e = K p-1-e = (586016270354358239, 327468169526176273);

S=(s1, s2)=(120860422228891963, 483553947421564222).S = (s 1 , s 2 ) = (120860422228891963, 483553947421564222).

5.5. Генерируют БС s в виде МДЧ, вычисляемого по формуле5.5. BS s are generated in the form of MDC calculated by the formula

s=s1-1(t-ke)mod q:s = s 1 -1 (t-ke) mod q:

s1-1=124122450; s=222387665.s 1 -1 = 124122450; s = 222387665.

6. Проверяют подлинность ЭЦП, для чего выполняют следующую последовательность действий.6. Verify the authenticity of the digital signature, for which they perform the following sequence of actions.

6.1. Формируют вектор БС R' по формуле

Figure 00000071
где F(S)=s1:6.1. Form the vector BS R 'by the formula
Figure 00000071
where F (S) = s 1 :

s·F(S)=26877867090397379188836395;sF (S) = 26877867090397379188836395;

Gs·F(S)=(117660193869193445, 78350012648906257);G s · F (S) = (117660193869193445, 78350012648906257);

Ye=(45991950818968478, 376342549870250020);Y e = (45991950818968478, 376342549870250020);

Sw=(441809832936651938, 4975252013635854).S w = (441809832936651938, 4975252013635854).

R'=(r'1, r'2)=(278285084410523629, 476437561152596152).R '= (r' 1 , r ' 2 ) = (278285084410523629, 476437561152596152).

6.2. Формируют первую проверочную БС А по формуле А=f(R',H1).6.2. The first test BS A is formed using the formula A = f (R ', H 1 ).

Поскольку получено R'=R, то А=f(R',H1)=f(R,H1)=е, т.е. имеем:Since R ′ = R is obtained, then A = f (R ′, H 1 ) = f (R, H 1 ) = e, i.e. we have:

А=874095303603.A = 874095303603.

6.3. Формируют вторую проверочную БС В по формуле В=е:6.3. Form the second test BS In the formula B = e:

В=874095303603.B = 874095303603.

6.4. Сравнивают проверочные БС А и В.6.4. Compare test BS A and B.

6.5. Сравнение показывает, что параметры проверочных БС А и В совпадают, на основании чего делают вывод о подлинности ЭЦП.6.5. The comparison shows that the parameters of the test BS A and B are the same, on the basis of which they conclude that the digital signature is authentic.

Пример 5.Example 5

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

Figure 00000072
выполняемой по таблице 6 умножения базисных векторов.The case of the use of three-component MDC vectors (illustration of claim 9 of the claims). In this example, we consider a group of three-dimensional BS vectors with a group operation
Figure 00000072
performed according to table 6 of the multiplication of basic vectors.

Figure 00000073
Figure 00000073

Данный пример показывает, что при соответствующем выборе размерности m, простого числа р и коэффициента растяжения ε значение порядка q может значительно превышать значение p. Выполняют следующую последовательность действий.This example shows that with an appropriate choice of dimension m, a prime number p and a tensile coefficient ε, a value of the order of q can significantly exceed the value of p. Perform the following sequence of actions.

1. Генерируют простое число p, такое что число p2+р+1 содержит большой простой множитель q: р=97; q=3169.1. A prime number p is generated such that the number p 2 + p + 1 contains a large prime factor q: p = 97; q = 3169.

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

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

3.1. Генерируют вектор БС G, имеющий порядок q=3169:3.1. Generate a BS vector G having order q = 3169:

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

3.2. Генерируют вектор БС Y=Gk: Y=87е+96i+86j.3.2. The BS vector Y = G k is generated: Y = 87е + 96i + 86j.

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

5. Формируют ЭЦП Q в виде двух БС е и s, для чего выполняют следующие действия:5. Form the digital signature Q in the form of two BS e and s, for which they perform the following steps:

5.1. Формируют первую БС е ЭЦП, для чего5.1. The first BS e digital signature is formed, for which

5.1.1. Генерируют случайное МДЧ t=53875.1.1. Generate random MDC t = 5387

5.1.2. Генерируют вектор МДЧ R по формуле R=Gt=96е+56i+81j.5.1.2. The MDC vector R is generated by the formula R = G t = 96e + 56i + 81j.

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=rH1 mod δ,5.1.3. Generate BS e in the form of MDC, calculated by the formula e = rH 1 mod δ,

где r=(r1||r2||r3) - МДЧ, равное конкатенации МДЧ, являющихся координатами вектора МДЧ R и δ=3169: e=3138.where r = (r 1 || r 2 || r 3 ) is the MDC equal to the concatenation of the MDC, which are the coordinates of the MDC vector R and δ = 3169: e = 3138.

5.2. Формируют вторую БС s ЭЦП в виде МДЧ, вычисляемого по формуле 5.2. Form the second BS s EDS in the form of MDC, calculated by the formula

s=t+ke mod q: s=1149.s = t + ke mod q: s = 1149.

6. Формируют первую проверочную БС А, для чего выполняются следующие действия:6. Form the first test BS A, for which the following actions are performed:

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

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

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

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

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

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

7. Формируют вторую проверочную БС В путем копирования МДЧ е:7. Form a second verification BS In by copying MDC e:

В=е=3138.B = e = 3138.

8. Сравнивают первую и вторую проверочные БС: А=В 8. Compare the first and second test BS: A = B

Совпадение проверочных БС подтверждает подлинность ЭЦП.The coincidence of the test BS confirms the authenticity of the digital signature.

Пример 6.Example 6

Данный пример относится к варианте реализации заявленного способа по п.10 формулы изобретения. В данном примере используется нециклическая группа Г, содержащая циклические подгруппы, порядок которых делится на w2. Формирование такой нециклической группы описано в примере 1 как случай 3.This example relates to an embodiment of the claimed method according to claim 10 of the claims. In this example, we use a non-cyclic group Γ containing cyclic subgroups whose order is divided by w 2 . The formation of such a non-cyclic group is described in example 1 as case 3.

Данный конкретный пример относится к использованию группы такого типа. Порядок группы Г выражается формулой Ω=w3(w-1), где w - простое число.This specific example relates to the use of a group of this type. The order of the group Γ is expressed by the formula Ω = w 3 (w − 1), where w is a prime.

В группе Г существуют элементы порядка ω=w2(w-1). Возьмем значение w=92618137318729677928546646365838873180498085133. Тогда имеем значение модуляThe group Γ contains elements of order ω = w 2 (w − 1). Take the value w = 92618137318729677928546646365838873180498085133. Then we have the value of the module

М=w2=8578119360391067054292626600438708965746964997146182659298964331315788956009108954679715627689M = w 2 = 8578119360391067054292626600438708965746964997146182659298964331315788956009108954679715627689

В качестве коэффициента ε возьмем значение 101w, т.е. ε=9354431869191697470783211282949726191230306598433.As the coefficient ε, we take the value 101w, i.e. ε = 9354431869191697470783211282949726191230306598433.

Выбор группы данного конкретного вида вносит определенную специфику в синтезируемый алгоритм ЭЦП. При генерации случайного секретного ключа К=(k1,k2) ∈ Г следует делать проверку: НОД(w, k1)=l и Kw(w-1)≠1,0). Первое условие обеспечивает выбор в качестве секретного ключа элемента, принадлежащего группе Г. Второе условие обеспечивает выбор в качестве секретного ключа элемента, порядок которого делится на квадрат степени корня, что является требованием безопасности ЭЦП. Аналогичную проверку следует выполнить и при генерации случайного вектора БС Т=(t1,t2) ∈ Г. Если указанное условие не выполняется (вероятность этого события мала) для случайно выбранных координат k1 и k2 (или для координат t1 и t2), то следует выбрать новые случайные значения координат k1≤М=w2 и k2≤М=w2 (или координат t1≤M=w2 и t2≤M=w2). В данном примере выполняют следующую последовательность действий.The choice of a group of this particular type introduces a certain specificity into the synthesized EDS algorithm. When generating a random secret key K = (k 1 , k 2 ) ∈ Г, a check should be done: GCD (w, k 1 ) = l and K w (w-1) ≠ 1.0). The first condition ensures that the element belonging to the group D is selected as the secret key. The second condition ensures that the element is selected as the secret key, the order of which is divided by the square of the root degree, which is a digital signature security requirement. A similar check should be performed when generating a random BS vector T = (t 1 , t 2 ) ∈ G. If this condition is not fulfilled (the probability of this event is small) for randomly selected coordinates k 1 and k 2 (or for coordinates t 1 and t 2 ), then one should choose new random values of the coordinates k 1 ≤M = w 2 and k 2 ≤M = w 2 (or coordinates t 1 ≤M = w 2 and t 2 ≤M = w 2 ). In this example, the following sequence of actions is performed.

1. Генерируют секретный ключ К в виде двухмерного вектора БС, представленного двумя МДЧ:1. Generate a secret key K in the form of a two-dimensional vector of the BS, represented by two MDC:

К=(162748957475865968, 9787164395071945749328495).K = (162748957475865968, 9787164395071945749328495).

2. Формируют открытый ключ Y в виде двухмерного вектора БС, путем выполнения операции возведения секретного ключа в степень w в соответствии с формулой Y=Кw=(y1,y2) - В результате генерируют следующие значения координат вектора БС Y:2. Form the public key Y in the form of a two-dimensional vector of the BS, by performing the operation of raising the secret key to the power w in accordance with the formula Y = K w = (y 1 , y 2 ) - As a result, the following coordinates of the vector of the BS Y are generated:

y1=21228784879778840523736855349044078599261832125691229247376837230 26454694663820975943984437961;y 1 = 21228784879778840523736855349044078599261832125691229247376837230 26454694663820975943984437961;

y2=90646893590375535174289454483400852640445760352160962710838716809 2764835.y 2 = 90646893590375535174289454483400852640445760352160962710838716809 2764835.

3. Принимают ЭД, представленный БС Н1.3. Accept the ED submitted by BS N 1 .

4. Формируют ЭЦП в виде трех БС, заданных тремя МДЧ е, s1 и s2, для чего выполняют следующую последовательность действий.4. The EDS is formed in the form of three BSs defined by three MDCs e, s 1 and s 2 , for which the following sequence of actions is performed.

4.1. Генерируют случайный двухмерный вектор БС, в котором пара БС интерпретируется как пара МДЧ:4.1. A random two-dimensional BS vector is generated in which a pair of BS is interpreted as a pair of MDC:

Т=(96846596736586738292216171, 37586931174658693746285927).T = (96846596736586738292216171, 37586931174658693746285927).

4.2. Генерируют вектор БС R путем выполнения операции возведения вектора БС Т в степень w в соответствии с формулой R=Тw (r1, r2). В результате генерируют следующие значения координат вектора БС R:4.2. The BS vector R is generated by performing the operation of raising the BS T vector to the power w in accordance with the formula R = T w (r 1 , r 2 ). As a result, the following coordinates of the BS vector R are generated:

r1=6676527716822018383957988126039278418617223915758582479614295011535668063135439573548109332464;r 1 = 6676527716822018383957988126039278418617223915758582479614295011535668063135439573548109332464;

r2=3481231552924180293255968160466563282460623255695990065475962954205823291.r 2 = 3481231552924180293255968160466563282460623255695990065475962954205823291.

4.3. Формируют первую БС ЭЦП в виде МДЧ е, вычисляемого по формуле e=f(R,H1), где f(R,H1) - выражение, специфицирующее процедуру вычисления числа е. Пусть получено значение, равное е=75867496586968496537352193793673918466970375638. 4.3. The first EDS BS is formed in the form of MDC e, calculated by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression specifying the procedure for calculating the number e. Let a value equal to e = 75867496586968496537352193793673918466970375638 be obtained.

4.4. Вычисляют двухмерный вектор БС S, координаты которого являются второй и третьей БС ЭЦП, по формуле

Figure 00000075
4.4. The two-dimensional BS vector S is calculated, the coordinates of which are the second and third EDS BS, according to the formula
Figure 00000075

s1=8256594105547617216423939012826302237218370734284428450969373421295221722475025012259161992826;s 1 = 8256594105547617216423939012826302237218370734284428450969373421295221722475025012259161992826;

s2=422260754784925502959681748215173239940083978470857855504330212012892903897205453209052939744.s 2 = 422260754784925502959681748215173239940083978470857855504330212012892903897205453209052939744.

5. Проверяют подлинность ЭЦП, для чего выполняют следующую последовательность действий:5. Check the authenticity of the digital signature, for which they perform the following sequence of actions:

5.1. Формируют вектор БС R' по формуле

Figure 00000076
5.1. Form the vector BS R 'by the formula
Figure 00000076

r'1=6676527716822018383957988126039278418617223915758582479614295011535668063135439573548109332464;r ' 1 = 6676527716822018383957988126039278418617223915758582479614295011535668063135439573548109332464;

r'2=3481231552924180293255968160466563282460623255695990065475962954205823291.r ' 2 = 3481231552924180293255968160466563282460623255695990065475962954205823291.

5.2. Формируют первую проверочную БС А по формуле А=f(R',Н).5.2. The first test BS A is formed using the formula A = f (R ', H).

Сравнение показывает, что R'=R, поэтому А=f(R', Н)=f(R', Н)=е, т.е. А=75867496586968496537352193793673918466970375638.The comparison shows that R '= R, therefore A = f (R', H) = f (R ', H) = e, i.e. A = 75867496586968496537352193793673918466970375638.

5.3. Формируют вторую проверочную БС В по формуле В=е:5.3. Form the second test BS In the formula B = e:

В=75867496586968496537352193793673918466970375638.B = 75867496586968496537352193793673918466970375638.

5.4. Сравнивают проверочные БС А и В.5.4. Compare test BS A and B.

5.5. Сравнение показывает, что параметры проверочных БС А и В совпадают, на основании чего делают вывод о подлинности ЭЦП.5.5. The comparison shows that the parameters of the test BS A and B are the same, on the basis of which they conclude that the digital signature is authentic.

Пример 7.Example 7

Данный пример относится к варианту реализации заявленного способа по п.11 формулы изобретения. В нем используется группа, элементами которой являются вектора БС размерности m, над которыми определена операция умножения таким образом, что порядок группы равен (р-1)m, а максимальный порядок элементов группы равен р-1, где р - характеристика конечного простого поля, над которым заданы вектора БС, причем БС интерпретируются как МДЧ, а операции над БС выполняются как операции над МДЧ. Условия построения групп данного типа описаны, например, для случая m=3, в работе [Молдовян Н.А. Группы векторов для алгоритмов электронной цифровой подписи // Вестник СПбГУ. Сер. 10. 2008]. Аналогичным способом могут быть заданы группы БС для размерностей m=4, 5, 6, …. В данном примере не приводятся конкретные значения получаемых значений БС, а описываются результаты процедур формирования и генерации БС и векторов БС в обобщенном виде для произвольного случая. Подставляя вместо буквенных обозначений конкретные численные значения, могут быть построены различные варианты численной иллюстрации п.11 формулы изобретения. В данном примере акцент делается на корректность процедуры проверки подлинности ЭЦП, которая доказывается для общего случая. Выполняется следующая последовательность действий.This example relates to an embodiment of the claimed method according to claim 11 of the claims. It uses a group whose elements are BS vectors of dimension m over which the multiplication operation is determined so that the order of the group is (p-1) m , and the maximum order of the elements of the group is p-1, where p is the characteristic of a finite simple field, over which BS vectors are given, and BS are interpreted as MDC, and operations on the BS are performed as operations on the MDC. The conditions for constructing groups of this type are described, for example, for the case m = 3, in [N. Moldovyan Groups of vectors for electronic digital signature algorithms // Bulletin of St. Petersburg State University. Ser. 10.2008]. In a similar way, BS groups can be defined for dimensions m = 4, 5, 6, .... In this example, specific values of the obtained BS values are not given, but the results of the procedures for the formation and generation of BS and BS vectors in a generalized form for an arbitrary case are described. Substituting specific numerical values instead of letter symbols, various variants of numerical illustration of claim 11 of the claims may be constructed. In this example, the emphasis is on the correctness of the EDS authentication procedure, which is proved for the general case. The following sequence of actions is performed.

1. Генерируют секретный ключ в виде МДЧ k1, k2,

Figure 00000077
…,km.1. Generate a secret key in the form of MDC k 1 , k 2 ,
Figure 00000077
..., k m .

2. Формируют открытый ключ Y в виде m-мерного, где m≥2, вектора БС, для чего выполняют следующие действия.2. The public key Y is formed in the form of an m-dimensional, where m≥2, BS vector, for which the following steps are performed.

2.1. Генерируют вектора БС G1, G2,…,Gm размерности m, имеющие порядок, равный простому МДЧ q.2.1. BS vectors G 1 , G 2 , ..., G m of dimension m are generated having an order equal to a simple MDC q.

2.2. Генерируют открытый ключ Y в виде вектора БС, вычисляемого по формуле

Figure 00000078
.2.2. Generate the public key Y in the form of a BS vector calculated by the formula
Figure 00000078
.

3. Принимают ЭД, представленный БС Н1, Н2,…, Hz, где z=m.3. Accept the ED represented by BS H 1 , H 2 , ..., H z , where z = m.

4. Формируют ЭЦП в виде совокупности БС е, s1, s2,…,sm, для чего выполняют следующие действия.4. Form the digital signature in the form of a set of BS e, s 1 , s 2 , ..., s m , for which the following steps are performed.

4.1. Генерируют случайные МДЧ t1,t2,…, tm.4.1. Random MDC t 1 , t 2 , ..., t m are generated.

4.2. Генерируют вектор БС R по формуле

Figure 00000079
.4.2. Generate vector BS R according to the formula
Figure 00000079
.

4.3. Формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и H по формуле e=f(R,H), где f(R,H) - выражение, задающее правило вычисления числа е, и Н=H1||Н2||…||Нz, где z=m.4.3. The first BS e EDS is formed in the form of MDC calculated depending on R and H according to the formula e = f (R, H), where f (R, H) is an expression defining the rule for calculating the number e, and H = H 1 || H 2 || ... || H z , where z = m.

4.4. Генерируют m БС s1, s2,…, sm ЭЦП в виде МДЧ, вычисляемых по формулам s1=(t1-k1e)H-11 mod q, s2=(t2-k2e)H-12 mod q…, sm=(tm-kme)H-1m mod q.4.4. Generate m BS s 1 , s 2 , ..., s m EDS in the form of MDC calculated by the formulas s 1 = (t 1 -k 1 e) H -1 1 mod q, s 2 = (t 2 -k 2 e) H -1 2 mod q ..., s m = (t m -k m e) H -1 m mod q.

5. Формируют первую проверочную БС А, для чего выполняют следующие действия.5. The first test BS A is formed, for which the following actions are performed.

5.1. Формируют вектор БС R', выполняя вычисления по формуле

Figure 00000018
.5.1. Form the vector BS R ', performing calculations by the formula
Figure 00000018
.

5.2. Формируют БС А по формуле А=f(R',Н), где f(R,H) - выражение, задающее правило вычисления числа е и Н=Н1||Н2||…||Нz, где z=m.5.2. BS A is formed according to the formula A = f (R ', H), where f (R, H) is an expression defining the rule for calculating the number e and H = H 1 || H 2 || ... || H z , where z = m.

6. Формируют вторую проверочную БС В путем копирования БС е, т.е. по формуле В=е.6. A second test BS B is formed by copying the BS e, i.e. by the formula B = e.

7. Сравнивают проверочные БС А и В.7. Compare test BS A and B.

Сравнение показывает, что параметры проверочных БС А и В совпадают, на основании чего делают вывод о подлинности ЭЦП. Тот факт, что при проверке ЭЦП, сформированной по процедуре формирования ЭЦП с использованием правильного секретного ключа, на шаге 7 будет получено совпадение параметров проверочных БС доказывается следующим образом. Подставим в формулу,The comparison shows that the parameters of the test BS A and B are the same, on the basis of which they conclude that the digital signature is authentic. The fact that when checking the digital signature generated by the procedure for generating the digital signature using the correct secret key, in step 7, the matching parameters of the test BS will be proved as follows. Substitute in the formula,

по которой формируется вектор БС R' (см. п.5.1), значения БС s1,s2,…,sm, полученные по формулам, приведенным в п.4.4. В результате получимby which the BS vector R 'is formed (see clause 5.1), the BS values s 1 , s 2 , ..., s m obtained by the formulas given in clause 4.4. As a result, we get

Figure 00000080
Figure 00000080

Таким образом, корректность процедуры проверки подлинности ЭЦП доказана.Thus, the correctness of the EDS authentication procedure is proved.

Последовательность действий по формированию и проверке подлинности ЭЦП, заверяющей ЭД, описанная в примере 7, может быть выполнена также и для случая, когда БС представляют собой многочлены. При этом таблицы умножения базисных векторов при заданном значении размерности m являются такими же, как приведенные выше, за исключением того, что коэффициент растяжения ε в случае реализации заявленного способа при использовании многочленов будет представлять собой некоторый заданный многочлен, определяющий конкретный вид операции умножения векторов многочленов. Доказательство корректности процедуры проверки ЭЦП в случае, когда вектора БС представляют собой вектора многочленов, является таким же, как и приведенное выше доказательство для случая использования векторов БС, являющихся векторами МДЧ. Частные примеры реализации заявленного способа, аналогичные описанным выше примерам 1-6, также могут быть реализованы для случая использования вычислений над векторами БС, являющимися векторами многочленов. Выполнение операций сложения, умножения и деления многочленов, а также операций умножения и сложения по модулю неприводимого многочлена широко описано в научно-технической литературе. Также широко представлена реализация конечных полей многочленов и основные их свойства (см. например книги [Курош А.Г. Курс высшей алгебры. - М.: Наука, 1971. - 431 с.], [Кострикин А.И. Введение в алгебру. Основы алгебры. М.: Физматлит.1994. - 320 с], [А.Акритас. Основы компьютерной алгебры с приложениями. М.: Мир, 1994. - 544 с.] и [Л.Б.Шнеперман. Курс алгебры и теории чисел в задачах и упражнениях.- Минск, «Вышэйшая школа», 1986.- 272 с.]). Варианты построения конечных множеств векторов многочленов рассмотрены в работе [Молдовян Н.А. Группы векторов для алгоритмов электронной цифровой подписи // Вестник СПбГУ. Сер. 10. 2008].The sequence of actions for forming and verifying the authenticity of the digital signature verifying the ED described in Example 7 can also be performed for the case when the BSs are polynomials. Moreover, the multiplication tables of basis vectors for a given value of dimension m are the same as above, except that the tensile coefficient ε in the case of the implementation of the inventive method using polynomials will be some predetermined polynomial that determines the specific form of the operation of multiplying the vectors of polynomials. The proof of the correctness of the EDS check procedure in the case when the BS vectors are polynomial vectors is the same as the above proof for the case of using BS vectors, which are MDC vectors. Particular examples of the implementation of the inventive method, similar to the examples described above 1-6, can also be implemented for the case of using computations over BS vectors, which are polynomial vectors. The operations of addition, multiplication and division of polynomials, as well as operations of multiplication and addition modulo an irreducible polynomial are widely described in the scientific and technical literature. The implementation of finite fields of polynomials and their main properties are also widely represented (see, for example, the books [Kurosh A.G. Course of Higher Algebra. - M .: Nauka, 1971. - 431 p.], [Kostrikin A. I. Introduction to Algebra. Fundamentals of Algebra. M.: Fizmatlit. 1994. - 320 p.], [A. Akritas. Fundamentals of computer algebra with applications. M.: Mir, 1994. - 544 p.] And [LB Schneperman. Algebra and Theory Course. numbers in tasks and exercises. - Minsk, "Higher School", 1986.- 272 p.]). Variants of constructing finite sets of polynomial vectors are considered in the work [N. Moldovyan Groups of vectors for electronic digital signature algorithms // Bulletin of St. Petersburg State University. Ser. 10.2008].

Для практики представляют интерес различные варианты значений размерности m векторов БС. Выбор соответствующей размерности m зависит от требований конкретных применений заявленного способа формирования и проверки ЭЦП. Например, при использовании 32-разрядных процессоров для выполнения вычислений интерес представляют простые значения размерности m=5, m=7, m=11 и m=13. При аппаратной реализации в виде специализированных вычислительных устройств высокая производительность процедур формирования проверки ЭЦП может быть достигнута при значениях размерности векторов БС m=8, m=9, m=16 и m=32. Наиболее высокая производительность при аппаратной реализации может быть достигнута при использовании заявленного способа для случая использования векторов двоичных многочленов в качестве векторов БС. Это объясняется тем, что операции сложения и умножения и двоичных многочленов в конечных полях двоичных многочленов являются наиболее эффективными с точки зрения получения высокого быстродействия и уменьшения сложности аппаратной реализации.For practice, various options of values of dimension m of the BS vectors are of interest. The choice of the appropriate dimension m depends on the requirements of specific applications of the claimed method of forming and checking the digital signature. For example, when using 32-bit processors to perform calculations, of interest are simple values of dimension m = 5, m = 7, m = 11, and m = 13. With the hardware implementation in the form of specialized computing devices, high performance of the procedures for generating the digital signature verification can be achieved with the dimensions of the BS vectors m = 8, m = 9, m = 16, and m = 32. The highest performance in hardware implementation can be achieved by using the claimed method for the case of using vectors of binary polynomials as vectors BS. This is because the operations of addition and multiplication and binary polynomials in the finite fields of binary polynomials are most effective in terms of obtaining high performance and reducing the complexity of hardware implementation.

Приведенные выше примеры показывают принципиальную реализуемость и корректность заявленного способа формирования и проверки подлинности ЭЦП, заверяющей ЭД. Аналогичным образом реализуется заявляемый способ при использовании векторов МДЧ размерности m=4, m=5, m=6 и т.д. Например, могут быть использованы следующие таблицы умножения базисных векторов, в которых значение коэффициента растяжения ε может быть выбрано в интервале 0≤ε<p, где число р выбирается таким образом, чтобы обеспечивалось значение порядка векторов МДЧ q, равное достаточно большому простому МДЧ, например, равное значению простого МДЧ разрядности 32, 40, 64, 80, 160 или 256 бит.Таблица умножения базисных векторов для задания групповой операции над четырехмерными векторами МДЧ (случай m=4) имеет вид таблицы 7.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 multiplication tables of basis vectors can be used, in which the value of the tensile coefficient ε can be selected in the interval 0≤ε <p, where the number p is chosen so that the order value of the MDC vectors q is equal to a sufficiently large simple MDC, for example equal to the value of a simple MDC of bits 32, 40, 64, 80, 160, or 256 bits. The table of multiplication of basis vectors for specifying a group operation on four-dimensional MDC vectors (case m = 4) has the form of table 7.

Figure 00000081
Figure 00000081

Таблица для задания групповой операции над шестимерными векторами МДЧ (случай m=6) имеет вид таблицы 8. Была разработаны программы для ЭВМ, реализующие операции умножения и возведения в большую целочисленную степень векторов МДЧ, имеющих значения размерности от m=2 до m=55 для каждого промежуточного целочисленного значения размерности. С помощью этих программ были сгенерированы приведенные выше примеры и установлено, что аналогичные примеры реализации заявленного способа с использованием векторов МДЧ размерности m=7, m=8, m=11, m=13, m=16, m=17 и др. также обеспечивают корректность процедуры проверки подлинности ЭЦП.The table for specifying the group operation on the six-dimensional MDC vectors (case m = 6) has the form of table 8. Computer programs have been developed that implement the operations of multiplying and raising to a large integer degree the MDC vectors having dimensions from m = 2 to m = 55 for each intermediate integer dimension value. 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 = 7, m = 8, m = 11, m = 13, m = 16, m = 17, etc. also ensure the correctness of the EDS authentication procedure.

Figure 00000082
Figure 00000082

Таблицы умножения базисных векторов, определяющие групповые операции над векторами произвольных размерностей m, строятся по следующему общему правилу. Первоначально строится исходная таблица, которая не включает коэффициентов растяжения, путем последовательной записи строк базисных векторов таким образом, что каждая следующая строка получается из предыдущей путем циклического сдвига на одну клетку. Получаемая при этом исходная таблица умножения базисных векторов имеет стандартный вид для произвольных значений размерности векторов, поэтому ее можно назвать типовой (см. распределение базисных векторов в таблице 9). Для типовой таблицы и произвольного значения m имеется два простых и общих варианта задания распределения коэффициента растяжения по клеткам таблицы умножения базисных векторов, при которых обеспечивается ассоциативность и коммутативность операции умножения векторов БС.Multiplication tables of basis vectors defining group operations on vectors of arbitrary dimensions m are constructed according to the following general rule. Initially, an initial table is constructed, which does not include stretching factors, by sequentially writing rows of basis vectors so that each next row is obtained from the previous one by cyclic shift by one cell. The initial table of multiplication of basis vectors obtained in this way has a standard form for arbitrary values of the dimension of vectors, therefore it can be called typical (see the distribution of basis vectors in table 9). For a typical table and an arbitrary value of m, there are two simple and general options for setting the distribution of the tensile coefficient over the cells of the base vector multiplication table, which ensures the associativity and commutativity of the operation of the BS vector vector multiplication.

Один из этих вариантов состоит в выделении квадрата, состоящего из всех клеток, не входящих в первый ряд или в первую строку, и внесении коэффициента растяжения ε в клетки этого квадрата, расположенные на диагонали, идущей из правого верхнего угла в левый нижний угол (каждая из этих клеток содержит базисный вектор е), а также во все клетки, расположенные выше этой диагонали. Второй из этих вариантов является симметричным первому относительно указанной диагонали (эта диагональ отмечена в таблице 9 серым фоном). Второй вариант распределения показан как распределение коэффициента µ, который вносится в каждую клетку диагонали, содержащей базисный вектор е и все клетки, расположенные ниже этой диагонали. Коэффициентам µ и ε может быть присвоено любое значение в интервале от 0 до р-1. При этом операция умножения векторов МДЧ будет обладать свойствами ассоциативности и коммутативности. Выбор конкретных значений коэффициентов растяжения определяет параметры групп векторов БС и должен осуществляться с привязкой к конкретным используемым значениям размерности m и числа р.One of these options is to select a square consisting of all cells not in the first row or in the first row, and to introduce the tensile coefficient ε into the cells of this square located on the diagonal from the upper right corner to the lower left corner (each of of these cells contains the base vector e), as well as in all cells located above this diagonal. The second of these options is symmetrical to the first relative to the indicated diagonal (this diagonal is marked in gray in Table 9). The second distribution option is shown as the distribution of the coefficient µ, which is introduced into each cell of the diagonal containing the base vector e and all the cells located below this diagonal. Coefficients µ and ε can be assigned any value in the range from 0 to p-1. In this case, the operation of multiplying MDC vectors will have the properties of associativity and commutativity. The choice of specific values of the tensile coefficients determines the parameters of the groups of BS vectors and should be carried out with reference to the specific values of dimension m and number p used.

Figure 00000083
Figure 00000083

При реализации заявленного способа с использованием операций над векторами многочленов различной размерности m таблицы умножения базисных векторов строятся по указанному выше общему правилу, за исключением того, что в случае векторов многочленов коэффициенты ε и µ представляют собой многочлены. При использовании групп векторов БС, имеющих сравнительно большую размерность высокая криптографическая стойкость ЭЦП обеспечивается при меньшей разрядности МДЧ, являющихся компонентами векторов МДЧ. Например, при m=16 и m=32 разрядность указанных МДЧ может составлять 64 и 32 бита, соответственно, что позволяет повысить быстродействие процедур формирования и проверки подписи при программной реализации для выполнения программ, реализующих заявляемый способ, на 64- и 32-разрядных микропроцессорах.When implementing the inventive method using operations on vectors of polynomials of different dimensions m, multiplication tables of basis vectors are constructed according to the above general rule, except that in the case of polynomial vectors, the coefficients ε and μ are polynomials. When using groups of BS vectors having a relatively large dimension, the 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 verifying an electronic 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. Битовая строка (БС) - двоичный цифровой электромагнитный сигнал, представляемый в виде конечной последовательности цифр «0» и «1».4. Bit string (BS) - a binary digital electromagnetic signal, presented in the form of a finite sequence of digits "0" and "1".

5. Электронная цифровая подпись (ЭЦП) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от подписанного электронного документа и от секретного ключа. Проверка подлинности ЭЦП осуществляют с помощью открытого ключа, который зависит от секретного ключа.5. 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.

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

7. Секретный ключ - двоичный цифровой электромагнитный сигнал, используемый для формирования подписи к заданному электронному документу. Секретный ключ представляется, например, в двоичном виде как последовательность цифр «0» и «1».7. 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".

8. Открытый ключ - битовая строка, параметры которой зависят от секретного ключа и которая предназначена для проверки подлинности цифровой электронной подписи.8. Public key - a bit string, the parameters of which depend on the secret key and which is intended for authentication of a digital electronic signature.

9. Хэш-функция от электронного документа - двоичный цифровой электромагнитный сигнал, параметры которого зависят от электронного документа и выбранного метода ее вычисления. В системах ЭЦП считается, что хэш-функция однозначно представляет ЭД, поскольку используемые хэш-функции удовлетворяют требованию коллизионной стойкости, которое означает вычислительную невозможность нахождения двух различных ЭД, которым соответствует одно и то же значение хэш-функции.9. The 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.

10. Многоразрядное двоичное число (МДЧ) - двоичный цифровой электромагнитный сигнал, интерпретируемый как двоичное число и представляемый в виде последовательности цифр «0» и «1».10. 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".

11. Операция возведения числа S в дискретную степень А по модулю n - это операция, выполняемая над конечным множеством натуральных чисел {0, 1, 2, …, n-1}, включающем n чисел, являющихся остатками от деления всевозможных целых чисел на число n; результат выполнения операций сложения, вычитания и умножения по модулю n представляет собой число из этого же множества [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.]; операция возведения числа S в дискретную степень Z по модулю n определяется как Z-кратное последовательное умножение по модулю n числа S на себя, т.е. в результате этой операции также получается число W, которое меньше или равно числу n-1; даже для очень больших чисел S, Z и n существуют эффективные алгоритмы выполнения операции возведения в дискретную степень по модулю.11. 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.

12. Показатель q по модулю n числа а, являющегося взаимно простым с n - это минимальное из чисел γ, для которых выполняется условие аγmodn=1, т.е. q=min{γ1, γ2, …} [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.].12. 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 γ modn = 1 holds, that is q = min {γ 1 , γ 2 , ...} [I. Vinogradov Fundamentals of number theory. - M .: Nauka, 1972. - 167 p.].

13. Операция деления целого числа А на целое число В по модулю n выполняется как операция умножения по модулю n числа А на целое число В-1, которое является обратным к В по модулю n.13. 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.

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

15. Многочлен - это последовательность коэффициентов, например многоразрядных двоичных чисел (МДЧ). Над многочленами определены операции сложения многочленов и умножения многочленов, которые сводятся к выполнению действий с коэффициентами многочленов, являющихся операндами. Многочлены и правила действия над ними подробно рассмотрены в книгах [Кострикин А.И. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М.: Наука, 1971. - 431 с.]. В вычислительных устройствах многочлены представляются в виде битовой строки, в которой каждый бит или каждая подстрока битов фиксированной длины интерпретируется как один из коэффициентов многочлена, над которыми определены операции сложения и умножения коэффициентов.15. A polynomial is a sequence of coefficients, such as multi-bit binary numbers (MDC). The operations of addition of polynomials and multiplication of polynomials are defined over polynomials, which are reduced to performing actions with coefficients of polynomials that are operands. Polynomials and the rules of action on them are discussed in detail in books [Kostrikin A.I. Introduction to Algebra. Fundamentals of Algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M .: Nauka, 1971. - 431 p.]. In computing devices, polynomials are represented as a bit string in which each bit or each substring of bits of a fixed length is interpreted as one of the coefficients of the polynomial over which the operations of addition and multiplication of coefficients are defined.

16. Алгебраическая структура - это множество математических элементов некоторой природы. В качестве математических элементов могут выступать, например, многочлены, МДЧ, пары МДЧ, пары многочленов, тройки МДЧ, тройки многочленов, матрицы МДЧ, матрицы многочленов и т.д., над которыми заданы математические действия (операции). Математически алгебраическая структура определяется путем задания конкретного множества математических элементов и одной или нескольких операций, выполняемых над элементами.16. An algebraic structure is a set of mathematical elements of some nature. As mathematical elements, for example, polynomials, MDCs, pairs of MDCs, pairs of polynomials, triples of MDCs, triples of polynomials, matrices of MDCs, matrices of polynomials, etc., over which mathematical actions (operations) are specified, can act. A mathematically algebraic structure is determined by specifying a specific set of mathematical elements and one or more operations performed on the elements.

17. Элемент алгебраической структуры - это одна битовая строка или набор из нескольких битовых строк, над которыми определена алгебраическая операция. При определении конкретного типа алгебраической структуры определяются операции над элементами алгебраической структуры, которые указывают однозначно правила интерпретации и преобразования битовых строк, представляющих эти элементы. Реализуемые в вычислительных устройствах преобразования битовых строк соответствуют операциям, выполняемым над элементами заданной алгебраической структуры.17. An element of an algebraic structure is a single bit string or a set of several bit strings over which an algebraic operation is defined. When determining a specific type of algebraic structure, operations are determined on elements of the algebraic structure, which uniquely indicate the rules for interpretation and transformation of bit strings representing these elements. The transformations of bit strings implemented in computing devices correspond to operations performed on elements of a given algebraic structure.

18. Группа - это алгебраическая структура (т.е. множество элементов различной природы), над элементами которой определена одна операция и которая при заданной операции обладает заданным набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является также элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в книгах [А.Г.Курош. Теория групп. - М.: Наука, 1967. - 648 с.] и [М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп. - М.: Наука. Физматлит, 1996. - 287 с.]. Операция, определенная над элементами группы, называется групповой операцией.18. A group is an algebraic structure (that is, many elements of different nature), on the elements of which one operation is defined and which, for a given operation, has 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 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 books [A.G. Kurosh. Group theory. - M .: Nauka, 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.

19. Кольцо - это алгебраическая структура (т.е. множество математических элементов природы), над элементами которой определены две операции, одна из которых называется сложением, а вторая - умножением. При этом при заданных операциях эта алгебраическая структура обладает заданным набором свойств: операции сложения и умножения ассоциативны и коммутативны, операция умножения является дистрибутивной относительно операции сложения, а результатом выполнения каждой из этих операций над двумя элементами является также элемент этой же структуры. Кроме того, для сложения существует нейтральный элемент, такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Нейтральный элемент относительно сложения называется нулевым элементом (или просто нулем). Детальное описание колец дано в книгах [Кострикин А.И. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М.: Наука, 1971. - 431 с.].19. A ring is an algebraic structure (that is, a set of mathematical elements of nature), on the elements of which two operations are defined, one of which is called addition, and the second - multiplication. Moreover, for given operations, this algebraic structure has a given set of properties: addition and multiplication operations are associative and commutative, the multiplication operation is distributive with respect to the addition operation, and the result of each of these operations on two elements is also an element of the same structure. In addition, for addition, there is a neutral element, such that when performing an operation on it and some other element a of the group, the result is element a. A neutral element with respect to addition is called a zero element (or simply zero). A detailed description of the rings is given in the books [Kostrikin A.I. Introduction to Algebra. Fundamentals of Algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M .: Nauka, 1971. - 431 p.].

20. Поле - это алгебраическая структура (т.е. множество математических элементов различной природы), над элементами которой определены две операции, одна из которых называется сложением, а вторая - умножением. При этом при заданных операциях эта алгебраическая структура обладает заданным набором свойств: операции сложения и умножения ассоциативны и коммутативны, операция умножения является дистрибутивной относительно операции сложения, а результатом выполнения каждой из этих операций над двумя элементами является также элемент этой же структуры. Причем для каждой из указанных двух операций существует нейтральный элемент, такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Нейтральный элемент относительно сложения называется нулевым элементом (или просто нулем), а нейтральный элемент относительно умножения называется единичным элементом (или просто единицей). Кроме того, каждому ненулевому элементу а может быть сопоставлен в соответствие единственный элемент а-1, называемый обратным элементом по отношению к данному элементу, такой, что произведение а-1а (а значит, и аа-1) равно единице. Детальное описание полей дано в книгах [А.И.Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М.: Наука, 1971. - 431 с.].20. A field is an algebraic structure (that is, a set of mathematical elements of various nature), on the elements of which two operations are defined, one of which is called addition, and the second - multiplication. Moreover, for given operations, this algebraic structure has a given set of properties: addition and multiplication operations are associative and commutative, the multiplication operation is distributive with respect to the addition operation, and the result of each of these operations on two elements is also an element of the same structure. Moreover, for each of these two operations there is a neutral element, such that when performing operations on it and some other element of the group a, the result is element a. The neutral element with respect to addition is called the zero element (or simply zero), and the neutral element with respect to multiplication is called the unit element (or simply unit). In addition, each non-zero element a can be associated with a single element a -1 , called the inverse element with respect to this element, such that the product a -1 a (and therefore aa -1 ) is equal to one. A detailed description of the fields is given in the books [A.I. Kostrikin. Introduction to Algebra. The basics of algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M .: Nauka, 1971. - 431 p.].

21. Циклическая группа - это группа, каждый элемент которой может быть представлен в виде

Figure 00000084
для некоторого натурального значения n, где а - элемент данной группы, называемый генератором или образующим элементом циклической группы. Степень n означает, что над элементом а выполняются n последовательных операций, т.е. выполняются вычисления по формуле
Figure 00000085
(n раз), где «°» обозначает операцию, определенную над элементами группы.21. A cyclic group is a group, each element of which can be represented as
Figure 00000084
for some natural value n, where a is an element of a given group, called a generator or a generating 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 00000085
(n times), where “°” denotes the operation defined on the elements of the group.

22. Циклическая подгруппа группы - это подгруппа, каждый элемент которой может быть представлен в виде

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

23. Вектор - это набор из двух или более элементов заданной алгебраической структуры, называемых компонентами вектора. Число элементов алгебраической структуры, над которым задан вектор, называется размерностью вектора.23. A vector is a collection of two or more elements of a given algebraic structure called components of a vector. The number of elements of an algebraic structure over which a vector is given is called the dimension of the vector.

24. Вектор битовых строк (вектор БС) - это набор из двух или более БС, каждая из которых представляет заданную алгебраическую структуру. Битовые строки называются координатами (или компонентами) вектора. Вектор БС записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции координат. Например, вектор БС можно записать в виде (а1, а2, …, аm), где m≥2 - это размерность вектора БС, означающая число координат (компонентов) в векторе БС. В качестве разделителя может быть использован знак операции, определенной над координатами (компонентами) вектора, и тогда координаты (компоненты) вектора идентифицируются указанием формальной переменной (в начале или в конце соответствующего компонента) в виде буквы латинского алфавита. Формальной называется переменная потому, что ей не приписывается никакого численного значения и она служит только для того, чтобы идентифицировать конкретную позицию координаты (компоненты) вектора БС, независимо от последовательности его записи. Так векторы БС Z1=ае+bi+cj и Z2=bi+ае+cj рассматриваются как равные, т.е. Z1=Z2. При использовании некоторых частных таблиц замены переменных формальные переменные в литературе иногда называются базисными векторами, а векторы Z1 и Z2 - векторами m-мерного пространства [Л.Б.Шнеперман. Курс алгебры и теории чисел в задачах и упражнениях.- Минск: Вышэйшая школа, 1986. - 272 с.].24. The bit string vector (BS vector) is a set of two or more BSs, each of which represents a given algebraic structure. Bit strings are called the coordinates (or components) of the vector. The BS vector is written in various ways, the requirement for which is that they identify the position of the coordinates. For example, the BS vector can be written in the form (a 1 , a 2 , ..., a m ), where m≥2 is the dimension of the BS vector, which means the number of coordinates (components) in the BS vector. As a separator, the sign of the operation defined over the coordinates (components) of the vector can be used, and then the coordinates (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 it is not assigned any numerical value and it serves only to identify a specific position of the coordinate (component) of the BS vector, regardless of the sequence of its recording. So BS vectors Z 1 = ae + bi + cj and Z 2 = bi + ae + cj 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 vectors Z 1 and Z 2 are called vectors of m-dimensional space [L.B.Shneperman. A course in algebra and number theory in problems and exercises. - Minsk: Higher School, 1986. - 272 p.].

25. Вектор многоразрядных двоичных чисел (векторы МДЧ) - это вектор БС, координатами которого являются МДЧ.25. The vector of multi-bit binary numbers (MDC vectors) is a BS vector whose coordinates are MDC.

26. Размерность вектора БС - это количество БС, входящих в вектор БС в качестве координат.26. The dimension of the BS vector is the number of BS included in the BS vector as coordinates.

27. Эллиптическая кривая (ЭК) - это совокупность пар МДЧ, которые удовлетворяют соотношению вида27. An elliptic curve (EC) is a collection of MDC pairs that satisfy a relation of the form

Figure 00000087
,
Figure 00000087
,

где коэффициенты а и b и модуль р определяют конкретный вариант ЭК. Над ЭК определены операция сложения пар МДЧ и операция умножения пары МДЧ на произвольное целое число. Указанные пары МДЧ записываются в виде (х, y), где х называется абсциссой точки, а y - ординатой. Операции, определенные над точками ЭК, выполняются как операции над координатами точек ЭК. В результате вычисляется пара МДЧ, которая является координатами новой точки, являющейся результатом операции. Точки ЭК называются равными, если равны их обе координаты х и y. Детальное описание ЭК можно найти в широко доступных книгах: [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М.: Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)].where the coefficients a and b and the module p determine a specific variant of EC. The operation of addition of MDC pairs and the operation of multiplying the MDC pair by an arbitrary integer are defined over EC. The indicated MDC pairs are written in the form (x, y), where x is called the abscissa of the point, and y is the ordinate. Operations defined on EC points are performed as operations on the coordinates of EC points. As a result, the MDC pair is calculated, which is the coordinates of the new point that is the result of the operation. EC points are called equal if both of their x and y coordinates are equal. A detailed description of EC can be found in widely available books: [B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M .: Hot line - Telecom, 2005 .-- 229 p. (see p. 97-130)].

28. Операция сложения двух точек А и В с координатами (xA,yA) и (xB,yB) соответственно выполняется по формулам:28. The operation of adding two points A and B with coordinates (x A , y A ) and (x B , y B ), respectively, is performed according to the formulas:

Figure 00000088
и
Figure 00000089
,
Figure 00000088
and
Figure 00000089
,

где

Figure 00000090
, если точки А и В не равны, и
Figure 00000091
Figure 00000092
, если точки А и В равны.Where
Figure 00000090
if points A and B are not equal, and
Figure 00000091
Figure 00000092
if points A and B are equal.

29. Операция умножения точки А на натуральное число n определяется как многократное сложение точки А:29. The operation of multiplying point A by a natural number n is defined as the multiple addition of point A:

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

Результатом умножения любой точки ЭК на нуль определяется точка, называемая бесконечно удаленной точкой и обозначаемой буквой О. Две точки А=(х, y) и -А=(х, -y) называются противоположными. Умножение на целое отрицательное число -n определяется следующим образом: (-n)А=n(-А). По определению принимают, что сумма двух противоположных точек равна бесконечно удаленной точке О [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М.: Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)].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 [B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M .: Hot line - Telecom, 2005 .-- 229 p. (see p. 97-130)].

30. Выполнение операций над точками ЭК осуществляется в вычислительных устройствах как действия над двоичными цифровыми электромагнитными сигналами, осуществляемыми по определенным правилам, определяемым через операции над МДЧ.30. Operations on EC points are performed in computing devices as actions on binary digital electromagnetic signals, carried out according to certain rules determined through operations on MDC.

31. Порядком точки А ЭК называется наименьшее натуральное число q, такое что qA=О, т.е. такое, что результатом умножения точки А на число q является бесконечно удаленная точка.31. The order of the point A EC is the smallest positive integer q such that qA = O, that is, such that the result of multiplying point A by q is an infinitely distant point.

Claims (8)

1. Способ формирования и проверки подлинности электронной цифровой подписи, заверяющей электронный документ, заключающийся в том, что генерируют секретный ключ в виде, по крайней мере, одной битовой строки, по секретному ключу формируют открытый ключ Y в виде более чем одной битовой строки, принимают электронный документ, представленный битовыми строками H1, H2, …, Hz, где z≥1, в зависимости от принятого электронного документа и от значения секретного ключа формируют электронную цифровую подпись Q в виде совокупности многоразрядных двоичных чисел е, s1, s2, …, su, где 1≤u≤8, в зависимости от открытого ключа, принятого электронного документа и электронной цифровой подписи формируют первую А и вторую В проверочные битовые строки, сравнивают их и при совпадении их параметров делают вывод о подлинности электронной цифровой подписи, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤64, вектора путем генерации m-мерных векторов G1, G2, …, Gu, координатами каждого из которых являются битовые строки разрядностью r, где 16≤r≤512, генерации секретного ключа в виде многоразрядных двоичных чисел k1, k2, …, ku и генерации открытого ключа Y по формуле
Figure 00000093
, где знак
Figure 00000094
обозначает операцию умножения векторов.
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 at least one bit string, using the secret key as the public key Y in the form of more than one bit string, accept an electronic document represented by the bit lines H 1 , H 2 , ..., H z , where z≥1, depending on the received electronic document and the value of the secret key, form an electronic digital signature Q in the form of a multidigit binary x numbers e, s 1 , s 2 , ..., s u , where 1≤u≤8, depending on the public key, received electronic document and digital signature, form the first A and second B check bit strings, compare them and if they match their parameters conclude the authenticity of the electronic digital signature, characterized in that the public key Y is formed in the form of an m-dimensional, where 2≤m≤64, vector by generating m-dimensional vectors G 1 , G 2 , ..., G u , coordinates each of which are bit strings with a bit capacity of r, where 16≤r≤512, generating a secret key in the form of many bit binary numbers k 1 , k 2 , ..., k u and public key generation Y according to the formula
Figure 00000093
where is the sign
Figure 00000094
denotes the operation of multiplying vectors.
2. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤64, вектора многоразрядных двоичных чисел путем генерации m-мерных векторов многоразрядных двоичных чисел G1, G2, …, Gu, координатами каждого из которых являются многоразрядные двоичные числа разрядностью r, где 1≤r≤512, генерации секретного ключа в виде многоразрядных двоичных чисел k1, k2, …, ku и генерации открытого ключа Y по формуле
Figure 00000095
где знак
Figure 00000094
обозначает операцию умножения векторов многоразрядных двоичных чисел.
2. The method according to claim 1, characterized in that the public key Y is formed in the form of m-dimensional, where 2≤m≤64, vector of multi-bit binary numbers by generating m-dimensional vectors of multi-bit binary numbers G 1 , G 2 , ..., G u , the coordinates of each of which are multi-bit binary numbers of bit capacity r, where 1≤r≤512, generating a secret key in the form of multi-bit binary numbers k 1 , k 2 , ..., k u and generating a public key Y by the formula
Figure 00000095
where is the sign
Figure 00000094
denotes the operation of multiplying the vectors of multi-bit binary numbers.
3. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤64, вектора многочленов путем генерации m-мерных векторов многочленов G1, G2, …, Gu, координатами каждого из которых являются многочлены разрядностью r, где 1≤r≤512, генерации секретного ключа в виде многоразрядных двоичных чисел k1, k2, …, ku и генерации открытого ключа Y по формуле
Figure 00000096
, где знак
Figure 00000094
обозначает операцию умножения векторов многочленов.
3. The method according to claim 1, characterized in that the public key Y is formed in the form of m-dimensional, where 2≤m≤64, vector polynomials by generating m-dimensional vectors of polynomials G 1 , G 2 , ..., G u , coordinates each of which are polynomials of bit capacity r, where 1≤r≤512, generating a secret key in the form of multi-bit binary numbers k 1 , k 2 , ..., k u and generating a public key Y according to the formula
Figure 00000096
where is the sign
Figure 00000094
denotes the operation of multiplying the vectors of polynomials.
4. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где m=2, вектора путем генерации m-мерных векторов G1 и G2, имеющих порядок, равный простому многоразрядному двоичному числу q, генерации секретного ключа в виде многоразрядных двоичных чисел k1 и k2 и генерации открытого ключа Y по формуле
Figure 00000097
, принимают электронный документ, представленный битовой строкой H1, а электронную цифровую подпись формируют в виде трех многоразрядных двоичных чисел е, s1 и s2, для чего генерируют случайные многоразрядные двоичные числа t1 и t2, генерируют вектор R по формуле
Figure 00000098
, затем в зависимости от R и H1 формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем в зависимости от секретного ключа генерируют пару многоразрядных двоичных чисел s1 и s2 электронной цифровой подписи по формулам s1=(t1-k1e)modq и s2=(t2-k2e)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам А=f(R',Н1) и B=е, где вектор R' вычисляют по формуле
Figure 00000099
.
4. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional, where m = 2, vector by generating m-dimensional vectors G 1 and G 2 having the order equal to a simple multi-bit binary number q, generating a secret key in the form of multi-bit binary numbers k 1 and k 2 and generating a public key Y according to the formula
Figure 00000097
receive an electronic document represented by a bit string H 1 , and an electronic digital signature is formed in the form of three multi-bit binary numbers e, s 1 and s 2 , for which random multi-bit binary numbers t 1 and t 2 are generated, a vector R is generated by the formula
Figure 00000098
then, depending on R and H 1 , the first multi-bit binary number e of the electronic digital signature is formed according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the multi-bit binary number e, then depending on the secret key, a pair of multi-bit binary numbers s 1 and s 2 of an electronic digital signature is generated according to the formulas s 1 = (t 1 -k 1 e) modq and s 2 = (t 2 -k 2 e) modq, after which the first and the second check bit strings A and B according to the formulas A = f (R ', H 1 ) and B = e, where the vector R' is calculated by the formula
Figure 00000099
.
5. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где m=3, вектора путем генерации m-мерных векторов G1, G2 и G3, имеющих порядок, равный простому многоразрядному двоичному числу q, генерации секретного ключа в виде многоразрядных двоичных чисел k1, k2 и k3 и генерации открытого ключа Y по формуле
Figure 00000100
принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде четырех битовых строк е, s1, s2, и s3, для чего генерируют случайные многоразрядные двоичные числа t1, t2 и t3, генерируют вектор R по формуле
Figure 00000101
затем в зависимости от R и H1 формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем в зависимости от секретного ключа генерируют тройку многоразрядных двоичных чисел s1, s2 и s3 электронной цифровой подписи по формулам s1=(t1-k1e)modq, s2=(t2-k2e)modq и s3=(t3-k3e)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам А=f(R',H1) и В=е, где вектор R' вычисляют по формуле
Figure 00000102
5. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional, where m = 3, vector by generating m-dimensional vectors G 1 , G 2 and G 3 having an order equal to a simple multi-bit binary the number q, generating a secret key in the form of multi-bit binary numbers k 1 , k 2 and k 3 and generating a public key Y by the formula
Figure 00000100
receive an electronic document represented by a bit string H 1 , and an electronic digital signature is formed in the form of four bit strings e, s 1 , s 2 , and s 3 , for which random multi-bit binary numbers t 1 , t 2 and t 3 are generated, a vector is generated R by the formula
Figure 00000101
then, depending on R and H 1 , the first multi-bit binary number e of the electronic digital signature is formed according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the multi-bit binary number e, then in depending on the secret key, a triple of multi-bit binary numbers s 1 , s 2 and s 3 of electronic digital signature are generated according to the formulas s 1 = (t 1 -k 1 e) modq, s 2 = (t 2 -k 2 e) modq and s 3 = (t 3 -k 3 e) modq, after which the first and second check bit strings A and B are formed using the formulas A = f (R ', H 1 ) and B = e, where the vector R' is calculated by the formula
Figure 00000102
6. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где m=5, вектора путем генерации m-мерных векторов G1 и G2, имеющих порядки, равные многоразрядным двоичным числам q1 и q2 соответственно, генерации секретного ключа в виде многоразрядных двоичных чисел k1 и k2 и генерации открытого ключа Y по формуле
Figure 00000103
принимают электронный документ, представленный битовой строкой H1, а электронную цифровую подпись формируют в виде трех многоразрядных двоичных чисел е, s1 и s2, для чего генерируют случайные многоразрядные двоичные числа t1 и t2, генерируют вектор R по формуле
Figure 00000104
затем в зависимости от R и Н1 формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления числа е, затем в зависимости от секретного ключа генерируют пару многоразрядных двоичных чисел s1 и s2 электронной цифровой подписи по формулам s1=(t1-k1e)modq1 и s2=(t2-k2e)modq2, после чего формируют первую и вторую проверочные битовые строки А и В по формулам А=f(R',H1) и В=е, где вектор R' вычисляют по формуле
Figure 00000105
6. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional, where m = 5, vector by generating m-dimensional vectors G 1 and G 2 having orders equal to multi-bit binary numbers q 1 and q 2, respectively, generating a secret key in the form of multi-bit binary numbers k 1 and k 2 and generating a public key Y according to the formula
Figure 00000103
receive an electronic document represented by a bit string H 1 , and an electronic digital signature is formed in the form of three multi-bit binary numbers e, s 1 and s 2 , for which random multi-bit binary numbers t 1 and t 2 are generated, a vector R is generated by the formula
Figure 00000104
then, depending on R and H 1 , the first multi-bit binary number e of the electronic digital signature is formed according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the number e, then depending on the secret key generate a pair of multi-bit binary numbers s 1 and s 2 electronic digital signature according to the formulas s 1 = (t 1 -k 1 e) modq 1 and s 2 = (t 2 -k 2 e) modq 2 , and then form the first and the second check bit strings A and B according to the formulas A = f (R ', H 1 ) and B = e, where the vector R' is calculated by the formula
Figure 00000105
7. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где m=3, вектора путем генерации m-мерного вектора G1, имеющего порядок, равный многоразрядному двоичному числу q, генерации секретного ключа в виде многоразрядного двоичного числа k1 и генерации открытого ключа Y по формуле
Figure 00000106
, принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде двух многоразрядных двоичных чисел е и s1, для чего генерируют случайное многоразрядное двоичное число t, генерируют вектор R по формуле R=G', затем в зависимости от R и Н1 формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления числа е, затем в зависимости от секретного ключа генерируют второе многоразрядное двоичное число s1 электронной цифровой подписи по формуле s1=(t+k1e)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам А=f(R',H1) и В=е, где вектор R' вычисляют по формуле
Figure 00000107
.
7. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional, where m = 3, vector by generating an m-dimensional vector G 1 having an order equal to a multi-bit binary number q, generating a secret key in in the form of a multi-bit binary number k 1 and public key generation Y according to the formula
Figure 00000106
receive an electronic document represented by a bit string H 1 , and an electronic digital signature is formed in the form of two multi-bit binary numbers e and s 1 , for which a random multi-bit binary number t is generated, a vector R is generated by the formula R = G ', then depending on R and H 1 form the first multi-bit binary number e of an electronic digital signature according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining a rule for calculating the number e, then, depending on the secret key, a second a digit binary number s 1 e th digital signature according to the formula s 1 = (t + k 1 e) modq, and then forming the first and second parity bit strings A and B according to the formulas A = f (R ', H 1) and B = e, where the vector R' calculated by the formula
Figure 00000107
.
8. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного, где 2≤m≤8, вектора путем генерации m-мерных векторов G1, G2, …, Gm, имеющих порядок, равный простому многоразрядному двоичному числу q, генерации секретного ключа в виде многоразрядных двоичных чисел k1, k2, …, km и генерации открытого ключа Y по формуле
Figure 00000108
принимают электронный документ, представленный битовыми строками H1, Н2, …, Hm, а электронную цифровую подпись формируют в виде совокупности многоразрядных двоичных чисел е, s1, s2, …, sm, для чего генерируют случайные многоразрядные двоичные числа t1, t2, …, tm, генерируют вектор R по формуле
Figure 00000109
, затем в зависимости от R формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле e=f(R,H), где f(R,H) - выражение, задающее правило вычисления числа е, и H=H1||H2||…||Hm, где знак || обозначает операцию конкатенации, затем в зависимости от секретного ключа генерируют m многоразрядных двоичных чисел s1, s2, …, sm электронной цифровой подписи по формулам
Figure 00000110
,
Figure 00000111
, …,
Figure 00000112
, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H) и В=е, где вектор R' вычисляют по формуле
Figure 00000113
8. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional, where 2≤m≤8, a vector by generating m-dimensional vectors G 1 , G 2 , ..., G m having order, equal to a simple multi-bit binary number q, generating a secret key in the form of multi-bit binary numbers k 1 , k 2 , ..., k m and generating a public key Y by the formula
Figure 00000108
receive an electronic document represented by the bit strings H 1 , H 2 , ..., H m , and the electronic digital signature is formed as a combination of multi-bit binary numbers e, s 1 , s 2 , ..., s m , for which random multi-bit binary numbers t are generated 1 , t 2 , ..., t m , generate a vector R according to the formula
Figure 00000109
, then, depending on R, the first multi-bit binary number e of the electronic digital signature is formed by the formula e = f (R, H), where f (R, H) is an expression defining the rule for calculating the number e, and H = H 1 || H 2 || ... || H m , where the sign || denotes a concatenation operation, then, depending on the secret key, m multi-bit binary numbers s 1 , s 2 , ..., s m of an electronic digital signature are generated according to the formulas
Figure 00000110
,
Figure 00000111
, ...,
Figure 00000112
and then the first and second test bit strings A and B are formed using the formulas A = f (R ', H) and B = e, where the vector R' is calculated by the formula
Figure 00000113
RU2008130759/09A 2008-07-24 2008-07-24 Method for generating and verification electronic digital signature authenticating electronic document RU2401513C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2008130759/09A RU2401513C2 (en) 2008-07-24 2008-07-24 Method for generating and verification electronic digital signature authenticating electronic document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2008130759/09A RU2401513C2 (en) 2008-07-24 2008-07-24 Method for generating and verification electronic digital signature authenticating electronic document

Publications (2)

Publication Number Publication Date
RU2008130759A RU2008130759A (en) 2010-01-27
RU2401513C2 true RU2401513C2 (en) 2010-10-10

Family

ID=42121812

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008130759/09A RU2401513C2 (en) 2008-07-24 2008-07-24 Method for generating and verification electronic digital signature authenticating electronic document

Country Status (1)

Country Link
RU (1) RU2401513C2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2457625C1 (en) * 2010-11-30 2012-07-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" (ФГБОУ ВПО "СПбГПУ") Elliptic curve-based electronic digital signature method
RU2632119C1 (en) * 2016-06-02 2017-10-02 Андрей Валерьевич Менячихин Orthomorphism constructor using paired differences

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2457625C1 (en) * 2010-11-30 2012-07-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" (ФГБОУ ВПО "СПбГПУ") Elliptic curve-based electronic digital signature method
RU2632119C1 (en) * 2016-06-02 2017-10-02 Андрей Валерьевич Менячихин Orthomorphism constructor using paired differences
RU2632119C9 (en) * 2016-06-02 2017-11-22 Андрей Валерьевич Менячихин Orthomorphism constructor using paired differences

Also Published As

Publication number Publication date
RU2008130759A (en) 2010-01-27

Similar Documents

Publication Publication Date Title
JP5488718B2 (en) Cryptographic processing apparatus, cryptographic processing method, and program
US8862651B2 (en) Method and apparatus for modulus reduction
US8750500B2 (en) Multi-dimensional montgomery ladders for elliptic curves
Gorbenko et al. Examination and implementation of the fast method for computing the order of elliptic curve
CN101911009B (en) Countermeasure method and devices for asymmetrical cryptography with signature diagram
CN112887096B (en) Prime order elliptic curve generation method and system for signature and key exchange
CN112737778B (en) Digital signature generation and verification method and device, electronic equipment and storage medium
CN103929305A (en) SM2 signature algorithm implementation method
RU2401513C2 (en) Method for generating and verification electronic digital signature authenticating electronic document
CN111740821A (en) Method and device for establishing shared secret key
RU2392736C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2380838C1 (en) Method for creation and authentication of electronic digital signature confirming electronic document
EP3226120B1 (en) Non-modular multiplier, method for non-modular multiplication and computational device
US20230077946A1 (en) Methods and ip cores for reducing vulnerability to hardware attacks and/or improving processor performance
RU2380830C1 (en) Method for creation and authentication of electronic digital signature confirming electronic document
RU2369974C1 (en) Method for generation and authentication of electronic digital signature that certifies electronic document
RU2382505C1 (en) Method of generating and authenticating electronic digital signature certifying electronic document
Jensen Integer factorization
Realpe-Muñoz et al. High-performance elliptic curve cryptoprocessors over GF (2^ m) GF (2 m) on Koblitz curves
Wu et al. An efficient montgomery exponentiation algorithm for cryptographic applications
RU2369973C1 (en) Method for generation and authentication of electronic digital signature that certifies electronic document
Knezevic et al. Modular reduction without precomputational phase
RU2356172C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2450438C1 (en) Method of creating and authenticating collective electronic digital signature certifying electronic document
Eghdamian et al. A modified left-to-right radix-r representation

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20100907