RU2382505C1 - Method of generating and authenticating electronic digital signature certifying electronic document - Google Patents

Method of generating and authenticating electronic digital signature certifying electronic document Download PDF

Info

Publication number
RU2382505C1
RU2382505C1 RU2008130758/09A RU2008130758A RU2382505C1 RU 2382505 C1 RU2382505 C1 RU 2382505C1 RU 2008130758/09 A RU2008130758/09 A RU 2008130758/09A RU 2008130758 A RU2008130758 A RU 2008130758A RU 2382505 C1 RU2382505 C1 RU 2382505C1
Authority
RU
Russia
Prior art keywords
bit
generated
vectors
formula
digital signature
Prior art date
Application number
RU2008130758/09A
Other languages
Russian (ru)
Inventor
Александр Андреевич МОЛДОВЯН (RU)
Александр Андреевич Молдовян
Дмитрий Николаевич Молдовян (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 RU2008130758/09A priority Critical patent/RU2382505C1/en
Application granted granted Critical
Publication of RU2382505C1 publication Critical patent/RU2382505C1/en

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

FIELD: physics; communication.
SUBSTANCE: invention relates to electrical communication and specifically to cryptographic devices and methods of verifying an electronic digital signature (EDS). The method of generating and verifying an electronic digital signature involves generation of a private key in form of multibit binary numbers k1, k2, …, ku, where u≥1, generation of a public key Y based on the private key, where the public key is in form of an m-dimensional bit string vector, where m≥2, for which m-dimensional bit string vectors Gb G2, …, Gu are generated, after which the public key Y is generated using formula Y=G1kl°G2k2°…°Guku, where the symbol ° represents multiplication of bit string vectors, an electronic document is received and depending on the received electronic document and the value of the private key, an electronic digital signature is generated in form of at least two bit string vectors, depending on the electronic digital signature, the electronic document, the said vectors and the public key first A and second B check bit string vectors are generated and compared. If their parametres coincide, the electronic digital signature is authentic.
EFFECT: increased efficiency of electronic digital signature algorithms without lowering stability level of the signature.
8 cl, 9 tbl, 5 ex

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов аутентификации электронных сообщений, передаваемых по телекоммуникационным сетям и сетям ЭВМ и может быть использовано в системах передачи электронных сообщений (документов), заверенных электронной цифровой подписью (ЭЦП), представленной в виде битовой строки (БС) или нескольких БС. Здесь и далее под БС понимается электромагнитный сигнал в двоичной цифровой форме, параметрами которого являются число битов и порядок следования их единичных и нулевых значений1) (1) толкование используемых в описании терминов приведено в Приложении 1).The invention relates to the field of telecommunications and computer technology, and more particularly to the field of cryptographic authentication methods for electronic messages transmitted over telecommunication networks and computer networks and can be used in electronic message systems (documents) certified by electronic digital signature (EDS), presented in the form bit string (BS) or multiple BS. 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 1) ( 1) the interpretation of the terms used in the description is given in Appendix 1).

Известен способ формирования и проверки ЭЦП, предложенный в патенте США №4405829 от 20.09.1983 и детально описанный также и в книгах [1. М.А.Иванов. Криптография. М., КУДИЦ-ОБРАЗ, 2001; 2. А.Г.Ростовцев, Е.Б.Маховенко. Введение в криптографию с открытым ключом. С-Петербург, Мир и семья, 2001. - с.43]. Известный способ заключается в следующей последовательности действий:A known method of 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, e) в виде пары МДЧ n и e, где n - число, представляющее собой произведение двух простых МДЧ p и q, и е - МДЧ, удовлетворяющее условию ed=1 mod (р-1)(q-1),form the public key (n, e) in the form of a pair of MDC n and e, where n is a number that is the product of two simple MDC p and q, and e is a MDC satisfying the condition ed = 1 mod (p-1) (q- one),

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

в зависимости от значения Н, под которым понимается значение МДЧ, представленное БС Н, и значения секретного ключа формируют ЭЦП в виде MДЧ 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 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 AA, Moldovyan NA., Sovetov B.Ya. Cryptography. - St. Petersburg, Doe, 2000. - p.156-159], which includes the following actions:

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

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

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

Недостатком данного способа также является относительно большой размер ЭЦП. Это объясняется тем, что значения элементов подписи S и R вычисляют путем выполнения арифметических операций по модулю р-1 и по модулю 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=atmod p, формируют МДЧ е=f(М||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' по формуле R'=аsу mod p и формируют МДЧ е'=f(М||R');form the first verification MDC A, for which MDC R ′ is generated according to the formula R ′ = a s y- th mod p and form the MDC e ′ = f (M || R ′);

формируют второе проверочное МДЧ В путем копирования МДЧ е: B=е;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)], согласно которому ЭЦП формируется в виде пары МДЧ г и s, для чего генерируют эллиптическую кривую (ЭК) в виде совокупности точек, причем каждая точка представляется двумя координатами в декартовой системе координат в виде двух МДЧ, называемых абсциссой (x) и ординатой (у), затем осуществляют операции генерации точек ЭК, сложения точек ЭК и умножения точки ЭК на число, а также арифметические операции над МДЧ, после чего в результате выполненных операций формируются МДЧ r и s. Указанные операции над точками выполняются как операции над МДЧ, являющимися координатами точек, по известным формулам [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111)]. Операция сложения двух точек А и В с координатами (хA, yA) и (хB, yB), соответственно, выполняется по формулам: хC=k2-xA-xB mod p и yC=k(xAC)-уA mod p, где

Figure 00000001
, если точки А и В не равны, и
Figure 00000002
, если точки А и В равны. При вычислении значения k выполняется операция деления МДЧ по модулю простого МДЧ, что ограничивает производительность формирования и проверки подлинности ЭЦП по стандарту ГОСТ Р 34.10-2001. Операция умножения точки А на натуральное число n определяется как многократное сложение токи А: nА=А+А+…+А (n раз). Результатом умножения любой точки ЭК на нуль определяется точка, называемая бесконечно удаленной точкой и обозначаемой буквой О. Две точки А=(х, у) и -А=(х, -у) называются противоположными. Умножение на целое отрицательное число -n определяется следующим образом: (-n)А=n(-А). По определению принимают, что сумма двух противоположных точек равна бесконечно удаленной точке О.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 g 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., Hot line - Telecom, 2005 .-- 229 p. (see p. 110-111)]. The operation of addition of two points A and B with the coordinates (x A, y A) and (x B, y B), respectively, is performed by the formulas: x C = k 2 -x A -x B mod p and y C = k ( x A- x C ) -y A mod p, where
Figure 00000001
if points A and B are not equal, and
Figure 00000002
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 multiple additions of currents A: nA = A + A + ... + A (n times). 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, генерируют ЭК, описываемую уравнением y=x+ax+b mod p, поэтому генерация ЭК состоит в генерации чисел а, b и p, являющихся параметрами ЭК и однозначно задающих множество точек ЭК, абсцисса и ордината каждой из которых удовлетворяет указанному уравнению. Ближайший аналог (прототип) заключается в выполнении следующей последовательности действий:In the prototype, i.e. in the method of generating and verifying the authenticity of digital signatures according to GOST R 34.10-2001, they generate an EC described by the equation y = x + 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 specify the set points of 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 MDCs, which are the coordinates of the EC point P, for which a point G is generated 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 endless remote 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 p. (see p. 97-130)]; (see also Appendix 1, paragraphs 27-31) and the gene generating the public key by multiplying the point G by the MDC k, i.e., generating the public key by 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, где хR - абсцисса точки R, а затем генерируют МДЧ s по формуле s=(tH+rk) mod q;form an EDS Q in the form of a pair of MDCs (r, s), for which they generate MDC r according to the formula r = x R mod q, where x R is the abscissa of the point R, and then generate MDC s according to 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.

Поставленная цель достигается тем, что в известном способе формирования и проверки подлинности ЭЦП, заверяющей ЭД, заключающемся в том, что генерируют секретный ключ в виде, по крайней мере, одной БС k, по секретному ключу формируют открытый ключ Y в виде более чем одной БС, принимают ЭД, представленный БС Н1, Н2, …, Hz, где z≥1, в зависимости от принятого ЭД и от значения секретного ключа формируют ЭЦП Q в виде двух или более БС, в зависимости от открытого ключа, принятого ЭД и ЭЦП формируют первое А и второе В проверочные БС, сравнивают их и при совпадении их параметров делают вывод о подлинности ЭЦП, новым в заявленном изобретении является то, что генерируют секретный ключ в виде МДЧ k1, k2, …, ku, где u≥1, и открытый ключ Y формируют в виде m-мерного, где m≥2, вектора БС, для чего генерируют m-мерные вектора БС G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов БС.This goal is achieved by the fact that in the known method of forming 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 BS k, using the secret key, form the public key Y 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, create an EDS Q in the form of two or more BS, depending on the public key received by the ED and EDS form the first A and second B test BS, compare them with confluence their parameters conclude authentication signature, new in the claimed invention is that the secret key is generated as MDCH k 1, k 2, ..., k u, where u≥1, and a public key Y is formed as a m-dimensional, where m≥2, BS vectors, for which m-dimensional BS vectors G 1 , G 2 , ..., G u are generated, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G u ku where the sign ° denotes the operation of multiplying the BS vectors.

Осуществление операций умножения векторов БС не требует выполнения операции деления по модулю, благодаря чему повышается производительность формирования и проверки подлинности ЭЦП, заверяющей ЭД. Кроме того, поскольку координаты вектора БС, являющегося результатом выполнения операции умножения векторов БС, являющихся операндами, вычисляются по координатам векторов-операндов независимо друг от друга, то имеется возможность распараллелить операцию умножения векторов БС на m независимых процессов и выполнять их параллельно, благодаря чему применение вычислений над векторами позволяет существенно повысить скорость процедур формирования и проверки подлинности ЭЦП.The implementation of the operations of the multiplication of the vectors of the BS does not require the operation of the division modulo, thereby increasing the productivity of the formation and authentication of digital signatures, certifying ED. In addition, since the coordinates of the BS vector that is the result of the operation of multiplying the BS vectors that 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 execute them in parallel, due to which computations over vectors can significantly increase the speed of formation and authentication of digital signatures.

В заявленном способе формирования и проверки подлинности ЭЦП в качестве векторов БС могут быть применены вектора МДЧ и вектора многочленов. Использование в качестве векторов БС векторов МДЧ позволяет эффективно реализовать заявленный способ в специализированных вычислительных устройствах. Выполнение операции умножения векторов МДЧ включает выполнение над МДЧ, являющимися координатами векторов МДЧ, операций сложения и умножения по модулю простого МДЧ, а операции деления по модулю простого МДЧ не выполняются. Выполнение операции умножения векторов многочленов включает выполнение над многочленами, являющимися координатами векторов многочленов, операций сложения и умножения по модулю неприводимого многочлена, а операции деления по модулю неприводимого многочлена не выполняются. Таким образом, в обоих формах представления векторов БС при осуществлении операции умножения векторов БС не требуется выполнять операцию деления по модулю, благодаря чему обеспечивается повышение производительности процедур формирования и проверки подлинности ЭЦП как при программной, так и при аппаратной реализации заявленного способа.In the claimed method for generating and verifying the authenticity of electronic digital signatures as the BS vectors, MDC vectors and polynomial vectors can be applied. The use of MDC vectors as BS vectors can effectively implement the claimed method in specialized computing devices. The operation of multiplying the MDC vectors includes performing on the MDC, which are the coordinates of the vectors of the MDC, the operations of addition and multiplication modulo a simple MDC, and the division operations modulo a simple MDC are not performed. The operation of multiplying the polynomial vectors includes polynomials carrying out the coordinates of the vectors of the polynomials, addition and multiplication modulo an irreducible polynomial, and division operations modulo an irreducible polynomial are not performed. Thus, in both forms of representation of BS vectors, when performing the operation of multiplying BS vectors, it is not necessary to perform the modulo division operation, 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-мерного вектора МДЧ, для чего генерируют w-мерные вектора МДЧ G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов МДЧ.It is also new that the public key Y is formed in the form of an m-dimensional MDC vector, for which w-dimensional MDC vectors G 1 , G 2 , ..., G u are generated, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G u ku , where the sign ° denotes the operation of multiplying MDC vectors.

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

Новым является также и то, что открытый ключ Y формируют в виде m-мерного вектора многочленов, для чего генерируют m-мерные вектора многочленов G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов многочленов.It is also new that the public key Y is formed in the form of an m-dimensional vector of polynomials, for which m-dimensional vectors of polynomials G 1 , G 2 , ..., G u are generated, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G u ku , where the sign ° denotes the operation of multiplying the vectors of polynomials.

Применение в качестве векторов БС векторов многочленов позволяет эффективно реализовать заявленный способ формирования и проверки ЭЦП в специализированных электронных устройствах. При этом наиболее высокая производительность при низкой сложности аппаратной реализации достигается применением в заявленном способе векторов двоичных многочленов.The use of polynomial vectors as BS vectors makes it possible to efficiently implement the claimed method for generating and checking digital signature in specialized electronic devices. Moreover, the highest performance with low complexity of hardware implementation is achieved by using binary polynomial vectors in the claimed method.

Новым является также то, что генерируют секретный ключ в виде МДЧ k1, k2, …, ku, где u=m, и открытый ключ Y формируют в виде m-мерного вектора БС, для чего генерируют m-мерные вектора МДЧ G1, G2, …, Gm, имеющие порядок, равный простому МДЧ q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Gmkm, принимают электронный документ, представленный БС Н1, Н2, …, Нm, а ЭЦП формируют в виде совокупности БС е, s1, s2, …, sm, для чего генерируют случайные МДЧ t1, t2, …, tm, генерируют вектор БС R по формуле R=G1t1°G2t2°…°Gmtm, затем формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R по формуле e=f(R,H), где f(R,H) - выражение, задающее правило вычисления МДЧ е, и H=H1||H2||…|Hm, затем генерируют m БС s1, s2, …, sm ЭЦП в виде МДЧ, вычисляемых по формулам

Figure 00000003
,
Figure 00000004
, …,
Figure 00000005
, после чего формируют первую и вторую проверочные БС А и В по формулам А=f(R', Н) и B=е, где вектор БС R вычисляют по формуле R'=Ye°G1H1s1°G2H2s2°…°GmHmsm.Also new is the fact that a secret key is generated in the form of MDC k 1 , k 2 , ..., k u , where u = m, and the public key Y is formed as an m-dimensional BS vector, for which m-dimensional MDC vectors G 1 , G 2 , ..., G m , having an order equal to the simple MDC q, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G m km , an electronic document submitted by BS N 1 is received , H 2 , ..., H m , and the EDS is formed as a set of BS e, s 1 , s 2 , ..., s m , for which random MDC t 1 , t 2 , ..., t m are generated, the BS vector R is generated by the formula R = G 1 t1 ° G 2 t2 ° ... ° G m tm , then form the first BS e EC P in the form of MDC calculated depending on R according to the formula e = f (R, H), where f (R, H) is an expression defining the rule for calculating MDC e, and H = H 1 || H 2 || ... | H m , then generate m BS s 1 , s 2 , ..., s m EDS in the form of MDC calculated by the formulas
Figure 00000003
,
Figure 00000004
, ...,
Figure 00000005
then the first and second test BS A and B are formed using the formulas A = f (R ', H) and B = e, where the BS vector R is calculated by the formula R' = Y e ° G 1 H1s1 ° G 2 H2s2 ° ... ° G m Hmsm .

Использование секретного ключа в виде набора из нескольких МДЧ позволяет обеспечить высокую стойкость ЭЦП при использовании векторов БС, порядок которых равен простому числу сравнительно малого размера, что упрощает выбор параметров для реализации заявленного способа формирования и проверки ЭЦП, заверяющей ЭД.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.

Новым является также и то, что генерируют секретный ключ в виде МДЧ k и открытый ключ Y формируют в виде трехмерного вектора БС, для чего генерируют трехмерный вектор БС G, имеющий порядок, равный МДЧ q, после чего открытый ключ Y генерируют по формуле Y=Gk, принимают ЭД, представленный БС H1, а ЭЦП формируют в виде двух БС е и s, для чего генерируют случайное МДЧ t, генерируют вектор БС R по формуле R=Gt, затем формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и Н1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления МДЧ е, затем генерируют вторую БС s ЭЦП в виде МДЧ, вычисляемого по формуле s=(t+ke)mod q, после чего формируют первую и вторую проверочные БС А и В по формулам А=f(R',H1) и B=е, где вектор БС R' вычисляют по формуле R'=Yq-e°Gs.It is also new that a secret key is generated in the form of MDC k and the public key Y is formed as a three-dimensional BS vector, for which a three-dimensional BS vector G is generated, having an order equal to MDC q, after which the public key Y is generated by the formula Y = G k , take the ED represented by BS H 1 , and the EDS is formed in the form of two BS e and s, for which a random MDC t is generated, the BS vector R is generated by the formula R = G t , then the first BS e EDS is formed in the form of MDC, calculated depending on R and H 1 according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating the MDC e, then generate the second BS s EDS in the form of MDC calculated by the formula s = (t + ke) mod q, and then form the first and second test BS A and B according to the formulas A = f (R ', H 1 ) and B = e, where the BS vector R 'is calculated by the formula R' = Y qe ° G s .

В данном частном варианте реализации п.1 формулы изобретения используется секретный ключ в виде одного МДЧ k и один вектор G, благодаря чему при реализации заявленного способа формирования и проверки ЭЦП и использовании циклических групп векторов БС обеспечивается сравнительно малый размер ЭЦП при заданном уровне стойкости ЭЦП.In this particular embodiment, the implementation of claim 1 of the invention uses a secret key in the form of one MDC k and one vector G, due to which, when implementing the claimed method for generating and checking EDS and using cyclic groups of BS vectors, a relatively small size of EDS is ensured for a given level of EDS stability.

Новым является также и то, что генерируют секретный ключ в виде двух МДЧ k1 и k2, и открытый ключ Y формируют в виде двухмерного вектора БС, для чего генерируют два двухмерных вектора БС G1 и G2, имеющие порядок, равный простому МДЧ q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2t2, принимают ЭД, представленный БС Н^, а ЭЦП формируют в виде трех БС е, s1 и s2, для чего генерируют случайные МДЧ t1 и t2, генерируют двухмерный вектор БС R по формуле R=G1t1°G2t2, затем формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и H1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления МДЧ е, затем генерируют пару БС s1 и s2 ЭЦП в виде МДЧ, вычисляемых по формулам s1=(t1-k1e)mod q и s2=(t2-k2e)mod q, после чего формируют первую и вторую проверочные БС А и В по формулам А=f(R',H1) и B=е, где вектор битовых строк R' вычисляют по формуле R'=Ye°G1s1°G2s2.It is also new that a secret key is generated in the form of two MDC k 1 and k 2 , and the public key Y is formed as a two-dimensional BS vector, for which two two-dimensional BS vectors G 1 and G 2 are generated, having an order equal to a simple MDC q, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 t2 , the ED represented by BS Н ^ is received, and the digital signature is formed in the form of three BS е, s 1 and s 2 , for which random MDC t 1 and t 2, the BS generate two-dimensional vector R according to the formula R = G 1 2 t1 ° G t2, then forming the first BS e signature as MDCH computed as a function of H, and R 1 to form le e = f (R, H 1), where f (R, H 1) - an expression specifying calculation rule MDCH e, then generating a pair BS s 1 and s 2 EDS as MDCH, calculated by the formulas s 1 = (t 1 -k 1 e) mod q and s 2 = (t 2 -k 2 e) mod q, after which the first and second test BS A and B are formed using the formulas A = f (R ', H 1 ) and B = e where the bit string vector R ′ is calculated by the formula R ′ = Y e ° G 1 s1 ° G 2 s2 .

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

Новым является также и то, что генерируют секретный ключ в виде двух МДЧ k1 и k2, и открытый ключ Y формируют в виде в виде пятимерного вектора БС, для чего генерируют два пятимерных вектора БС G1 и G2, имеющие порядки, равные простым МДЧ q1 и q2, соответственно, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2, принимают ЭД, представленный БС H1, а ЭЦП формируют в виде трех БС е, s1 и s2, для чего генерируют случайные МДЧ t1 и t2, генерируют вектор БС R по формуле R=G1t1°G2t2, затем формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и Н1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления МДЧ е, затем генерируют пару БС s1 и s2 ЭЦП в виде МДЧ, вычисляемых по формулам s1=(t1-k1e)mod q1 и s2=(t2-k2e)mod q2, после чего формируют первую и вторую проверочные БС А и В по формулам A=f(R',H^) и В=е, где вектор БС R' вычисляют по формуле R'=Ye°G1s1°G2s2.Also new is the fact that a secret key is generated in the form of two MDCs k 1 and k 2 , and the public key Y is formed in the form of a five-dimensional BS vector, for which two five-dimensional BS vectors G 1 and G 2 are generated having orders equal to simple MDC q 1 and q 2 , respectively, after which the public key Y is generated according to the formula Y = G 1 k1 ° G 2 k2 , the ED presented by BS H 1 is received, and the digital signature is formed in the form of three BS e, s 1 and s 2 , which generate random MDCH t 1 and t 2, the BS generate the vector R according to the formula R = G 1 2 t1 ° G t2, then forming the first BS e signature as MDCH, evaluated depending from R and H 1, according to the formula e = f (R, H 1), where f (R, H 1) - an expression specifying calculation rule MDCH e, then generating a pair BS s 1 and s 2 EDS as MDCH computed by formulas s 1 = (t 1 -k 1 e) mod q 1 and s 2 = (t 2 -k 2 e) mod q 2 , after which form the first and second test BS A and B according to the formulas A = f (R ' , H ^) and B = e, where the BS vector R 'is calculated by the formula R' = Y e ° G 1 s1 ° G 2 s2 .

Использование векторов БС размерности 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.

Новым является также и то, что генерируют секретный ключ в виде трех МДЧ k1, k2 и k3, и открытый ключ Y формируют в виде трехмерного вектора БС, для чего генерируют три трехмерных вектора БС G1, G2 и G3, имеющие порядок, равный простому МДЧ q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°G3k3, принимают ЭД, представленный Н1, а ЭЦП формируют в виде четырех БС е, s1, s2, и s3, для чего генерируют случайные МДЧ t1, t2, и t3, генерируют вектор БС R по формуле R=G1t1°G2t2°G3t3, затем формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и Н1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления МДЧ е, затем генерируют тройку БС s1, s2, и s3 ЭЦП в виде МДЧ, вычисляемых по формулам s1=(t1-k1e)mod q, s2=(t2-k2e)mod q и s3=(t3-k3e)mod q, после чего формируют первую и вторую проверочные БС А и В по формулам А=f(R',Н1) и B=е, где вектор БС R вычисляют по формуле R'=Ye°G1s1°G2s2°G3s3.Also new is the fact that a secret key is generated in the form of three MDCs k 1 , k 2 and k 3 , and the public key Y is formed as a three-dimensional BS vector, for which three three-dimensional BS vectors G 1 , G 2 and G 3 are generated, having an order equal to a simple MDC q, after which the public key Y is generated according to the formula Y = G 1 k1 ° G 2 k2 ° G 3 k3 , the ED represented by H 1 is received, and the digital signature is formed in the form of four BS e, s 1 , s 2 , and s 3 , for which random MDC t 1 , t 2 , and t 3 are generated, generate the BS vector R according to the formula R = G 1 t1 ° G 2 t2 ° G 3 t3 , then form the first BS e EDS in the form of MDC calculated as from R and H 1 according to the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining a rule for calculating the MDC e, then a BS triple is generated s 1 , s 2 , and s 3 EDS in the form 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, and then form the first and second test BS A and B by the formulas A = f (R ', H 1 ) and B = e, where the BS vector R is calculated by the formula R' = Y e ° G 1 s1 ° G 2 s2 ° G 3 s3 .

В качестве выражения е=f(R,H1) может быть, например, использована формула е=rH1 mod δ, где r=(r1||r2||r3) - МДЧ, заданное конкатенацией БС, являющихся координатами вектора БС R, и δ - вспомогательное простое МДЧ. Генерация трех различных секретных ключей позволяет повысить стойкость алгоритма ЭЦП при использовании нециклических групп векторов БС за счет использования векторов БС G1, G2 и G3 размерности m=3, генерирующих циклические подгруппы нециклической группы векторов БС, такие, что они попарно не попадают в какую либо одну циклическую подгруппу нециклической группы векторов БС. Конкатенацией двух БС а и b, представленных в виде а=а1а2а3…ag и b=b1b2b3…bk, называется БС с=а||b=а1а2а3…аgb1b2b3…bk. Знак || обозначает операцию конкатенации.As the 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 BS vectors G 1 , G 2 and G 3 of dimension m = 3, generating cyclic subgroups of a non-cyclic group of BS vectors, such that they do not fall into pairs any one cyclic subgroup of a non-cyclic group of BS vectors. The concatenation of two BS a and b, represented as a = a 1 a 2 a 3 ... a g and b = b 1 b 2 b 3 ... b k , is called a BS with = a || b = a 1 a 2 a 3 ... and g b 1 b 2 b 3 ... b k . Sign || denotes a concatenation operation.

Вектор БС - это набор из двух или более БС, называемых координатами вектора БС. Вектор БС записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции координат вектора БС. Например, вектор БС можно записать в виде (a1, a2, …, аm), где 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:

Таблица 1Table 1 Таблица умножения базисных векторов для случая m=3Multiplication table of basis vectors for the case m = 3 еe ii ii еe еe ii jj jj ii jj еe jj jj еe ii

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

Z1°Z2=(a1е+b1i+cij)°(a2e+b2i+с2j)=Z 1 ° Z 2 = (a 1 е + b 1 i + c i j) ° (a 2 e + b 2 i + с 2 j) =

a1a2еe+a1b2ei+a1c2ej+b1a2ie+b1b2ij+b1c2ij+c1c2je+c1b2ji+c1c2jj=a 1 a 2 еe + a 1 b 2 ei + a 1 c 2 ej + b 1 a 2 ie + b 1 b 2 ij + b 1 c 2 ij + c 1 c 2 je + c 1 b 2 ji + c 1 c 2 jj =

(a1a2+b1c2+c1b2)e+(а1b2+b1a21c2)i+(а1с21a2+b1b2)j.(a 1 a 2 + b 1 c 2 + c 1 b 2 ) e + (a 1 b 2 + b 1 a 2 + s 1 c 2 ) i + (a 1 s 2 + s 1 a 2 + b 1 b 2 ) j.

Чтобы задать конечные группы векторов БС операции сложения и умножения над БС, являющимися координатами векторов БС, задаются специальным образом, а именно так, что координатами являются элементы конечного поля, в частности поля чисел, являющихся остатками от деления всех целых чисел на некоторое простое число р, называемое модулем. Такие поля называются простыми и обозначаются следующим образом 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, that the coordinates are elements of a finite field, in particular, the field of numbers that are the remainders of the division of all integers by some prime number p called a 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 nonzero coefficients in the polynomials obtained as the remainder of the division by the irreducible polynomial.

Вектора, в которых БС являются элементами конечного простого поля, т.е. многоразрядными двоичными числами, будем называть векторами МДЧ. Вектора, в которых БС являются элементами конечного расширенного поля, т.е. многочленами, будем называть векторами многочленов. Действия над конечными множествами векторов МДЧ и конечными множествами многочленов описываются одинаково, за исключением того, что действия над координатами векторов относятся к полям различного типа, а потому отличаются в этих двух случая. Действия над координатами векторов МДЧ можно описать как выполнение операций сложения и умножения по модулю простого числа р. Действия над координатами векторов многочленов можно описать как выполнение операций сложения и умножения по модулю неприводимого многочлена р. Размер модуля в обоих случаях выбирается таким, чтобы обеспечить достаточно большой порядок группы векторов МДЧ. В обоих случаях формула, описывающая действия, которые выполняются при умножении векторов БС Z1=(a1e+b1i+c1j) и Z2=a2e+b2i+c2j, имеет одинаковый вид: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 describing the steps that are performed by multiplying the vectors BS 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:

Z1°Z2=(a1e+b1i+c1j)°(a2e+b2i+с2j)=Z 1 ° Z 2 = (a 1 e + b 1 i + c 1 j) ° (a 2 e + b 2 i + с 2 j) =

1а2+b1c2+c1b2 modp)e+(а1b2+b1a21с2 modp)i+(а1c21а2+b1b2 modp)j.(a 1 a 2 + b 1 c 2 + c 1 b 2 modp) e + (a 1 b 2 + b 1 a 2 + s 1 s 2 modp) i + (a 1 c 2 + s 1 a 2 + b 1 b 2 modp) j.

Таким образом, примеры реализации заявляемого способа формирования и проверки подлинности ЭЦП, приведенные для случая задания векторов БС над простыми полями, одновременно задают и примеры реализации заявляемого способа для случая задания векторов БС над конечными расширенными полями, т.е. полями многочленов.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, а для векторов БС размерности m=3 - вид таблицы 3, где ε - БС, представляющая элемент конечного поля, над которым задано множество векторов БС. В качестве параметра s может быть выбран произвольный элемент указанного поля. Например, различные значения параметра ε, выбираемые в интервале 0<ε<p, придают различные свойства конечной группе векторов МДЧ при фиксированном значении размерности m и модуля р. Таблицы умножения базисных векторов для случая векторов МДЧ и векторов многочленов, представляющих частные варианты задания векторов БС, имеют одинаковый вид, за исключением того, что в случае векторов МДЧ коэффициент е представляет собой некоторое МДЧ ε, такое, что 0<ε<p, а в случае векторов многочленов коэффициент ε представляет собой некоторый многочлен.Depending on the dimension of the BS vectors over which the multiplication operations are determined, and the particular 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, and for BS vectors dimension m = 3 is a view of Table 3, where ε is a BS representing an element of a finite field over which a set of BS vectors are given. As the parameter s, an arbitrary element of the specified field can be selected. For example, different values of the parameter ε, chosen in the interval 0 <ε <p, give different properties to a finite group of MDC vectors with 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 e is some MDC ε, such that 0 <ε <p, and in the case of polynomial vectors, the coefficient ε is a polynomial.

Таблица 2table 2 Таблица умножения базисных векторов для случая m=2Multiplication table of basis vectors for the case m = 2 еe ii еe еe ii ii ii εеεе

Таблица 3Table 3 Таблица умножения базисных векторов для случая m=3Multiplication table of basis vectors for the case m = 3 еe ii jj еe еe ii jj ii ii εjεj εеεе jj jj εеεе ii

Таблица 4Table 4 Таблица умножения базисных векторов для случая m=7Multiplication table of basis vectors for the case m = 7 еe ii jj kk uu vv ww еe еe ii ll kk uu vv ww ii ii λε·jλε · j ρλε·kρλε τε·uτε · u ρλε·vρλεv λε·wλε ρτλεµ·еρτλεµ jj JJ φλε·kφλε ρλε·uρλε ρτε·vρτε v ρλε·wρλε ρτλεµ·еρτλεµ ρτµ·kρτµk kk kk τε·uτε · u ρτε·vρτε v τε·wτε · w ρτλεµ·еρτλεµ τµ·iτµi τµ·jτµ j uu uu ρλε·vρλεv ρλε·wρλε ρτλεµ·eρτλεµ · e ρτλε·vρτλεv λµ·jλµ j ρλµ·kρλµk VV vv λε·wλε ρτλεµ·eρτλεµ · e τµ·iτµi λµ·jλµ j λµ·kλµk τµ·uτµ u ww ww ρτλεµτ·еρτλεµτ ρτµ·kρτµk τµ·jτµ j ρλµ·kρλµk τµ·uτµ u ρτµ·vρτµv

Аналогичным способом могут быть определены групповые операции над конечными группами векторов БС размерностей m=4, m=5 и т.д. Например, правила умножения базисных векторов для случая m=7 приведены в таблице 4, где в качестве коэффициентов растяжения ρ, τ, λ, ε, µ и τ могут быть использованы произвольные шесть значений, являющихся многочленами в случае, когда вектора БС представляют собой вектора многочленов, или являющихся МДЧ в случае, когда вектора БС представляют собой вектора МДЧ.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 Table 4, where arbitrary six values can be used as the tensile coefficients ρ, τ, λ, ε, μ, and τ, which are polynomials in the case when the BS vectors are vectors polynomials, or being MDC in the case when the BS vectors are MDC vectors.

При соответствующем выборе таблицы умножения базисных векторов и простого значения р множество векторов МДЧ является конечным и это конечное множество содержит подмножество векторов МДЧ, которое образуют группу с групповой операцией «°», причем порядок этой подгруппы является достаточно большим. Группа - это алгебраическая структура (т.е. множество математических элементов некоторой природы), над элементами которой задана некоторая операция таким образом, что алгебраическая структура обладает следующим набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в широко доступной математической литературе, например в книгах [А.Г.Курош. Теория групп. - М., изд-во «Наука», 1967. - 648 с.] и [М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп. - М., изд-во «Наука. Физматлит», 1996. -287 с.]. Операция определенная над элементами группы называется групповой операцией. Группа называется циклической, если каждый ее элемент может быть представлен в виде g=an для некоторого натурального числа n, где а - элемент данной подгруппы, называющийся генератором или образующим элементом циклической подгруппы, и степень n означает, что над элементом а выполняются n последовательны операций, т.е. аn=а°а°а°…°а (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 the group operation “°”, and 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. Group theory. - 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 over group elements is called a group operation. A group is called cyclic if its every element can be represented as 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 the degree n means that n are executed sequentially over a operations i.e. a n = a ° a ° a ° ... ° a (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 to which the given element of the group must be raised so that the result of this operation is some other given element of the group [N. Moldovyan Workshop on public key cryptosystems. - SPb. BHV-Petersburg, 2007. - 298 p.].

Поскольку групповая операция о над векторами МДЧ выполняется путем выполнения модульных умножений и сложений над МДЧ, являющихся координатами векторов МДЧ, достаточно высокая трудность задачи дискретного логарифмирования в группе векторов МДЧ достигается при сравнительно малом значении размера модуля p, благодаря чему обеспечивается сравнительно высокая производительность операции возведения векторов МДЧ в большую степень. Поскольку производительность процедур формирования и проверки ЭЦП определяется производительностью операции возведения в степень, то при использовании операций над векторами МДЧ обеспечивается сравнительно высокая производительность процедур формирования и проверки ЭЦП.Since the group operation on the MDC vectors is performed by performing modular multiplications and additions on the MDC, which are the coordinates of the MDC vectors, the 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 vector construction operation MDC to a large extent. 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 [Moldovyan NA. 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.

Корректность заявленного способа доказывается теоретически. Рассмотрим, например, вариант реализации способа по п.5 формулы изобретения. Открытый ключ, соответствующий секретному ключу k, представляет собой вектор БС Y=Gk. Вектор БС R генерируется по формуле R=Gt, а первое МДЧ в ЭЦП (е, s) вычисляется по формуле е=f(R,H). Значение s генерируется по формуле s=(k+ek)mod q, поэтому вектор МДЧ R', генерируемый по формуле R'=YeGs и используемый для формирования первого проверочного МДЧ А, равенThe correctness of the claimed method is proved theoretically. Consider, for example, an embodiment of the method according to claim 5. 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 t , 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 + ek) mod q; therefore, the MDC vector R 'generated by the formula R' = Y e G s and used to form the first verification MDC A is

R'=YeGs=GekGs=Gek+(t-ek)=Gt=R.R '= Y e G s = G ek G s = G ek + (t-ek) = G t = R.

Поскольку вектора МДЧ R' и R одинаковы, то равны между собой и значения e'=f(R',H) и e=f(R,H), т.е. A=e'=e=В. Таким образом, правильно сформированная ЭЦП подпись удовлетворяет процедуре проверки ЭЦП, т.е. корректность процедур генерации и проверки ЭЦП доказана. Аналогичным образом дается доказательство корректности и для пп.6-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 EDS 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 6-8 of the claims.

Особенностью реализации заявленного способа формирования и проверки ЭЦП, заверяющей ЭД, по пп.6-8 и 4 формулы изобретения является использование двух G1 и G2 (пп.6 и 7), трех G1, G2 и G3 (пп.8) или больше трех различных значений векторов БС (п.4), по которым вычисляется открытый ключ и которые входят в соответствующие формулы проверки подлинности ЭЦП. Этот признак является новым в области способов формирования и проверки ЭЦП и имеет принципиальное значение для случая использования конечных групп векторов БС, которые являются нециклическими. В нециклических группах векторов БС отсутствуют отдельные значения векторов БС, степени которых могут выразить любой вектор БС. Используемые различные значения G1, G2, …, Gu относятся к различным циклическим подгруппам нециклической группы векторов БС, поэтому для определения секретного ключа по открытому ключу требуется вычислять секретный ключ как единое целое, т.е. нет возможности вычислять секретный ключ по частям. Это позволяет построить стойкие алгоритмы ЭЦП даже в случаях, когда порядки векторов БС G1, G2, …, Gu, т.е. значения МДЧ q1, q2, …, qu, соответственно, имеют размер значительно меньше 160 бит. Общее требование безопасности состоит в том, что суммарная длина значений q1, q2, …, qu была не меньше, чем 160 бит. В частных реализациях высокая стойкость обеспечивается при использовании простых МДЧ q1, q2, …, qu, равных между собой, т.е. при q1=q2=…=qu=q. В зависимости от параметров конечного множества векторов БС и операции умножения, с помощью которой задаются конечные группы векторов БС для формирования открытого ключа, может быть использовано одно значение G (п.5 формулы изобретения), порядок которого имеет размер 160 бит и более, также могут быть использованы два (пп.6 и 7 формулы изобретения), три (п.8 формулы изобретения), четыре и более значений Gi, i=1, 2, …, u (п.4 формулы изобретения). В соответствии с этим также модифицируется уравнение проверки ЭЦП. Так в общем случае открытый ключ формируется по формуле Y=G1k1°G2k2°…°Guku, где k1, k2, …, ku - элементы секретного ключа, а подлинность ЭЦП проверяется по формуле R'=Ye°G1s1°G2s2°…°Gusu, где s1, s2, …, su - элементы ЭЦП, u≤m.A feature of the implementation of the claimed method of forming and verifying an electronic digital signature verifying an ED according to claims 6-8 and 4 is that it uses two G 1 and G 2 (claims 6 and 7), three G 1 , G 2 and G 3 (claims. 8) or more than three different values of the BS vectors (Clause 4), 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 , ..., G u 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 , ..., G u , i.e. the values of MDC q 1 , q 2 , ..., q u , respectively, have a size significantly less than 160 bits. The general security requirement is that the total length of the values q 1 , q 2 , ..., q u was not less than 160 bits. In private implementations, high resistance is ensured by using simple MDC q 1 , q 2 , ..., q u equal to each other, i.e. when q 1 = q 2 = ... = q u = q. 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 5 of the claims), the order of which has a size of 160 bits or more, can also be used two (claims 6 and 7 of the claims), three (claims 8 of the claims), four or more values of G i , i = 1, 2, ..., u (claims 4 of the claims). In accordance with this, the EDS verification equation is also modified. So in the general case, the public key is formed by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G u ku , 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 R '= Y e ° G 1 s1 ° G 2 s2 ° ... ° G u su, where s 1, s 2, ..., s u - with electronic elements, u≤m.

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

При использовании на практике заявляемого способа следует выбрать таблицу умножения базисных векторов и размер параметров р и q таким образом, чтобы разрядность значения порядка q была равна или превышала 16, 32, 40, 64, 80 и 160 бит в зависимости от конкретного варианта реализации заявленного способа. В примерах, приводимых ниже, используются параметры с искусственно уменьшенной разрядностью, чтобы уменьшить размер примеров и сделать их более наглядными.When using the proposed method in practice, one should choose a table of multiplication of basic vectors and the size of the parameters p and q so that the resolution of the order q is equal to or greater than 16, 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

Данный пример относится к варианту реализации заявленного способа по п.4 формулы изобретения. В нем используется группа, элементами которой являются вектора БС размерности m, над которыми определена операция умножения таким образом, что порядок группы равен (р-1)m, а максимальный порядок элементов группы равен р - 1, где p - характеристика конечного простого поля, над которым заданы вектора БС, причем БС интерпретируются как МДЧ, а операции над БС выполняются как операции над МДЧ. Условия построения групп данного типа описаны, например, для случая m=3, в работе [Молдовян НА. Группы векторов для алгоритмов электронной цифровой подписи // Вестник СПбГУ. Сер.10. 2008]. Аналогичным способом могут быть заданы группы БС для размерностей m=4, 5, 6, …. В данном примере не приводятся конкретные значения получаемых значений БС, а описываются результаты процедур формирования и генерации БС и векторов БС в обобщенном виде для произвольного случая. Подставляя вместо буквенных обозначений конкретные численные значения, могут быть построены различные варианты численной иллюстрации п.4 формулы изобретения. В данном примере акцент делается на корректность процедуры проверки подлинности ЭЦП, которая доказывается для общего случая. Выполняется следующая последовательность действий.This example relates to an embodiment of the claimed method according to claim 4. It uses a group whose elements are BS vectors of dimension m over which the multiplication operation is defined 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 [Moldovyan NA. 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 4 can 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, …, km.1. Generate a secret key in the form of MDC k 1 , k 2 , ..., 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 в виде БС, вычисляемой по формуле Y=G1k1°G2k2°…°Gmkm.2.2. Generate the public key Y in the form of a BS, calculated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G m km .

3. Принимают ЭД, представленный совокупностью БС Н1, Н2, …, Нz, где z=m.3. Accept the ED represented by the set of 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 по формуле R=G1t1°G2t2°…°Gmtm.4.2. The BS vector R is generated by the formula R = G 1 t1 ° G 2 t2 ° ... ° G m tm .

4.3. Формируют первую БС е ЭЦП в виде МДЧ, вычисляемого в зависимости от R и H по формуле е=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 ЭЦП в виде МДЧ, вычисляемых по формулам

Figure 00000003
,
Figure 00000004
, …,
Figure 00000005
.4.4. Generate m BS s 1 , s 2 , ..., s m EDS in the form of MDC calculated by the formulas
Figure 00000003
,
Figure 00000004
, ...,
Figure 00000005
.

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

5.1. Формируют вектор БС R', выполняя вычисления по формуле R'=Ye°G1H1s1°G2H2s2°…°GmHmsm.5.1. The BS vector R 'is formed by performing the calculations according to the formula R' = Y e ° G 1 H1s1 ° G 2 H2s2 ° ... ° G m Hmsm .

5.2. Формируют БС А по формуле A=f(R',H), где H=H1||H2||…|Hz.5.2. BS A is formed according to the formula A = f (R ', H), where H = H 1 || H 2 || ... | H z .

6. Формируют вторую проверочную БС В путем копирования БС е, т.е. по формуле B=е.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 будет получено совпадение параметров проверочных БС, доказывается следующим образом. Подставим в формулу, по которой формируется вектор БС R', значения БС s1, s2, …, sm, полученные по формулам, приведенным в п.4.4. В результате получим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 obtained is proved as follows. Substitute in the formula by which the BS vector R 'is formed, the BS values s 1 , s 2 , ..., s m obtained by the formulas given in clause 4.4. As a result, we get

R'=Ye°G1H1s1°G2H2s2…°GmHmsm=Ye°G1H1(t1-k1e)H1-1°G2H2(t2-k2e)H2-1…°GmHm(tm-kme)Hm-1°G=R '= Y e ° G 1 H1s1 ° G 2 H2s2 ... ° G m Hmsm = Y e ° G 1 H 1 (t 1 e -k 1) 1 H -1 ° G 2 H 2 (t 2 e -k 2 ) H 2 -1 ... ° G m H m (t m -k m e) H m -1 ° G =

=(G1k1°G2k2…°Gmkm)°G1t1-k1e…°Gmtm-kme=(G1k1e+t1-k1e°G2k2e+t2-k2e…°Gmkme+tm-kme== (G 1 k1 ° G 2 k2 ... ° G m km ) ° G 1 t 1 -k 1 e ... ° G m t m -k m e = (G 1 k 1 e + t 1 -k 1 e ° G 2 k 2 e + t 2 -k 2 e ... ° G m k m e + t m -k m e =

G1t1°G2t2…°Gmtm=R⇒ A=f(R',H)=h(R,H)=B.G 1 t1 ° G 2 t2 ... ° G m tm = R⇒ A = f (R ', H) = h (R, H) = B.

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

Последовательность действий по формированию и проверке подлинности ЭЦП, заверяющей ЭД, описанная в примере 1, может быть выполнена также и для случая, когда БС представляют собой многочлены. При этом таблицы умножения базисных векторов при заданном значении размерности m являются такими же как приведенные выше, за исключением того, что коэффициент е в случае реализации заявленного способа при использовании многочленов будет представлять собой некоторый заданный многочлен, определяющий конкретный вид операции умножения векторов многочленов. Доказательство корректности процедуры проверки ЭЦП в случае, когда вектора БС представляют собой вектора многочленов, является таким же, как и приведенное выше доказательство для случая использования векторов БС, являющихся векторами МДЧ. Для практики представляют интерес различные варианты значений размерности т векторов БС. Выбор соответствующей размерности т зависит от требований конкретных применений заявленного способа формирования и проверки ЭЦП. Например, при использовании 32-разрядных процессоров для выполнения вычислений интерес представляют простые значения размерности m=5, m=7, m=11 и m=13. При аппаратной реализации в виде специализированных вычислительных устройств высокая производительность процедур формирования проверки ЭЦП может быть достигнута при значениях размерности векторов БС m=8, m=9, m=16 и m=32. Наиболее высокая производительность при аппаратной реализации может быть достигнута при использовании заявленного способа для случая использования векторов двоичных многочленов в качестве векторов БС. Это объясняется тем, что операции сложения и умножения и двоичных многочленов в конечных полях двоичных многочленов являются наиболее эффективными с точки зрения получения высокого быстродействия и уменьшения сложности аппаратной реализации.The sequence of actions for generating and verifying the authenticity of the digital signature verifying the ED described in Example 1 can also be performed for the case when the BSs are polynomials. Moreover, the tables of multiplication of basis vectors for a given value of dimension m are the same as above, except that the coefficient e in the case of implementing the claimed method using polynomials will be some given polynomial that determines the specific form of the operation of multiplying 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. For practice, various variants 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 могут быть использованы таблицы умножения базисных векторов, в которых значение параметра 6 может быть выбрано в интервале 0≤ε<p, где число р выбирается таким образом, чтобы обеспечивалось значение порядка векторов БС, равное простому МДЧ q, имеющему достаточно большой размер, например, равный 32, 40, 64, 80, 160 или 256 бит. Таблица умножения базисных векторов для задания групповой операции над четырехмерными векторами МДЧ (случай m=4) имеет вид таблицы 5.When constructing the basis vector multiplication tables for arbitrary values of dimension m, basis vector multiplication tables can be used in which the value of parameter 6 can be selected in the interval 0≤ε <p, where the number p is chosen so that the order value of the BS vectors is equal to simple MDC q, having a sufficiently large size, for example, equal to 32, 40, 64, 80, 160 or 256 bits. The multiplication table of basis vectors for specifying a group operation on four-dimensional MDC vectors (case m = 4) has the form of table 5.

Таблица 5Table 5 Таблица умножения базисных векторов для случая m=4Multiplication table of basis vectors for the case m = 4 еe ii jj kk еe еe ii jj kk ii ii εjεj εkεk εеεе jj jj εkεk εеεе ii kk kk εеεе ii jj

Таблица 6Table 6 Таблица умножения базисных векторов для случая m=6Multiplication table of basis vectors for the case m = 6 еe ii jj kk uu vv еe еe ii jj kk uu vv ii ii εjεj εkεk εuεu εvεv εеεе jj jj εkεk εuεu εvεv εеεе ii kk kk εuεu εvεv εеεе ii jj uu uu εvεv εеεе ii jj kk νν vv εеεе ii jj kk uu

Таблица для задания групповой операции над шестимерными векторами МДЧ (случай m=6) имеет вид таблицы 6. Была разработана программа для ЭВМ, реализующая операции умножения и возведения в большую целочисленную степень векторов МДЧ, имеющих значения размерности от 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 6. A computer program was developed that implements the operations of multiplying and raising to a large integer power 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.

Таблицы умножения базисных векторов, определяющие групповые операции над векторами произвольных размерностей m, строятся по следующему общему правилу. Первоначально строится исходная таблица, которая не включает коэффициентов растяжения, путем последовательной записи строк базисных векторов таким образом, что каждая следующая строка получается из предыдущей путем циклического сдвига на одну клетку. Получаемая при этом исходная таблица умножения базисных векторов имеет стандартный вид для произвольных значений размерности векторов, поэтому ее можно назвать типовой (см. распределение базисных векторов в таблице 7). Для типовой таблицы и произвольного значения т имеется два простых и общих варианта распределения коэффициента растяжения.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 7). For a typical table and an arbitrary value of m, there are two simple and general variants of the distribution of the tensile coefficient.

Один из этих вариантов состоит в выделении квадрата, состоящего из всех клеток, не входящих в первый ряд или в первую строку, и внесении коэффициента растяжения ε в клетки этого квадрата, расположенные на диагонали, идущей из правого верхнего угла в левый нижний угол (каждая из этих клеток содержит базисный вектор е), а также во все клетки, расположенные выше этой диагонали. Второй из этих вариантов является симметричным первому относительно указанной диагонали (эта диагональ отмечена в таблице 7 серым фоном). Второй вариант распределения показан как распределение коэффициента µ, который вносится в каждую клетку диагонали, содержащей базисный вектор е и все клетки, расположенные ниже этой диагонали. Коэффициентам растяжения µ и ε может быть присвоено любое значение в интервале от 0 до р-1, если задается операция умножения векторов БС, представляющих собой вектора МДЧ. В случае, когда вектора БС представляют собой вектора многочленов, коэффициентам растяжения µ и ε может быть присвоено значение произвольного многочлена, степень которого меньше степени неприводимого многочлена, используемого в качестве модуля при выполнении операций над многочленами, являющимися координатами векторов БС. При указанных вариантах произвольного выбора значений коэффициентов растяжения µ и ε операция умножения векторов БС будет обладать свойствами ассоциативности и коммутативности. Выбор конкретных значений коэффициентов растяжения определяет параметры групп векторов БС и должен осуществляться с привязкой к конкретным используемым значениям размерности m и параметра p.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 7). 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. The tensile coefficients µ and ε can be assigned any value in the range from 0 to p − 1, if the operation of multiplying the BS vectors, which are MDC vectors, is specified. In the case where the BS vectors are polynomial vectors, the stretch coefficients µ and ε can be assigned the value of an arbitrary polynomial whose degree is less than the degree of the irreducible polynomial used as a module when performing operations on polynomials that are the coordinates of the BS vectors. With the indicated options for the arbitrary choice of the values of the tensile coefficients µ and ε, the operation of multiplying the BS 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 parameter p used.

Таблица 7Table 7 Таблица умножения базисных векторов для случая m=10Multiplication table of basis vectors for the case m = 10 ×× еe ii jj kk uu vv ww tt xx УAt еe еe ii jj kk uu vv ww tt xx УAt εjεj εkεk εuεu εvεv εwεw εtεt εxεx εyεy µεeµεe jj jj εkεk εuεu εvεv εwεw εtεt εxεx εyεy µεeµεe µiµi kk kk εuεu εvεv εwεw εtεt εxεx εyεy µεeµεe µiµi µjµj uu uu εvεv εwεw εtεt εxεx εyεy µεeµεe µiµi µjµj µkµk vv vv εwεw εtεt εxεx εyεy µεeµεe µiµi µjµj µkµk µuµu ww ww εtεt εxεx εyεy µεeµεe µiµi µjµj µkµk µuµu µvµv tt tt εxεx εуεy µεeµεe µiµi µjµj µkµk µuµu µvµv µwµw xx хx εyεy µεeµεe µiµi µjµj µkµk µuµu µvµv µwµw µtµt УAt УAt µεeµεe µiµi µjµj µkµk µuµu µvµv µwµw µtµt µxµx

При реализации заявленного способа с использованием операций над векторами многочленов различной размерности m таблицы умножения базисных векторов строятся по указанному выше общему правилу, за исключением того, что в случае векторов многочленов коэффициенты µ и ε представляют собой многочлены.When implementing the inventive method using operations on vectors of polynomials of various 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.

При использовании групп векторов БС, имеющих сравнительно большую размерность, высокая криптографическая стойкость ЭЦП обеспечивается при меньшей разрядности МДЧ, являющихся координатами векторов МДЧ. Например, при m=16 и m=32 разрядность указанных МДЧ может составлять 64 и 32 бита, соответственно, что позволяет повысить быстродействие процедур формирования и проверки ЭЦП при программной реализации для выполнения программ, реализующих заявляемый способ, на 64- и 32-разрядных микропроцессорах.When using groups of BS vectors having a relatively large dimension, high cryptographic strength of the EDS is ensured with a lower bit depth of the MDC, which are the coordinates 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 improves the performance of the procedures for generating and checking the digital signature during software implementation to run programs that implement the claimed method on 64- and 32-bit microprocessors .

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

В данном примере групповая операция о выполняется с использованием следующей таблицы умножения базисных векторов.In this example, the group operation o is performed using the following basis vector multiplication table.

Таблица 8Table 8 Таблица умножения базисных векторов для случая т=3 при 8=2Multiplication table of basis vectors for the case m = 3 with 8 = 2 еe ii jj еe еe ii jj ii ii 2j2j 2nd jj jj 2nd ii

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

1. Генерируют простое число p, такое что число p2+р+1 содержит простой множитель q, размер которого значительно превышает размер числа p:1. Generate a prime number p, such that the number p 2 + p + 1 contains a prime factor q, the size of which significantly exceeds the size of the number p:

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

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

k=2079.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 (в качестве которого может быть взята, в частности, хэш-функция от ЭД):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=5168.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=5387.5.1.1. A random MDC t = 5387 is generated.

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

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

5.2. Формируют вторую БС s ЭЦП в виде МДЧ, вычисляемого по формуле s=t+ke mod q: s=1149.5.2. Form the second BS s EDS in the form of MDC, calculated by the formula 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' по формуле R'=Yq-e°Gs (mod p):6.1. The MDC vector R 'is calculated by the formula R' = Y qe ° G s (mod p):

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

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

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

6.2. Генерируют БС А в виде МДЧ, вычисляемого по формуле А A=r'H1 mod δ, где r'=r'1||r'2||r3 - МДЧ, равное конкатенации МДЧ, являющихся координатами вектора МДЧ R', и δ=3169 - вспомогательное простое число: А=3138.6.2. BS A is generated in the form of MDC, calculated by the formula A A = r'H 1 mod δ, 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 is an auxiliary prime: A = 3138.

7. Формируют вторую проверочную БС В путем копирования МДЧ е, т.е. по формуле В=е: В=е=3138.7. A second test BS B is formed by copying the MDC e, i.e. by the formula B = e: 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.

Пример 3.Example 3

Данный пример иллюстрирует вариант реализации заявленного способа, соответствующий п.6 формулы изобретения, в котором действия выполняются над двухмерными векторами БС. Для получения конечной группы двухмерных векторов БС вида (а, b)=ае+bi БС а и b интерпретируются как МДЧ, над которыми определены операции умножения и сложения координат, выполняемые по модулю целого положительного числа. В данном примере групповая операция о выполняется с использованием таблицы 2. В соответствии с этой таблицей умножения базисных векторов для случая размерности m=2 имеем i·i=ε, где ε∈{1,…,р-1}, где p - простое МДЧ. Операция умножения двухмерных БС (а, b) и (с, d) выполняется по правилу:This example illustrates an embodiment of the claimed method, corresponding to claim 6, in which actions are performed on two-dimensional BS vectors. To obtain a finite group of two-dimensional BS vectors of the form (a, b) = ae + bi, the BSs a and b are interpreted as MDCs, over which the operations of multiplication and addition of coordinates are determined, performed modulo a positive integer. In this example, the group operation о 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, ..., p-1}, where p is a prime MDC. The operation of multiplying two-dimensional BS (a, b) and (c, d) is performed according to the rule:

Figure 00000006
Figure 00000006

где g'=(ас+εbd) mod р и h'=(ad+be) mod p. Легко проверить, что определенные таким образом операции сложения и умножения обладают свойствами ассоциативности и коммутативности. Среди алгебраических структур такого типа имеются конечные поля и мультипликативные группы, существенным свойством которых является наличие единицы Е=(1,0) - нейтрального элемента по умножению, который определяет существование для каждой ненулевой пары А единственного обратного значения А-1, такого что АА-1=Е.where g '= (ac + εbd) mod p and h' = (ad + be) mod p. 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 с.], т.е. уравнения АХ=В и YA=В имеют единственное решение для любых элементов А и В. Поскольку определенная выше операция умножения является коммутативной, то указанные уравнения являются эквивалентными им, можно рассматривать только одно из них. Легко показать, что однозначность решения указанных уравнений выполняется, если для каждого элемента А существует единственное обратное значение А-1, поэтому представляет интерес рассмотреть решение уравнений вида АХ=Е, которое можно представить следующим образом:A group is an algebraic structure with an associative operation for which there is an inverse operation [A.G. Kurosh. Course of higher algebra. - M., "Science", 1971. - 431 p.], I.e. the equations AX = B and YA = B have a unique solution for any elements A and B. Since the multiplication operation defined above is commutative, these equations are equivalent to them; 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:

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

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

Figure 00000007
Figure 00000007

Рассмотрим существование решений этой системы. Приравнивая к нулю главный определитель этой системы, получаем характеристическое уравнениеConsider the existence of solutions to this system. Equating to zero the main determinant of this system, we obtain the characteristic equation

a2-εb2≡0 mod p.a 2 -εb 2 ≡0 mod p.

Значение (а, b)=(0, 0) является решением характеристического уравнения для любых значений модуля, поэтому для этой пары не существует обратного значения. Значения p и ε можно выбрать таким образом, что характеристическое уравнение не имеет других решений, а значит рассматриваемая система сравнений имеет единственное решение для любой пары (а, 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 ε can be chosen in such a way that the characteristic equation has no other solutions, which means that the system of comparisons under consideration has a unique solution for any pair (a, b) ≠ (0, 0).

В примере 1 используется группа двухмерных векторов БС, формируемая в случае задания операции умножения, определяемой по формуле (1) при использовании параметра ε, который является квадратичным вычетом по модулю р. При этих условиях характеристическое уравнение имеет, кроме (а, b)=(0, 0), еще 2(р-1) следующих решений видаIn Example 1, a group of two-dimensional BS vectors is used, which is formed in the case of specifying the multiplication operation determined by formula (1) using the parameter ε, which is a 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 р, b) и (-ε1/2b mod р, 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 .

Эти элементы составляют мультипликативную группу, поскольку результат умножения любых двух элементов из этого множества является элементом этого же множества.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.

В рассматриваемом примере выполняется следующая последовательность действий.In this example, the following sequence of actions is performed.

1. Генерируют простое число p, такое что р-1 содержит большой простой множитель q, т.е. p=Nq+1, где N - четное число, и задают значение ε=225, являющееся квадратичным вычетом по модулю 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 ε = 225, 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; k2=8457313533;k 1 = 1853362791; 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, имеющих порядок q=1997539432909.3.1. A pair of MDC vectors G 1 and G 2 are generated having the order q = 1997539432909.

G1=329450458956292027б812106е+2766233567473802431338876i;G 1 = 329450458956292027b812106e + 2766233567473802431338876i;

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

3.2. Генерируют вектор МДЧ Y=G1k1°G2k2:3.2. Generate the MDC vector Y = G 1 k1 ° G 2 k2 :

Y1=G1k1=1183619390973024467297431е+3703669051605973538784782i;Y 1 = G 1 k1 = 1183619390973024467297431e + 3703669051605973538784782i;

Y2=G2k2=182788774563660856108049e+1936038364647789724421279i;Y 2 = G 2 k2 = 182788774563660856108049e + 1936038364647789724421279i;

Y=Y1°Y2=1924471834140042300320534e+174837666126798422981001i;Y = Y 1 ° Y 2 = 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. Two random MDC t 1 = 18357236873 and t 2 = 38157216371 are generated.

5.1.2. Генерируют вектор МДЧ R по формуле R=G1t1°G2t2:5.1.2. MDC vector R is generated by the formula R = G 1 t1 ° G 2 t2 :

R1=G1t1=755879295575251075473814е+440880985283782634380692i;R 1 = G 1 t1 = 755879295575251075473814е + 440880985283782634380692i;

R2=G2t2=14324905143б4096482144778е+9522884704673923116940461;R 2 = G 2 t2 = 14324905143b4096482144778e + 9522884704673923116940461;

R=R1°R2=182878511143б413473493597е+3766810841718525336502327i.R = R 1 ° R 2 = 182878511143b413473493597е + 3766810841718525336502327i.

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 prime number, 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' по формуле R'=Yе°G1s1°G2s2:6.1. The MDC vector R 'is generated by the formula R' = Y e ° G 1 s1 ° G 2 s2 :

Ye=38490379439456736б0459504е+3583704901879536834939540i.Y e = 38490379439456736b0459504e + 3583704901879536834939540i.

G1s1=3580532237073410771710519е+8968477484858204736035681;G 1 s1 = 3580532237073410771710519е + 8968477484858204736035681;

G2s2=2902157646689814295993329e+1114779150752846285743470i. R'=182878511143б413473493597е+3766810841718525336502327i.G 2 s2 = 2902157646689814295993329e + 1114779150752846285743470i. R '= 182878511143b413473493597е + 3766810841718525336502327i.

6.2. Генерируют БС А в виде МДЧ, вычисляемого по формуле А=r'1H1 mod q, где r'1 - МДЧ, являющееся первой координатой вектора МДЧ R': А=1701612237557.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 ': A = 1701612237557.

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

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

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

Таблица 9Table 9 Таблица умножения базисных векторов для случая m=5Multiplication table of basis vectors for the case m = 5 еe ii jj kk uu еe еe ii jJjj kk uu ii ii εjεj εkεk εuεu εеεе jj jj εkεk εuεu εеεе ii kk kk εuεu εеεе ii jj uu uu εеεе ii jj kk

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

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

2. Генерируют секретный ключ в виде пары случайных МДЧ k1 и k2.2. A secret key is generated in the form of a pair of 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 и q2=59403247.3.1. Two BS vectors G 1 and G 2 are generated having the order q 1 = 820177 and q 2 = 59403247.

G1=4670230529e+6363758539i+1115493580j+11774211119k+4481291788u;G 1 = 4670230529e + 6363758539i + 1115493580j + 11774211119k + 4481291788u;

G2=7346947995 с+9935549003i+571858634J+5252170971k+11375019823u.G 2 = 7346947995 s + 9935549003i + 571858634J + 5252170971k + 11375019823u.

3.2. Генерируют вектор МДЧ Y=G1k1°G2k2:3.2. Generate the MDC vector Y = G 1 k1 ° G 2 k2 :

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

Y2=8724284212 с+10520629249i+37795532J+9839512858k+9802549315u;Y 2 = 8724284212 s + 10520629249i + 37795532J + 9839512858k + 9802549315u;

Y=Y1°Y2=13267009731e+3879646147i+6539448930J+107533229k++9727330067u.Y = Y 1 ° Y 2 = 13267009731e + 3879646147i + 6539448930J + 107533229k ++ 9727330067u.

4. Принимают ЭД, представленный, например, следующим МДЧ Н1 (в качестве которого может быть взята, в частности, хэш-функция от ЭД): H1=89154314.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 = 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. Two random MDCs k 1 = 613352348 and k 2 = 37591463 are generated.

5.1.2. Генерируют вектор МДЧ R по формуле R=G1t1°G2t2:5.1.2. MDC vector R is generated by the formula R = G 1 t1 ° G 2 t2 :

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

R2=13108093911e+3936822199i+9539524888j+5370585930k+6567932491u;R 2 = 13108093911e + 3936822199i + 9539524888j + 5370585930k + 6567932491u;

R=R1°R2=6897422139с+6311588041+593548634J+4117090044k++2590225180 ч.R = R 1 ° R 2 = 6897422139s + 6311588041 + 593548634J + 4117090044k ++ 2590225180 h.

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=(r1||r2||r3)H1 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 the first three coordinates of the vector MDC R: е = 119236.

5.2. Формируют вторую и третью БС s1 и s2 ЭЦП в виде МДЧ, вычисляемых по формулам s1=t1-k1e mod q1 и s2=t2-k2е mod q2: s1=626030; s2=2528952.5.2. Form the second and third BS s 1 and s 2 EDS 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 : s 1 = 626030; s 2 = 2528952.

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

6.1. Генерируют вектор БС R' по формуле R'=Yе°G1s1°G2s2:6.1. The BS vector R 'is generated by the formula R' = Y e ° G 1 s1 ° G 2 s2 :

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

G1sl=10769096929e+2654696484i+11130937343j+3507101146k+4306145379u;G 1 sl = 10769096929e + 2654696484i + 11130937343j + 3507101146k + 4306145379u;

G1s2=12814278574e+7057455723i+12699485338j+1124012626k+147947960u;G 1 s2 = 12814278574e + 7057455723i + 12699485338j + 1124012626k + 147947960u;

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

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

7. Формируют вторую проверочную БС путем копирования БС: В=е=119236.7. Form the second test BS by copying the BS: 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.

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

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

1. Генерируют простое число р, такое что р-1 содержит большой простой множитель q, т.е. р=3Nq+1, где N - четное число, и задают значение ε=6859=19, являющееся кубичным вычетом по модулю з:1. A prime number p is generated such that p-1 contains a large prime factor q, that is, p = 3Nq + 1, where N is an even number, and set the value ε = 6859 = 19, which is a cubic residue modulo s:

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

2. Генерируют секретный ключ в виде тройки случайных МДЧ k1, k2 и k3:2. A secret key is generated in the form of a triple of 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. 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 и G3, имеющие одно и то же значение простого порядока q=2376581.3.1. Three MDC vectors G 1 , G 2 and G 3 are generated having the same simple order value q = 2376581.

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

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

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

3.2. Генерируют вектор МДЧ Y=G1k1°G2k2°G3k3:3.2. Generate the MDC vector Y = G 1 k1 ° G 2 k2 ° G 3k3 :

Y1=G1k1=2610б3б2944111е+9121853491576i+7998895962567j;Y 1 = G 1 k1 = 2610b3b2944111e + 9121853491576i + 7998895962567j;

Y2=G2k2=8841482011615e+31890466083034i+31068266275905j;Y 2 = G 2 k2 = 8841482011615e + 31890466083034i + 31068266275905j;

Y3=G3k3=32249398803413e+18420663759564i+31373921099158j;Y 3 = G 3 k3 = 32249398803413e + 18420663759564i + 31373921099158j;

Y=Y1°Y2°Y3=15717771070652е+3791961142030i+6994965346759j.Y = Y 1 ° Y 2 ° Y 3 = 15717771070652e + 3791961142030i + 6994965346759j.

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=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, выполняя вычисления по формуле R=G1tl°G2t2°G3t3:5.1.2. The BS vector R is generated by performing the calculations according to the formula R = G 1 tl ° G 2 t2 ° G 3 t3 :

R1=G1t1=26476756850873e+8962083625688i+670851250270j;R 1 = G 1 t1 = 26476756850873e + 8962083625688i + 670851250270j;

R2=G2t2=30556526925766e+28584458265015i+8838154755582j;R 2 = G 2 t2 = 30556526925766e + 28584458265015i + 8838154755582j;

R3=G3t3=11801846609303e+18076196032752i+32080216656488j;R 3 = G 3 t 3 = 11801846609303e + 18076196032752i + 32080216656488j;

R=R1°R2°R3=1034404417б952е+11648038573307i+33051212302586j.R = R 1 ° R 2 ° R 3 = 1034404417b952e + 11648038573307i + 33051212302586j.

5.1.3. Генерируют БС е в виде МДЧ, вычисляемого по формуле е=(r1||r2||r31 mod δ, где δ - вспомогательное простое число, в качестве которого в данном примере берется МДЧ q, т.е. δ=q=2376581; r1||r||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 || r 3 - MDC, equal to the concatenation of the MDC, which are 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. The second s 1 , third s 2 and fourth s 3 BS EDS are formed in the form of 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 steps are performed.

6.1. Генерируют вектор БС R', выполняя вычисления по формуле R'=Ye°G1s1°G2s2°G3s3:6.1. The BS vector R 'is generated by performing the calculations according to the formula R' = Y e ° G 1 s1 ° G 2 s2 ° G 3 s3 :

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

G1s1=4656659662651e+31668525221129i+9741922667955j;G 1 s1 = 4656659662651e + 31668525221129i + 9741922667955j;

Ye°G1s1=279838485154e+5003268053125i+2342331071067j;Y e ° G 1 s1 = 279838485154e + 5003268053125i + 2342331071067j;

G2s2=13878539449612e+10268579457949i+25993200515657j;G 2 s2 = 13878539449612e + 10268579457949i + 25993200515657j;

G3s3=8522604164956e+3729385407205i+6316798018014j;G 3 s3 = 8522604164956e + 3729385407205i + 6316798018014j;

G2s2°G2s2=8522604164956e+3729385407205i+6316798018014j;G 2 s2 ° G 2 s2 = 8522604164956e + 3729385407205i + 6316798018014j;

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

6.2. Генерируют БС А в виде МДЧ, вычисляемого по формуле А=(r'||r2||r3)H1 mod q, где r'1||r'2||r'3 - МДЧ, равное конкатенации МДЧ, являющихся координатами вектора МДЧ R': А=665438.6.2. BS A is generated in the form of MDC calculated by the formula A = (r '|| r 2 || r 3 ) H 1 mod q, where 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 ': A = 665438.

7. Формируют вторую проверочную БС В путем копирования БС е: В=е=665438.7. A second test BS B is formed by copying BS e: B = e = 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.

Частные примеры реализации заявленного способа, аналогичные описанным выше примерам 1-5, могут быть реализованы для случая использования вычислений над векторами БС, являющимися векторами многочленов. Выполнение операций сложения, умножения и деления многочленов, а также операций умножения и сложения по модулю неприводимого многочлена широко, описано в научно-технической литературе. Также широко представлена реализация конечных полей многочленов и основные их свойства (см. например книги [Курош А.Г. Курс высшей алгебры. - М., «Наука», 1971. - 431 с.], [Кострикин А.И. Введение в алгебру. Основы алгебры. - М.: Физматлит. 1994. - 320 с.], [А.Акритас. Основы компьютерной алгебры с приложениями. М.: Мир, 1994. - 544 с.] и [Л.Б.Шнеперман. Курс алгебры и теории чисел в задачах и упражнениях. - Минск, «Вышэйшая школа», 1986. - 272 с.]). Варианты построения конечных множеств векторов многочленов рассмотрены в работе [Молдовян НА. Группы векторов для алгоритмов электронной цифровой подписи // Вестник СПбГУ. Сер.10. 2008].Particular examples of the implementation of the inventive method, similar to the above examples 1-5, can 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 realization 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., "Science", 1971. - 431 pp.], [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. A course in algebra and number theory in problems and exercises. - Minsk, "Higher School", 1986. - 272 p.]). Options for constructing finite sets of polynomial vectors are considered in [Moldovyan NA. Groups of vectors for electronic digital signature algorithms // Bulletin of St. Petersburg State University. Ser. 10. 2008].

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

Приведенные выше примеры экспериментально подтверждают корректность реализации заявляемого способа, что дополняет приведенные выше математические доказательства корректности описанных конкретных реализаций заявленного способа формирования и проверки ЭЦП, заверяющей ЭД.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 the binary digital electromagnetic signal - 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 определяется как 7-кратное последовательное умножение по модулю 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 7-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, - это минимальное из чисел γ, для которых выполняется условие aγ mod n=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 γ mod n = 1 holds, that is q = min {γ 1 , γ 2 , ...} [I. Vinogradov Fundamentals of number theory. - M .: Nauka, 1972. - 167 p.].

13. Операция деления целого числа А на целое число В по модулю n выполняется как операция умножения по модулю n числа А на целое число B-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., "Science", 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. The mathematical elements can be, for example, polynomials, MDC, pairs of MDC, pairs of polynomials, triples of MDC, triples of polynomials, matrices of MDC, matrices of polynomials, etc., over which mathematical actions (operations) are specified. 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, a set of elements of various 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 the group a, the result is element a. A detailed description of the groups is given in the books [A.G. Kurosh. Group theory. - 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.

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 in 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., "Science", 1971. - 431 p.].

20. Поле - это алгебраическая структура (т.е. множество математических элементов различной природы), над элементами которой определены две операции, одна из которых называется сложением, а вторая - умножением. При этом при заданных операциях в эта алгебраическая структура обладает заданным набором свойств: операции сложения и умножения ассоциативны и коммутативны, операция умножения является дистрибутивной относительно операции сложения, а результатом выполнения каждой из этих операций над двумя элементами является также элемент этой же структуры. Причем для каждой из указанных двух операций существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Нейтральный элемент относительно сложения называется нулевым элементом (или просто нулем), а нейтральный элемент относительно умножения называется единичным элементом (или просто единицей). Кроме того, каждому ненулевому элементу а может быть сопоставлен в соответствие единственный элемент а-1, называемый обратным элементом по отношению к данному элементу, такой, что произведение а-1а (а значит и аa-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 in 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 an operation 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 nonzero 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., "Science", 1971. - 431 p.].

21. Циклическая группа - это группа, каждый элемент которой может быть представлен в виде g=аn для некоторого натурального значения n, где а - элемент данной группы, называемый генератором или образующим элементом циклической группы. Степень n означает, что над элементом а выполняются n последовательных операций, т.е. выполняются вычисления по формуле аn=a°a°а°…а (n раз), где «°» обозначает операцию, определенную над элементами группы.21. A cyclic group is a group, each element of which can be represented in the form g = a n for some natural value n, where a is an element of this group, called a generator or generatrix element of a cyclic group. The degree n means that n consecutive operations are performed on element a, i.e. calculations are performed according to the formula a n = a ° a ° a ° ... a (n times), where "°" denotes the operation defined on the elements of the group.

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

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. Вектор битовых строк (вектор БС) - это набор из двух или более БС, каждая из которых представляет заданную алгебраическую структуру. Битовые строки называются координатами (или компонентами) вектора. Вектор БС записывается различными способами, требование к которым состоит в том, чтобы они идентифицировали позиции координат. Например, вектор БС можно записать в виде (a1, а2, …, am), где m≥2 - это размерность вектора БС, означающая число координат (компонентов) в векторе БС. В качестве разделителя может быть использован знак операции, определенной над координатами (компонентами) вектора, и тогда координаты (компоненты) вектора идентифицируются указанием формальной переменной (в начале или в конце соответствующего компонента) в виде буквы латинского алфавита. Формальной называется переменная потому, что ей не приписывается никакого численного значения и она служит только для того, чтобы идентифицировать конкретную позицию координаты (компоненты) вектора БС, независимо от последовательности его записи. Так вектора БС Z1=ае+bi+сj и 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 the 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 vector) 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

у23+ax+b mod p,y 2 = x 3 + ax + b mod p,

где коэффициенты а и b и модуль р определяют конкретный вариант ЭК. Над ЭК определены операция сложения пар МДЧ и операция умножения пары МДЧ на произвольное целое число. Указанные пары МДЧ записываются в виде (х, у), где х называется абсциссой точки, а у - ординатой. Операции, определенные над точками ЭК, выполняются как операции над координатами точек ЭК. В результате вычисляется пара МДЧ, которая является координатами новой точки, являющейся результатом операции. Точки ЭК называются равными, если равны их обе координаты х и у. Детальное описание ЭК можно найти в широко доступных книгах: [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 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 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. Операция сложения двух точек А и В с координатами (хAA) и (хBB), соответственно, выполняется по формулам:28. 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)-yА 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 00000008
, если точки А и В не равны, и
Figure 00000009
, если точки А и В равны.Where
Figure 00000008
if points A and B are not equal, and
Figure 00000009
if points A and B are equal.

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

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

Результатом умножения любой точки ЭК на нуль определяется точка, называемая бесконечно удаленной точкой и обозначаемой буквой О. Две точки А=(х, у) и -А=(х, -у) называются противоположными. Умножение на целое отрицательное число -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 carried out in computing devices as actions on binary digital electromagnetic signals, carried out according to certain rules defined 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. Способ формирования и проверки подлинности электронной цифровой подписи, заверяющей электронный документ, заключающийся в том, что генерируют секретный ключ в виде, по крайней мере, одной битовой строки k, по секретному ключу формируют открытый ключ Y в виде более чем одной битовой строки, принимают электронный документ, представленный битовыми строками Н1, Н2, …, Hz, где z≥1, в зависимости от принятого электронного документа и от значения секретного ключа формируют электронную цифровую подпись Q в виде двух или более битовых строк, в зависимости от открытого ключа, принятого электронного документа и электронной цифровой подписи формируют первое А и второе В проверочные битовые строки, сравнивают их и при совпадении их параметров делают вывод о подлинности электронной цифровой подписи, отличающийся тем, что генерируют секретный ключ в виде многоразрядных двоичных чисел k1, k2, …, ku, где u≥1, и открытый ключ Y формируют в виде m-мерного, где m≥2, вектора битовых строк, для чего генерируют m-мерные векторы битовых строк G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов битовых строк.1. A method of 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 k, using the secret key as the public key Y in the form of more than one bit string, receiving an electronic document represented by bit strings H 1, H 2, ..., H z, where z≥1, depending on the received electronic document and the secret key value of the digital signature form Q as two or more bit lines in the head ing on the public key, the received electronic document and digital signature form the first A and second B screening bit strings, compare them and at the coincidence of their parameters make a conclusion about the authenticity of digital signature, characterized in that the generated secret key in the form of multi-bit binary numbers k 1 , k 2 , ..., k u , where u≥1, and the public key Y are formed in the form of m-dimensional, where m≥2, vector of bit strings, for which m-dimensional vectors of bit strings G 1 , G 2 are generated, ..., G u, and then the public key Y is generated by form f Y = G 1 k1 ° G 2 k2 ° ... ° G u ku, where the symbol ° represents the operation of multiplication vectors bit strings. 2. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного вектора многоразрядных двоичных чисел, для чего генерируют m-мерные векторы многоразрядных двоичных чисел G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов многоразрядных двоичных чисел.2. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional vector of multi-bit binary numbers, for which m-dimensional vectors of multi-bit binary numbers G 1 , G 2 , ..., G u are generated, and then the open the key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G u ku , where the sign ° denotes the operation of multiplying the vectors of multi-bit binary numbers. 3. Способ по п.1, отличающийся тем, что открытый ключ Y формируют в виде m-мерного вектора многочленов, для чего генерируют m-мерные векторы многочленов G1, G2, …, Gu, после чего открытый ключ Y генерируют по формуле
Y=G1k1°G2k2°…°Guku, где знак ° обозначает операцию умножения векторов многочленов.
3. The method according to claim 1, characterized in that the public key Y is formed in the form of an m-dimensional polynomial vector, for which m-dimensional vectors of polynomials G 1 , G 2 , ..., G u are generated, after which the public key Y is generated by the formula
Y = G 1 k1 ° G 2 k2 ° ... ° G u ku , where the sign ° denotes the operation of multiplying the vectors of polynomials.
4. Способ по п.1, отличающийся тем, что генерируют секретный ключ в виде многоразрядных двоичных чисел k1, k2, …, ku, где u=m, и открытый ключ Y формируют в виде m-мерного вектора битовых строк, для чего генерируют m-мерные векторы битовых строк G1, G2, …, Gm, имеющие порядок, равный простому многоразрядному двоичному числу q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2° … °Gmkm, принимают электронный документ, представленный битовыми строками H1, Н2, …, Hm, а электронную цифровую подпись формируют в виде совокупности битовых строк е, s1, s2, …, sm, для чего генерируют случайные многоразрядные двоичные числа t1, t2, …, tm, генерируют вектор битовых строк R по формуле R=G1t1°G2t2° … °Gmtm, затем формируют первую битовую строку е электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого в зависимости от R по формуле e=f(R,H), где f(R,H) - выражение, задающее правило вычисления многоразрядного двоичного числа е, и H=H1||Н2||…||Hm, затем генерируют m битовых строк s1, s2, …, sm электронной цифровой подписи в виде многоразрядных двоичных чисел, вычисляемых по формулам
Figure 00000010
,
Figure 00000011
, …,
Figure 00000012
, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H) и В=е, где вектор битовых строк R' вычисляют по формуле R'=Ye°G1H1s1°G2H2s2° … °GmHmsm.
4. The method according to claim 1, characterized in that they generate a secret key in the form of multi-bit binary numbers k 1 , k 2 , ..., k u , where u = m, and the public key Y is formed as an m-dimensional vector of bit strings, why m-dimensional vectors of bit strings G 1 , G 2 , ..., G m are generated that have an order equal to a simple multi-bit binary number q, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° ... ° G m km , an electronic document is received, represented by the bit strings H 1 , H 2 , ..., H m , and the electronic digital signature is formed as a set of bit strings e, s 1 , s 2 , ..., s m , for which random multi-bit binary numbers t 1 , t 2 , ..., t m are generated, a vector of bit strings R is generated by the formula R = G 1 t1 ° G 2 t2 ° ... ° G m tm , then form the first bit string e of an electronic digital signature in the form of a multi-bit binary number, calculated depending on R by the formula e = f (R, H), where f (R, H) is an expression that defines the rule for calculating a multi-bit binary number e, and H = H 1 || H 2 || ... || H m , then m bit strings s 1 , s 2 , ..., s m are generated of an electronic digital signature in the form of multi-bit binary numbers calculated by the formulas
Figure 00000010
,
Figure 00000011
, ...,
Figure 00000012
and then form the first and second test bit strings A and B according to the formulas A = f (R ', H) and B = e, where the vector of bit strings R' is calculated by the formula R '= Y e ° G 1 H1s1 ° G 2 H2s2 ° ... ° G m Hmsm .
5. Способ по п.1, отличающийся тем, что генерируют секретный ключ в виде многоразрядного двоичного числа k и открытый ключ Y формируют в виде трехмерного вектора битовых строк, для чего генерируют двухмерный вектор битовых строк G, имеющий порядок, равный многоразрядному двоичному числу q, после чего открытый ключ Y генерируют по формуле Y=Gk, принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде двух битовых строк e и s, для чего генерируют случайное многоразрядное двоичное число t, генерируют вектор битовых строк R по формуле R=Gt, затем формируют первую битовую строку е электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого в зависимости от R и H1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем генерируют вторую битовую строку s электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого по формуле s=(t+ke)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H1) и В=е, где вектор битовых строк R' вычисляют по формуле R'=Yq-e°Gs.5. The method according to claim 1, characterized in that the secret key is generated in the form of a multi-bit binary number k and the public key Y is formed in the form of a three-dimensional vector of bit strings, for which a two-dimensional vector of bit strings G is generated, having an order equal to a multi-bit binary number q then open key Y is generated according to the formula Y = g k, taking an electronic document represented by a bit string H 1, and the digital signature is formed as a two bit lines e and s, for which generate multi-digit binary random number t, g wind farms vector bit strings R on the formula R = G t, and then forming a first bit line e of digital signature in the form of multi-bit binary number, computed depending on the R and H 1, according to the formula e = f (R, H 1), where f ( R, H 1 ) is an expression defining a rule for calculating a multi-bit binary number e, then a second bit string s of an electronic digital signature is generated in the form of a multi-bit binary number calculated by the formula s = (t + ke) modq, after which the first and second verification bit strings A and B according to the formulas A = f (R ', H 1 ) and B = e, where the vector bit strings R 'are calculated by the formula R' = Y qe ° G s . 6. Способ по п.1, отличающийся тем, что генерируют секретный ключ в виде двух многоразрядных двоичных чисел k1 и k2 и открытый ключ Y формируют в виде двухмерного вектора битовых строк, для чего генерируют два двухмерных вектора битовых строк G1 и G2, имеющие порядок, равный простому многоразрядному двоичному числу q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2, принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде трех битовых строк е, s1 и s2, для чего генерируют случайные многоразрядные двоичные числа t1 и t2, генерируют двухмерный вектор битовых строк R по формуле R=G1t1°G2t2, затем формируют первую битовую строку е электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого в зависимости от R и H1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем генерируют пару битовых строк s1 и s2 электронной цифровой подписи в виде многоразрядных двоичных чисел, вычисляемых по формулам s1=(t1-k1e)modq и s2=(t2-k2e)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H1) и В=е, где вектор битовых строк R' вычисляют по формуле R'=Ye°G1s1°G2k2.6. The method according to claim 1, characterized in that the secret key is generated in the form of two multi-bit binary numbers k 1 and k 2 and the public key Y is formed as a two-dimensional vector of bit strings, for which two two-dimensional vector of bit strings G 1 and G are generated 2 having an order equal to a simple multi-bit binary number q, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 , an electronic document represented by a bit string H 1 is received, and an electronic digital signature is formed in the form of three bit strings e, s 1 and s 2, which generate instances nye multibit binary numbers t 1 and t 2, generate two-dimensional vector bit strings R on the formula R = G 1 t1 ° G 2 t2, then forming a first bit line e of digital signature in the form of multi-bit binary number, computed depending on the R and H 1 by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating a multi-bit binary number e, then a pair of bit strings s 1 and s 2 of an electronic digital signature are generated in the form of multi-bit binary numbers calculated by the formulas s 1 = (t 1 -k 1 e) modq and s 2 = (t 2 -k 2 e) modq, and then form the first and second check bit strings A and B according to the formulas A = f (R ', H 1 ) and B = e, where the vector of bit strings R' is calculated by the formula R '= Y e ° G 1 s1 ° G 2 k2 . 7. Способ по п.1, отличающийся тем, что генерируют секретный ключ в виде двух многоразрядных двоичных чисел k1 и k2 и открытый ключ Y формируют в виде пятимерного вектора битовых строк, для чего генерируют два пятимерных вектора битовых строк G1 и G2, имеющие порядки, равные простым многоразрядным двоичным числам q1 и q2 соответственно, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2, принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде трех битовых строк е, s1 и s2, для чего генерируют случайные многоразрядные двоичные числа t1 и t2, генерируют вектор битовых строк R по формуле R=G1t1°G2t2, затем формируют первую битовую строку е электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого в зависимости от R и H1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем генерируют пару битовых строк s1 и s2 электронной цифровой подписи в виде многоразрядных двоичных чисел, вычисляемых по формулам s1=(t1-k1e)modq1 и s2=(t2-k2e)modq2, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H1) и В=е, где вектор битовых строк R' вычисляют по формуле R'=Ye°G1s1°G2s2.7. The method according to claim 1, characterized in that the secret key is generated in the form of two multi-bit binary numbers k 1 and k 2 and the public key Y is formed as a five-dimensional vector of bit strings, for which two five-dimensional vector of bit strings G 1 and G are generated 2 having orders equal to simple multi-bit binary numbers q 1 and q 2, respectively, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 , an electronic document represented by a bit string H 1 is received, and an electronic digital signature is generated a three bit lines e, s 1 and s 2 for cheg generating a random multi-bit binary numbers t 1 and t 2, generating the vector bit strings R on the formula R = G 1 t1 ° G 2 t2, then forming a first bit line e of digital signature in the form of multi-bit binary number, computed depending on the R and H 1 by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating a multi-bit binary number e, then a pair of bit strings s 1 and s 2 of an electronic digital signature are generated in the form of multi-bit binary numbers , calculated by the formulas 1 s = (t 1 -k 1 e) modq 1 and s 2 = (t 2 -k 2 e) modq 2, then the odds iruyut first and second parity bit strings A and B according to the formulas A = f (R ', H 1) and B = e, where the vector bit string R' is calculated according to the formula R '= Y e ° G 1 s1 ° G 2 s2. 8. Способ по п.1, отличающийся тем, что генерируют секретный ключ в виде трех многоразрядных двоичных чисел k1, k2 и k3 и открытый ключ Y формируют в виде трехмерного вектора битовых строк, для чего генерируют три трехмерных вектора битовых строк G1, G2 и G3, имеющие порядок, равный простому многоразрядному двоичному числу q, после чего открытый ключ Y генерируют по формуле Y=G1k1°G2k2°G3k3, принимают электронный документ, представленный битовой строкой Н1, а электронную цифровую подпись формируют в виде четырех битовых строк е, s1, s2 и s3, для чего генерируют случайные многоразрядные двоичные числа t1, t2 и t3, генерируют вектор битовых строк R по формуле R=G1t1°G2t2°G3t3, затем формируют первую битовую строку е электронной цифровой подписи в виде многоразрядного двоичного числа, вычисляемого в зависимости от R и H1 по формуле e=f(R,H1), где f(R,H1) - выражение, задающее правило вычисления многоразрядного двоичного числа е, затем генерируют тройку битовых строк s1, s2 и
s3 электронной цифровой подписи в виде многоразрядных двоичных чисел, вычисляемых по формулам s1=(t1-k1e)modq, s2=(t2-k2e)modq и s3=(t3-k3e)modq, после чего формируют первую и вторую проверочные битовые строки А и В по формулам A=f(R',H1) и В=е, где вектор битовых строк R' вычисляют по формуле
R'=Ye°G1s1°G2s2°G2s2.
8. The method according to claim 1, characterized in that the secret key is generated in the form of three multi-bit binary numbers k 1 , k 2 and k 3 and the public key Y is formed as a three-dimensional vector of bit strings, for which three three-dimensional vector of bit strings G are generated 1 , G 2 and G 3 having an order equal to a simple multi-bit binary number q, after which the public key Y is generated by the formula Y = G 1 k1 ° G 2 k2 ° G 3 k3 , an electronic document represented by a bit string H 1 is received, and an electronic digital signature is formed in the form of four bit strings e, s 1 , s 2 and s 3 , for which generate random multi-bit binary numbers t 1 , t 2 and t 3 , generate a vector of bit strings R according to the formula R = G 1 t1 ° G 2 t2 ° G 3 t3 , then form the first bit string e of an electronic digital signature in the form of a multi-bit binary number, calculated depending on R and H 1 by the formula e = f (R, H 1 ), where f (R, H 1 ) is an expression defining the rule for calculating a multi-bit binary number e, then a triple of bit strings s 1 , s 2 and
s 3 electronic digital signature in the form of multi-bit binary numbers calculated by 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 test bit strings A and B are formed by the formulas A = f (R ', H 1 ) and B = e, where the vector of bit strings R' is calculated by the formula
R '= Y e ° G 1 s1 ° G 2 s2 ° G 2 s2 .
RU2008130758/09A 2008-07-24 2008-07-24 Method of generating and authenticating electronic digital signature certifying electronic document RU2382505C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2008130758/09A RU2382505C1 (en) 2008-07-24 2008-07-24 Method of generating and authenticating electronic digital signature certifying electronic document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2008130758/09A RU2382505C1 (en) 2008-07-24 2008-07-24 Method of generating and authenticating electronic digital signature certifying electronic document

Publications (1)

Publication Number Publication Date
RU2382505C1 true RU2382505C1 (en) 2010-02-20

Family

ID=42127245

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008130758/09A RU2382505C1 (en) 2008-07-24 2008-07-24 Method of generating and authenticating electronic digital signature certifying electronic document

Country Status (1)

Country Link
RU (1) RU2382505C1 (en)

Similar Documents

Publication Publication Date Title
US9772821B2 (en) Cryptography method comprising an operation of multiplication by a scalar or an exponentiation
US9520995B2 (en) Efficient prime-number check
WO2012090288A1 (en) Cryptographic processing device, method of cryptographic processing and program
CN107040362A (en) Modular multiplication apparatus and method
US8750500B2 (en) Multi-dimensional montgomery ladders for elliptic curves
US11902432B2 (en) System and method to optimize generation of coprime numbers in cryptographic applications
Hart et al. A Practical Cryptanalysis of WalnutDSA^ TM TM
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
Márquez-Corbella et al. Computational aspects of retrieving a representation of an algebraic geometry code
Barenghi et al. A novel fault attack against ECDSA
CN111740821B (en) Method and device for establishing shared secret key
CN103929305A (en) SM2 signature algorithm implementation method
RU2401513C2 (en) Method for generating and verification electronic digital signature authenticating electronic document
RU2380838C1 (en) Method for creation and authentication of electronic digital signature confirming electronic document
RU2392736C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2382505C1 (en) Method of generating and authenticating electronic digital signature certifying electronic document
Jahani et al. Efficient big integer multiplication and squaring algorithms for cryptographic applications
US20140286488A1 (en) Determining a Division Remainder and Ascertaining Prime Number Candidates for a Cryptographic Application
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
RU2356172C1 (en) Method for generation and authentication of electronic digital signature that verifies electronic document
RU2369973C1 (en) Method for generation and authentication of electronic digital signature that certifies electronic document
RU2450438C1 (en) Method of creating and authenticating collective electronic digital signature certifying electronic document
CN114710293B (en) Digital signature method, device, electronic equipment and storage medium

Legal Events

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

Effective date: 20100725