RU2356172C1 - Method for generation and authentication of electronic digital signature that verifies electronic document - Google Patents
Method for generation and authentication of electronic digital signature that verifies electronic document Download PDFInfo
- Publication number
- RU2356172C1 RU2356172C1 RU2007130982/09A RU2007130982A RU2356172C1 RU 2356172 C1 RU2356172 C1 RU 2356172C1 RU 2007130982/09 A RU2007130982/09 A RU 2007130982/09A RU 2007130982 A RU2007130982 A RU 2007130982A RU 2356172 C1 RU2356172 C1 RU 2356172C1
- Authority
- RU
- Russia
- Prior art keywords
- formula
- elliptic curve
- point
- generated
- bit binary
- Prior art date
Links
Abstract
Description
Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов аутентификации электронных сообщений, передаваемых по телекоммуникационным сетям и сетям ЭВМ, и может быть использовано в системах передачи электронных сообщений (документов), заверенных электронной цифровой подписью (ЭЦП), представленной в виде многоразрядного двоичного числа (МДЧ). Здесь и далее под МДЧ понимается электромагнитный сигнал в двоичной цифровой форме, параметрами которого являются число битов и порядок следования их единичных и нулевых значений 1) The invention relates to the field of telecommunications and computer technology, and more particularly to the field of cryptographic authentication methods for electronic messages transmitted over telecommunication networks and computer networks, and can be used in electronic message systems (documents) certified by electronic digital signature (EDS) presented in as a multi-bit binary number (MDC). Hereinafter, MDC means an electromagnetic signal in binary digital form, the parameters of which are the number of bits and the order of their unit and zero values 1)
(1) толкование используемых в описании терминов приведено в Приложении 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 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, формируют открытый ключ (n, е) в виде пары МДЧ n и е, где n - число, представляющее собой произведение двух простых МДЧ р и q, и е - МДЧ, удовлетворяющее условию ed=1 mod (p-1)(q-1), принимают электронный документ (ЭД), представленный МДЧ Н;form a secret key in the form of three simple MDC p, q and d, form a public key (n, e) in the form of a pair of MDC n and e, where n is a number representing the product of two simple MDC p and q, and e is a MDC, satisfying the condition ed = 1 mod (p-1) (q-1), an electronic document (ED) submitted by MDC H is received;
в зависимости от значения Н и значения секретного ключа формируют ЭЦП в виде МДЧ Q=S=Hd mod n;depending on the value of H and the value of the secret key form an electronic digital signature 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 на множители р и q.The disadvantage of this method is the relatively large size of the signature and the need to increase the size of the signature when developing new, more efficient methods for decomposing the number n into factors or with an increase in the productivity of modern computing devices. This is because the value of the signature element S is calculated by performing arithmetic operations modulo n, and the stability of the digital signature is determined by the complexity of the decomposition of the module n into factors p and q.
Известен также способ формирования и проверки подлинности ЭЦП Эль-Гамаля, описанный в книге [Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. - СПб, Лань, 2000. - с.156-159], который включает следующие действия:There is also a known method of forming and verifying the authenticity of the digital signature of El-Gamal, described in the book [Moldovyan A.A., Moldovyan N.A., Sovetov B.Ya. Cryptography. - St. Petersburg, Doe, 2000. - p.156-159], which includes the following actions:
формируют простое МДЧ р и двоичное число G, являющееся первообразным корнем по модулю р, генерируют секретный ключ в виде МДЧ х, в зависимости от секретного ключа формируют открытый ключ в виде МДЧ Y=Gx mod р, принимают ЭД, представленный в виде МДЧ Н, в зависимости от H и секретного ключа формируют ЭЦП Q в виде двух МДЧ S и R, то есть Q=(S, R);they 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);
осуществляют процедуру проверки подлинности ЭЦП, включающую вычисление двух контрольных параметров с использованием исходных МДЧ р, G, Y, H и S путем возведения МДЧ G, Y, R в дискретную степень по модулю р и сравнение вычисленных контрольных параметров;carry out a digital signature authentication procedure, including calculating two control parameters using the original MDC p, G, Y, H, and S by raising the MDC G, Y, R to a discrete degree modulo p and comparing the calculated control parameters;
при совпадении значений контрольных параметров делают вывод о подлинности ЭЦП.when the values of the control parameters coincide, they conclude that the digital signature is authentic.
Недостатком данного способа также является относительно большой размер ЭЦП. Это объясняется тем, что значения элементов подписи S и R вычисляют путем выполнения арифметических операций по модулю р-1 и по модулю р соответственно.The disadvantage of this method is also the relatively large size of the EDS. This is because the values of the signature elements S and R are calculated by performing arithmetic operations modulo p-1 and modulo p, respectively.
Известен также способ формирования и проверки ЭЦП, предложенный в патенте США №4995089 от 19.02.1991. Известный способ заключается в следующей последовательности действий:There is also a known method of forming and verifying EDS, proposed in US patent No. 4995089 of 02.19.1991. The known method consists in the following sequence of actions:
формируют простое МДЧ р, такое, что р=Nq+1, где q - простое МДЧ;form a simple MDC p, such that p = Nq + 1, where q is a simple MDC;
формируют простое МДЧ а, такое что а≠1 и аq mod р=1;form a simple MDC a, such that a ≠ 1 and a q mod p = 1;
методом генерации случайной равновероятной последовательности формируют секретный ключ в виде МДЧ х;by generating a random equiprobable sequence generate a secret key in the form of MDC x;
формируют открытый ключ в виде МДЧ y по формуле y=ax mod p;form a public key in the form of MDC y according to the formula y = a x mod p;
принимают ЭД, представленный МДЧ М;accept ED submitted by MDC M;
формируют ЭЦП в виде пары МДЧ (е, s), для чего генерируют случайное МДЧ t, формируют МДЧ R по формуле R=at mod р, формируют МДЧ е=f(M||R), где знак || обозначает операцию присоединения двух МДЧ и f - некоторая специфицированная хэш-функция, значение которой имеет фиксированную длину (обычно 160 или 256 бит), независим от размера аргумента, т.е. от размера МДЧ M||R, а затем формируют МДЧ s по формуле s=(t-ex) mod q;form an EDS in the form of a pair of MDC (e, s), for which a random MDC t is generated, form a MDC R according to the formula R = a t mod p, form a MDC e = f (M || R), where the sign || denotes the operation of joining two MDCs and f is some specified hash function, the value of which has a fixed length (usually 160 or 256 bits), regardless of the size of the argument, i.e. from the size of the MDC M || R, and then form the MDC s according to the formula s = (t-ex) mod q;
формируют первое проверочное МДЧ А, для чего генерируют МДЧ R' по формуле R'=asys mod p и формируют МДЧ е'=f(M||R');form the first verification MDC A, for which MDC R ′ is generated according to the formula R ′ = a s y s mod p and form the MDC e ′ = f (M || R ′);
формируют второе проверочное МДЧ В путем копирования МДЧ е: В=е;form the second verification MDC In by copying MDC e: B = e;
сравнивают сформированные проверочные МДЧ А и В;comparing the generated verification MDC A and B;
при совпадении параметров сравниваемых МДЧ А и В делают вывод о подлинности ЭЦП.when the parameters of the compared MDC A and B coincide, they conclude that the digital signature is authentic.
Недостатком способа по патенту США является относительно высокая вычислительная сложность процедуры формирования и проверки ЭЦП, что связано с тем, что для обеспечения минимально требуемого уровня стойкости требуется использовать простой модуль р разрядностью не менее 1024 бит.The disadvantage of the method according to US patent is the relatively high computational complexity of the procedure for the formation and verification of the digital signature, which is due to the fact that to ensure the minimum required level of resistance it is required to use a simple module with a bit capacity of at least 1024 bits.
Наиболее близким по своей технической сущности к заявленному является известный способ формирования и проверки подлинности ЭЦП, предлагаемый российским стандартом ГОСТ Р 34.10-2001 и описанный, например, в книге [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111)], согласно которому ЭЦП формируется в виде пары МДЧ r и s, для чего генерируют эллиптическую кривую (ЭК) в виде совокупности точек, причем каждая точка представляется двумя координатами в декартовой системе координат в виде двух МДЧ, называемых абсциссой (x) и ординатой (y), затем осуществляют операции генерации точек ЭК, сложения точек ЭК и умножения точки ЭК на число, а также арифметические операции над МДЧ, после чего в результате выполненных операций формируются МДЧ r и s. Указанные операции над точками выполняются как операции над МДЧ, являющимися координатами точек, по известным формулам [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.110-111)]. В прототипе генерируют ЭК, описываемую уравнением y2=x3+ax+b mod р, поэтому генерация ЭК состоит в генерации чисел a, b и р, являющихся параметрами ЭК и однозначно задающих множество точек ЭК как множество точек, абсцисса и ордината которых удовлетворяет указанному уравнению. Ближайший аналог (прототип) заключается в выполнении следующей последовательности действий:Closest in technical essence to the claimed one is the well-known method of forming and verifying the authenticity of the digital signature, proposed by the Russian standard GOST R 34.10-2001 and described, for example, in the book [B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M., Hot line - Telecom, 2005 .-- 229 p. (see p.110-111)], according to which the digital signature is formed as a pair of MDC r and s, for which an elliptic curve (EC) is generated as a set of points, each point being represented by two coordinates in a Cartesian coordinate system as two MDC , called abscissa (x) and ordinate (y), then carry out 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)]. In the prototype, an EC is described by the equation y 2 = x 3 + ax + b mod p, therefore, the generation of EC is the generation of numbers a, b and p, which are parameters of the EC and uniquely specify the set of EC points as the set of points whose abscissa and ordinate satisfy the specified equation. The closest analogue (prototype) is to perform the following sequence of actions:
генерируют эллиптическую кривую (ЭК), которая представляет собой совокупность пар МДЧ, называемых точками ЭК и обладающих определенными свойствами (см. Приложение 1, пп.15-19);generate an elliptic curve (EC), which is a collection of MDC pairs, called EC points and having certain properties (see Appendix 1, paragraphs 15-19);
методом генерации случайной равновероятной последовательности формируют секретные ключи в виде МДЧ k1, k2, …, kn;by generating a random equiprobable sequence generate secret keys in the form of MDC k 1 , k 2 , ..., k n ;
формируют открытые ключи в виде точек ЭК P1, Р2, …, Рn, для чего генерируют точку G, имеющую значение порядка равное q (порядком точки ЭК называется наименьшее положительное целое число q, такое что результатом умножения данной точки на число q является так называемая бесконечно удаленная точка О; результатом умножения любой точки ЭК на нуль по определениию является точка О [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)]; см. также Приложение 1, пп.15-19) и генерируют открытые ключи путем умножения точки G на МДЧ k1, k2, …, kn, т.е. формируют открытые ключи по формулам P1=k1G, Р2=k2G, …, Рn=knG;form public keys in the form of EC points P 1 , P 2 , ..., P n , for which a point G is generated having an order value equal to q (the order of an EC point is the smallest positive integer q such that the result of multiplying this point by q is the so-called infinitely distant point O; the result of multiplying any EC point by zero by definition is the point O [B.Ya. Ryabko, AN Fionov. Cryptographic methods of information protection. M., Hot line - Telecom, 2005. - 229 p. . (see p. 97-130)]; see also Appendix 1, paragraphs 15-19) and generate public keys Uteem G MDCH point multiplication by k 1, k 2, ..., k n, i.e. form public keys according to the formulas P 1 = k 1 G, P 2 = k 2 G, ..., P n = k n G;
принимают ЭД, представленный МДЧ Н;accept ED submitted by MDCH N;
генерируют случайное МДЧ 0<t<q, по которому формируют точку R по формуле R=tG;generating a random MDC 0 <t <q, according to which a point R is formed according to the formula R = tG;
формируют ЭЦП Q в виде пары МДЧ (r, s), для чего генерируют МДЧ r по формуле r=xR mod q, где xR - абсцисса точки R, а затем генерируют МДЧ s по формуле s=(tH+rki) mod q, где 1≤i≤n;form an EDS Q in the form of a pair of MDC (r, s), for which MDC r is generated by the formula r = x R mod q, where x R is the abscissa of the point R, and then MDC s is generated by the formula s = (tH + rk i ) mod q, where 1≤i≤n;
формируют первое проверочное МДЧ А, для чего генерируют МДЧ v по формуле v=sH-1 mod q и МДЧ w по формуле w=(q-rH-1) mod q, затем генерируют точку R' по формуле R'=vG+wPi, после чего МДЧ А получают по формуле А=xR' mod q, где xR' - абсцисса точки R';form the first verification MDC A, for which MDC v is generated by the formula v = sH -1 mod q and MDC w by the formula w = (q-rH -1 ) mod q, then the point R 'is generated by the formula R' = vG + wP i , after which MDC A is obtained by the formula A = x R ' mod q, where x R' is the abscissa of the point R ';
формируют второе проверочное МДЧ В путем копирования МДЧ r: В=r;form the second verification MDC B by copying the MDC r: B = r;
сравнивают сформированные проверочные МДЧ А и В;comparing the generated verification MDC A and B;
при совпадении параметров сравниваемых МДЧ А и В делают вывод о подлинности ЭЦП.when the parameters of the compared MDC A and B coincide, they conclude that the digital signature is authentic.
Недостатком ближайшего аналога является возрастание размера коллективной ЭЦП, т.е. ЭЦП устанавливающей факт подписания некоторого заданного документа двумя и более пользователями пропорционально числу пользователей, подписывающих заданный ЭД, что обусловлено тем, что каждый пользователь формирует ЭЦП, которая не зависит от ЭЦП других пользователей.The disadvantage of the closest analogue is the increase in the size of the collective EDS, i.e. EDS establishing the fact of signing a given document by two or more users in proportion to the number of users signing a given ED, which is due to the fact that each user creates an EDS that is independent of the EDS of other users.
Целью изобретения является разработка способа формирования и проверки подлинности ЭЦП, заверяющей ЭД, зависящей от произвольной совокупности секретных ключей пользователей и имеющей фиксированный размер, т.е. размер, который не зависит от числа пользователей, которым принадлежит данная коллективная подпись, благодаря чему уменьшается размер коллективной ЭЦП.The aim of the invention is to develop a method for generating and verifying the authenticity of an electronic digital signature verifying an ED, depending on an arbitrary set of user secret keys and having a fixed size, i.e. a size that does not depend on the number of users who own this collective signature, which reduces the size of the collective digital signature.
Поставленная цель достигается тем, что в известном способе формирования и проверки подлинности ЭЦП, заверяющей ЭД, заключающемся в том, что генерируют эллиптическую кривую в виде совокупности точек, каждая из которых определяется парой МДЧ, являющихся соответственно абсциссой и ординатой данной точки эллиптической кривой в декартовой системе координат, формируют совокупность из n≥2 секретных ключей в виде МДЧ k1, k2, …, kn, по секретным ключам формируют n открытых ключей в виде точек P1, Р2, …, Рn эллиптической кривой, принимают ЭД, представленный МДЧ Н, в зависимости от принятого электронного документа и от значения секретного ключа формируют ЭЦП Q в виде двух или более МДЧ, формируют первое А и второе В проверочные МДЧ, сравнивают их и при совпадении их параметров делают вывод о подлинности ЭЦП, новым является то, что дополнительно формируют коллективный открытый ключ в виде точки Р эллиптической кривой, генерируемой в зависимости от точек эллиптической кривой , , …, , где α1, α2, …, αm - натуральные числа, 2≤m≤n, αj≤n и j=1, 2, …, m, причем, по крайней мере, одно из проверочных МДЧ формируют в зависимости от коллективного открытого ключа Р.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 an elliptic curve in the form of a set of points, each of which is determined by a pair of MDCs, which are respectively the abscissa and ordinate of a given point of the elliptic curve in the Cartesian system coordinates, form a set of n≥2 secret keys in the form of MDC k 1 , k 2 , ..., k n , secret keys form n public keys in the form of points P 1 , P 2 , ..., P n of an elliptic curve, take the ED, presented the established MDC N, depending on the received electronic document and the value of the secret key, generate an EDS Q in the form of two or more MDCs, form the first A and second B verification MDCs, compare them and, if their parameters coincide, make a conclusion about the authenticity of the EDS, the new that additionally form a collective public key in the form of a point P of an elliptic curve generated depending on the points of the elliptic curve , , ..., , where α 1 , α 2 , ..., α m are natural numbers, 2≤m≤n, α j ≤n and j = 1, 2, ..., m, and at least one of the verification MDCs is formed as a function of from the collective public key R.
Новым является также то, что коллективный открытый ключ Р формируют в зависимости от точек эллиптической кривой , , …, , по формуле Also new is that the collective public key P is formed depending on the points of the elliptic curve , , ..., , according to the formula
где wj - вспомогательные МДЧ.where w j - auxiliary MDC.
Новым является также и то, что при формировании открытых ключей точки P1, Р2, …, Рn эллиптической кривой генерируют по формуле Рi=diG, где i=1, 2, …, n, G - дополнительно сгенерированная точка эллиптической кривой, a di=zki mod q, z>1 - натуральное число, q - порядок точки G эллиптической кривой, ЭЦП Q формируют в виде четырех МДЧ xR, yR, хZ и yZ, для чего генерируют m случайных МДЧ …, генерируют m точек …, эллиптической кривой по формуле где j=1, 2, …, m, после чего генерируют первое и второе МДЧ электронной цифровой подписи в виде соответственно абсциссы xR и ординаты yR точки R эллиптической кривой путем генерации точки R эллиптической кривой по формуле затем генерируют промежуточное МДЧ е по формуле е=хRН mod δ, где xR - абсцисса точки R и δ - вспомогательное МДЧ, генерируют m точек …, эллиптической кривой по формуле после чего генерируют третье и четвертое МДЧ электронной цифровой подписи в виде соответственно абсциссы xZ и ординаты yZ точки Z эллиптической кривой путем генерации точки Z эллиптической кривой по формуле причем первое проверочное МДЧ А формируют по формуле А=xW, где xW - абсцисса точки W эллиптической кривой, вычисленной по формуле W=zZ, а второе проверочное МДЧ В формируют по формуле В=хU, где хU - абсцисса точки U эллиптической кривой, вычисленной по формуле U=еР+R.Also new is that when generating public keys, points P 1 , P 2 , ..., P n of an elliptic curve are generated by the formula P i = d i G, where i = 1, 2, ..., n, G is an additionally generated point elliptic curve, ad i = zk i mod q, z> 1 is a natural number, q is the order of the point G of the elliptic curve, EDS Q is formed in the form of four MDCs x R , y R , x Z and y Z , for which m random MDC ... generate m points ... elliptic curve according to the formula Where j = 1, 2, ..., m, after which the first and second MDC electronic digital signatures are generated in the form of abscissas x R and ordinates y R of the point R of the elliptic curve by generating the point R of the elliptic curve according to the formula then an intermediate MDC e is generated by the formula e = x R H mod δ, where x R is the abscissa of the point R and δ is the auxiliary CDM, m points are generated ... elliptic curve according to the formula then generate the third and fourth MDC electronic digital signatures in the form of abscissas x Z and ordinates y Z of the point Z of the elliptic curve by generating the point Z of the elliptic curve according to the formula moreover, the first verification MDC A is formed by the formula A = x W , where x W is the abscissa of the point W of the elliptic curve calculated by the formula W = zZ, and the second verification MDC B is formed by the formula B = x U , where x U is the abscissa of the point U elliptic curve calculated by the formula U = eP + R.
Новым также является и то, что при формировании открытых ключей точки P1, Р2, …, Рn эллиптической кривой генерируют по формуле Pi=diG, где i=1, 2, …, n, G - дополнительно сгенерированная точка эллиптической кривой, a di=zki, mod q, z>1 - натуральное число, q - порядок точки G эллиптической кривой, ЭЦП Q формируют в виде трех МДЧ е, xZ и yZ, для чего генерируют m случайных МДЧ …, генерируют m точек …, эллиптической кривой по формуле где j=1, 2, …, m, генерируют точку R эллиптической кривой по формуле после чего формируют первое МДЧ е электронной цифровой подписи по формуле е=хRН mod δ, где xR - абсцисса точки R и δ - вспомогательное МДЧ, затем генерируют m точек …, эллиптической кривой по формуле после чего генерируют второе и третье МДЧ электронной цифровой подписи в виде соответственно абсциссы xZ и ординаты yZ точки Z эллиптической кривой путем генерации точки Z эллиптической кривой по формуле причем первое проверочное МДЧ А формируют по формулеAlso new is the fact that when generating public keys, points P 1 , P 2 , ..., P n of an elliptic curve are generated by the formula P i = d i G, where i = 1, 2, ..., n, G is an additionally generated point elliptic curve, ad i = zk i , mod q, z> 1 is a natural number, q is the order of the point G of the elliptic curve, EDS Q is formed in the form of three MDCs e, x Z and y Z , for which m random MDCs are generated ... generate m points ... elliptic curve according to the formula Where j = 1, 2, ..., m, generate a point R of the elliptic curve according to the formula then form the first MDC e electronic digital signature according to the formula e = x R H mod δ, where x R is the abscissa of the point R and δ is the auxiliary MDC, then m points are generated ... elliptic curve according to the formula then generate the second and third MDC electronic digital signatures in the form of abscissas x Z and ordinates y Z of the point Z of the elliptic curve by generating the point Z of the elliptic curve according to the formula moreover, the first verification MDC And form according to the formula
А=хR'Н mod δ,A = x R ' H mod δ,
где xR' - абсцисса точки R' эллиптической кривой, вычисленной по формуле R'=zZ-еР, а второе проверочное МДЧ В формируют по формуле В=е.where x R ' is the abscissa of the point R' of the elliptic curve calculated by the formula R '= zZ-eP, and the second verification MDC B is formed by the formula B = e.
Новым также является и то, что при формировании открытых ключей точки P1, P2, …, Pn эллиптической кривой генерируют по формуле Pi=kiG, где i=1, 2, …, n, G - дополнительно сгенерированная точка эллиптической кривой, имеющая порядок q, а ЭЦП формируют в виде пары МДЧ е и s, для чего генерируют m случайных МДЧ …, генерируют m точек …, эллиптической кривой по формуле где j=1, 2, …, m, генерируют точку R эллиптической кривой по формуле после чего формируют первое МДЧ е электронной цифровой подписи по формуле е=хRН mod δ, где xR - абсцисса точки R и δ - вспомогательное простое МДЧ, затем генерируют m МДЧ , …, по формуле после чего генерируют второе МДЧ s электронной цифровой подписи по формуле Also new is the fact that when generating public keys, points P 1 , P 2 , ..., P n of an elliptic curve are generated by the formula P i = k i G, where i = 1, 2, ..., n, G is an additionally generated point an elliptic curve of order q, and the EDS is formed as a pair of MDCs e and s, for which m random MDCs are generated ... generate m points ... elliptic curve according to the formula where j = 1, 2, ..., m, generate a point R of the elliptic curve according to the formula then form the first MDC e of an electronic digital signature according to the formula e = x R H mod δ, where x R is the abscissa of the point R and δ is the auxiliary simple MDC, then m MDCs are generated , ... according to the formula then generate the second MDC s electronic digital signature according to the formula
причем первое проверочное МДЧ А формируют по формулеmoreover, the first verification MDC And form according to the formula
А=xR'H mod δ,A = x R ' H mod δ,
где хR' - абсцисса точки R' эллиптической кривой, вычисленной по формуле R'=еР+sG, а второе проверочное МДЧ В формируют по формуле В=е.where x R ' is the abscissa of the point R' of the elliptic curve calculated by the formula R '= eP + sG, and the second verification MDC B is formed by the formula B = e.
Предлагаемый способ может быть использован для числа пользователей равного n≥2. Пользователи условно обозначаются номерами i=1, 2, …, n. Этот номер используется как индекс, указывающий на то, какому пользователю принадлежит секретный и открытый ключи, или на то, какой из пользователей генерирует отмеченные индексом МДЧ или точки ЭК. Из совокупности n пользователей некоторое их подмножество, состоящее из m произвольно выбранных пользователей, может быть задано номерами пользователей входящих в данное подмножество, например номерами α1, α2, …, αm, каждый из которых выбирается из множества чисел 1, 2, …, n. Таким образом, числа αj, где j=1, 2, …, m, представляют собой выборку произвольных m номеров из множества {1, 2, …, n}, при этом m≤n. Соответственно этому совокупность открытых ключей …, представляет собой выборку из множества всех открытых ключей P1, P2, …, Pn, а совокупность секретных ключей ka, где j=1, 2, …, m, представляет собой выборку из множества всех секретных ключей ki, где i=1, 2, …, n.The proposed method can be used for the number of users equal to n≥2. Users are conventionally indicated by numbers i = 1, 2, ..., n. This number is used as an index indicating which user owns the secret and public keys, or which user generates the MDC or EC points marked with the index. From the set of n users, some of their subset, consisting of m randomly selected users, can be defined by the numbers of users included in this subset, for example, by the numbers α 1 , α 2 , ..., α m , each of which is selected from the set of numbers 1, 2, ... , n. Thus, the numbers α j , where j = 1, 2, ..., m, are a sample of arbitrary m numbers from the set {1, 2, ..., n}, with m≤n. Accordingly, the set of public keys ... is a sample of the set of all public keys P 1 , P 2 , ..., P n , and the set of private keys k a , where j = 1, 2, ..., m, is a sample of the set of all private keys k i , where i = 1, 2, ..., n.
Корректность заявленного способа доказывается теоретически. Рассмотрим, например, вариант реализации способа по п.5 формулы изобретения. Коллективный открытый ключ, соответствующий подмножеству пользователей с условными номерами α1, α2, …, αm, представляет собой точкуThe correctness of the claimed method is proved theoretically. Consider, for example, an embodiment of the method according to claim 5. A collective public key corresponding to a subset of users with conditional numbers α 1 , α 2 , ..., α m represents a point
Значения которые представляют собой «доли» пользователей в коллективной подписи, генерируются по формуле поэтомуValues which represent the "shares" of users in a collective signature, are generated by the formula so
Значение точки R', используемой для формирования первого проверочного МДЧ А, генерируется по формуле R'=еР+sG, т.е. оно равноThe value of the point R 'used to form the first verification MDC A is generated by the formula R' = eP + sG, i.e. it is equal
Следовательно, A=xR'Hmodδ=xRHmodδ=e=В, т.е. правильно сформированная коллективная подпись удовлетворяет процедуре проверки подписи, т.е. корректность процедур генерации и проверки ЭЦП доказана.Therefore, A = x R ' Hmodδ = x R Hmodδ = e = В, i.e. A correctly formed collective signature satisfies the signature verification procedure, i.e. the correctness of the procedures for generating and verifying EDS is proved.
Рассмотрим примеры реализации заявленного технического решения с использованием ЭК, описываемой уравнением (см. Приложение 1, пп.15-19):Consider examples of the implementation of the claimed technical solution using EC described by the equation (see Appendix 1, paragraphs 15-19):
y2=х3+ax+bmodp,y 2 = x 3 + ax + bmodp,
где конкретные значения использованных параметров описаны в приводимых ниже численных примерах. Использованные в примерах ЭК были сгенерирована с помощью программы, разработанной специально для генерации ЭК, генерации точек ЭК, включая точки с заданным порядком, и выполнения операций над точками ЭК. Приводимые в примере МДЧ записаны для краткости в виде десятичных чисел, которые в вычислительных устройствах представляются и преобразуются в двоичном виде, т.е. в виде последовательности сигналов высокого и низкого потенциала.where specific values of the parameters used are described in the numerical examples given below. The ECs used in the examples were generated using a program developed specifically for generating ECs, generating EC points, including points with a given order, and performing operations on EC points. The MDC given in the example are written for brevity in the form of decimal numbers, which are represented and converted in binary form in computing devices, i.e. as a sequence of high and low potential signals.
Пример 1. Реализация заявляемого способа по п.2 формулы изобретенияExample 1. The implementation of the proposed method according to claim 2 of the claims
В данном примере иллюстрируется п.2 формулы изобретения. В нем используется ЭК с параметрами, обеспечивающими достаточную стойкость для применения при решении реальных практических задач аутентификации информации. Этот пример иллюстрирует реальные размеры чисел, которые используются на практике при генерации и проверке подлинности ЭЦП. Особенностью данного примера является то, что принимают ЭД (представленный МДЧ Н), который состоит из двух частей, представленных МДЧ Н1 и Н2. При этом первый пользователь подписывает первую часть документа, второй пользователь - вторую, а третий пользователь подписывает весь документ целиком. Возможность реализации коллективной ЭЦП с такими свойствами обеспечивается за счет того, что при проверке ЭЦП используется коллективный открытый ключ, формируемый в зависимости от открытых ключей пользователей по формуле Р=w1P1+w2P2+w3Р3, где w1=Н1, w2=H2 и w3=Н3.This example illustrates claim 2 of the claims. It uses EC with parameters that provide sufficient durability for use in solving real practical problems of information authentication. This example illustrates the real sizes of numbers that are used in practice in the generation and authentication of digital signatures. A feature of this example is that they accept ED (represented by MDC N), which consists of two parts represented by MDC N 1 and N 2 . In this case, the first user signs the first part of the document, the second user - the second, and the third user signs the entire document. The possibility of implementing a collective digital signature with such properties is ensured by the fact that when checking the digital signature, a collective public key is used, which is generated depending on the user's public keys according to the formula P = w 1 P 1 + w 2 P 2 + w 3 P 3 , where w 1 = H 1 , w 2 = H 2 and w 3 = H 3 .
В примере 1 используется ЭК, определяемая следующими параметрами:Example 1 uses an EC defined by the following parameters:
а=5521767865737634555390416300599776622347333359784, b=9717196 и р=5521767865737634555390416300599776622347333359787.a = 5521767865737634555390416300599776622347333359784, b = 9717196 and p = 5521767865737634555390416300599776622347333359787.
Данная ЭК содержит количество точек равное простому числу N=5521767865737634555390416228783886913339823841723, т.е. любая ее точка имеет порядок q, равный значению N, т.е. q=N.This EC contains the number of points equal to the prime number N = 5521767865737634555390416228783886913339823841723, i.e. any of its points has order q equal to the value of N, i.e. q = N.
Рассмотрим коллектив из трех пользователей. При формировании и проверке подлинности ЭЦП (подписью является пара чисел е и s) выполняют следующую последовательность действий:Consider a team of three users. When forming and verifying the authenticity of the digital signature (the signature is a pair of numbers e and s), the following sequence of actions is performed:
1. Генерируют ЭК с параметрами, указанными выше.1. Generate EC with the parameters specified above.
2. Формируют секретные ключи в виде случайных МДЧ:2. Form the secret keys in the form of random MDC:
k1=8182108890892890101467333434019 - ключ первого пользователя;k 1 = 8182108890892890101467333434019 - the key of the first user;
k2=3952504539403758278808581024791 - ключ второго пользователя;k 2 = 3952504539403758278808581024791 - the key of the second user;
k3=9763160941600092631935520658071 - ключ третьего пользователя.k 3 = 9763160941600092631935520658071 - the key of the third user.
3. Формируют открытые ключи в виде точек ЭК P1, Р2, Р3, для чего3. Form public keys in the form of points EC P 1 , P 2 , P 3 , for which
3.1. Генерируют точку G, имеющую порядок q:3.1. Generate a point G of order q:
G=(4058138998817699569976678358233335958495037969465,G = (4058138998817699569976678358233335958495037969465,
768568926336036825718495218916308682494116144160);768568926336036825718495218916308682494116144160);
3.2. Генерируют точки P1, Р2, Р3 по формуле Рi=kiG, где i=1, 2, 3:3.2. The points P 1 , P 2 , P 3 are generated by the formula P i = k i G, where i = 1, 2, 3:
P1=(2406767665928158899446906165821747218883574602371, 562377648521692290689031507205008060205345636991);P 1 = (2406767665928158899446906165821747218883574602371, 562377648521692290689031507205008060205345636991);
Р2=(348708108378027085357389414044825237922683510732, 1402026191996080196399482770468472598076052599809)P 2 = (348708108378027085357389414044825237922683510732, 1402026191996080196399482770468472598076052599809)
P3=(4307166077833519301063322533024162005091025020313, 5280296312549156028148905914215570655514986217509).P 3 = (4307166077833519301063322533024162005091025020313, 5280296312549156028148905914215570655514986217509).
4. Принимают ЭД, представленный МДЧ Н и состоящий из двух частей, представленных МДЧ Н1 и H2:4. Accept the ED represented by MDC N and consisting of two parts represented by MDC H 1 and H 2 :
Н=8925999026871145131520337612117778680659192576033;H = 8925999026871145131520337612117778680659192576033;
H1=135708092215597910168314154751917220633712178686;H 1 = 135708092215597910168314154751917220633712178686;
Н2=3812498990028819155316571350634376652814331770527.H 2 = 3812498990028819155316571350634376652814331770527.
5. Формируют ЭЦП Q в виде двух МДЧ е и s, для чего выполняют следующие действия.5. Form an EDS Q in the form of two MDCs e and s, for which the following steps are performed.
5.1. Первый, второй и третий пользователи генерируют случайные МДЧ t1, t2 и t3 соответственно:5.1. The first, second and third users generate random MDC t 1 , t 2 and t 3, respectively:
t1=2090880922625982683584460167862382379;t 1 = 2090880922625982683584460167862382379;
t2=5360383526856663700583896205266418341;t 2 = 5360383526856663700583896205266418341;
t3=7677118810723142352012317453400887449.t 3 = 7677118810723142352012317453400887449.
5.2. Затем первый, второй и третий пользователи генерируют точки R1, R2 и R3 соответственно по формуле Ri=tiG:5.2. Then the first, second and third users generate points R 1 , R 2 and R 3, respectively, according to the formula R i = t i G:
R1=(4533360075292446608850664400364711592205136618460, 1175061337062232179584348686477324762101164050095);R 1 = (4533360075292446608850664400364711592205136618460, 1175061337062232179584348686477324762101164050095);
R2=(1958279223827902047379336465285895435330140185477, 8836508908256232955144234242970494318564852573);R 2 = (1958279223827902047379336465285895435330140185477, 8836508908256232955144234242970494318564852573);
R3=(5038616028852959877509554081789667436853794753557, 209613157933044677924551688484534713038841468913).R 3 = (5038616028852959877509554081789667436853794753557, 209613157933044677924551688484534713038841468913).
5.3. Генерируют точку R по формуле R=R1+R2+R3:5.3. The point R is generated by the formula R = R 1 + R 2 + R 3 :
R=(2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).R = (2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).
5.4. Формируют МДЧ е по формуле е=xR mod δ, где xR - абсцисса точки R и δ - вспомогательное простое МДЧ (δ=7118198218659321028989011):5.4. MDC e is formed using the formula e = x R mod δ, where x R is the abscissa of the point R and δ is the auxiliary simple MDC (δ = 7118198218659321028989011):
е=5079008233076932087473789.e = 5079008233076932087473789.
5.5. Первый, второй и третий пользователи генерируют МДЧ s1, s2 и s3 соответственно по формуле si=(ti-ewiki) mod q, где i=1, 2, 3; w1=Н1; w2=H2; w3=H и q=N:5.5. The first, second and third users generate MDC s 1 , s 2 and s 3, respectively, according to the formula s i = (t i -ew i k i ) mod q, where i = 1, 2, 3; w 1 = H 1 ; w 2 = H 2 ; w 3 = H and q = N:
s1=133444963875333388923743187271473122915443205289;s 1 = 133444963875333388923743187271473122915443205289;
s2=1887661653203847944710282450835612551620081427016;s 2 = 1887661653203847944710282450835612551620081427016;
s3=4850696161955991125559318084555021335580302189827.s 3 = 4850696161955991125559318084555021335580302189827.
5.6. Генерируют МДЧ s=s1+s2+s3 mod q:5.6. MDC s = s 1 + s 2 + s 3 mod q are generated:
s=1350034913297537903802927493878220096776002980409.s = 1350034913297537903802927493878220096776002980409.
6. Формируют первое проверочное МДЧ А, для чего выполняют следующую последовательность действий.6. Form the first verification MDC A, for which the following sequence of actions is performed.
6.1. Формируют коллективный открытый ключ в виде точки Р по формуле Р=w1P1+w2P2+w3Р3:6.1. A collective public key is formed in the form of a point P according to the formula P = w 1 P 1 + w 2 P 2 + w 3 P 3 :
w1P1=(1386084349002545424511668926945575066838407867380, 4543633731958840101124845818771841004374561021017)w 1 P 1 = (1386084349002545424511668926945575066838407867380, 4543633731958840101124845818771841004374561021017)
w2P2=(299211431532419026428141393395396288778694972469, 5300327094421154876022064946876206296853312043729)w 2 P 2 = (299211431532419026428141393395396288778694972469, 5300327094421154876022064946876206296853312043729)
w3Р3=(4523528487954522900878694877895556963796345154180, 4100826103480972798980996909196526199327733122181)w 3 P 3 = (4523528487954522900878694877895556963796345154180, 4100826103480972798980996909196526199327733122181)
Р=(228426539485900338090938878090464611548638254406, 1202278174553095231135389060209649902535727110543).P = (228426539485900338090938878090464611548638254406, 1202278174553095231135389060209649902535727110543).
6.2. Генерируют точку R'=eP+sG:6.2. The point R '= eP + sG is generated:
eP=(4556848179595887141400726723891321438602307875189, 2883779289574756983177387955618073719731329543379);eP = (4556848179595887141400726723891321438602307875189, 2883779289574756983177387955618073719731329543379);
sG=(1360352815531577166684912233134001496389816081366, 3543269787247235781900897404104279341644752005600);sG = (1360352815531577166684912233134001496389816081366, 3543269787247235781900897404104279341644752005600);
R'=(2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383);R '= (2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383);
6.3. Генерируют МДЧ А по формуле A=xR'Hmod δ, где дополнительное МДЧ δ=7118198218659321028989011:6.3. Generate MDC And according to the formula A = x R ' Hmod δ, where the additional MDC δ = 7118198218659321028989011:
А=5079008233076932087473789.A = 5079008233076932087473789.
7. Формируют второе проверочное МДЧ В путем копирования МДЧ е:7. Form the second verification MDC In by copying MDC e:
В=е=5079008233076932087473789.B = e = 5079008233076932087473789.
8. Сравнивают первое А и второе В проверочные МДЧ.8. Compare the first A and second B test MDC.
Сравнение показывает, что параметры МДЧ А и В совпадают. Совпадение значений А и В означает, что коллективная ЭЦП является подлинной, т.е. относится к принятому ЭД, представленному МДЧ Н, причем первый пользователь подписал часть ЭД, представленную МДЧ Н1, второй пользователь подписал часть ЭД, представленную МДЧ H2, а третий пользователь подписал ЭД целиком.A comparison shows that the parameters of the MDC A and B are the same. The coincidence of the values of A and B means that the collective digital signature is genuine, i.e. refers to the accepted ED presented by MDC H, wherein the first user signed the part of the ED represented by MDC H 1 , the second user signed the part of the ED represented by MDC H 2 , and the third user signed the whole ED.
Пример 2. Реализация заявляемого способа по п.3 формулы изобретенияExample 2. The implementation of the proposed method according to claim 3 of the claims
Данный пример относится к реализации заявленного технического решения с искусственно уменьшенной разрядностью используемых чисел и поясняет реализацию заявляемого способа по п.3 формулы изобретения. В данном примере задается значение z=13917 и при формировании и проверке подлинности ЭЦП (подписью является пара точек ЭК, обозначенных буквами R и Z) выполняют следующую последовательность действий:This example relates to the implementation of the claimed technical solution with artificially reduced bit depth of the numbers used and explains the implementation of the proposed method according to claim 3 of the claims. In this example, the value z = 13917 is set and during the formation and authentication of the digital signature (the signature is a pair of EC points indicated by the letters R and Z), the following sequence of actions is performed:
1. Генерируют ЭК с параметрами:1. Generate EC with parameters:
р=1449024649,p = 1449024649,
а=1449024646;a = 1449024646;
b=1507;b = 1507;
N=q=1449049321.N = q = 1449049321.
2. Формируют секретные ключи в виде случайных МДЧ2. Generate secret keys in the form of random MDC
k1=35132631 - секретный ключ первого пользователя;k 1 = 35132631 - secret key of the first user;
k2=567916337 - секретный ключ второго пользователя;k 2 = 567916337 - secret key of the second user;
k3=132552971 - секретный ключ третьего пользователя.k 3 = 132552971 - the secret key of the third user.
3. Формируют открытые ключи в виде точек P1, Р2 и Р3, для чего выполняют следующие действия:3. Form the public keys in the form of points P 1 , P 2 and P 3 , for which they perform the following steps:
3.1. Генерируют точку G, имеющую порядок q:3.1. Generate a point G of order q:
G=(1080340158, 754837262).G = (1080340158, 754837262).
3.2. Формируют вспомогательные МДЧ d1, d2 и d3 по формуле di=zki mod q, где i=1, 2, 3:3.2. Form the auxiliary MDC d 1 , d 2 and d 3 according to the formula d i = zk i mod q, where i = 1, 2, 3:
d1=13917·35132631 mod q=611204450;d 1 = 13917 · 35132631 mod q = 611204450;
d2=13917·567916337 mod q=576665295;d 2 = 13917 · 567916337 mod q = 576665295;
d3=13917·132552971 mod q=99911774.d 3 = 13917132552971 mod q = 99911774.
3.3. Генерируют точки P1, Р2 и Р3 по формуле Рi=z(kiG)=(zki)G=diG:3.3. The points P 1 , P 2 and P 3 are generated according to the formula P i = z (k i G) = (zk i ) G = d i G:
P1=(1329656100, 292197808) - открытый ключ первого пользователя;P 1 = (1329656100, 292197808) - the public key of the first user;
P2=(1051928635, 239761167) - открытый ключ второго пользователя;P 2 = (1051928635, 239761167) - the public key of the second user;
P3=(1359744381, 928409442) - открытый ключ третьего пользователя.P 3 = (1359744381, 928409442) - the public key of the third user.
4. Принимают ЭД, представленный МДЧ Н=171315687.4. Accept the ED represented by the MDC N = 171315687.
5. Формируют ЭЦП Q в виде четырех МДЧ xR, yR, xZ и yz, являющихся координатами точек R и Z ЭК, для чего выполняют следующие действия.5. Form the EDS Q in the form of four MDC x R , y R , x Z and y z , which are the coordinates of the points R and Z EC, for which the following steps are performed.
5.1. Первый, второй и третий пользователи генерируют случайные МДЧ t1, t2 и t3, соответственно:5.1. The first, second and third users generate random MDC t 1 , t 2 and t 3 , respectively:
t1=172637431;t 1 = 172637431;
t2=36716173;t 2 = 36716173;
t3=71259291.t 3 = 71259291.
5.2. Затем первый, второй и третий пользователи генерируют МДЧ b1, b2, и b3 соответственно по формуле bi=zti mod q:5.2. Then the first, second and third users generate the MDC b 1 , b 2 , and b 3, respectively, according to the formula b i = zt i mod q:
b1=13917·172637431 mod q=71353009;b 1 = 13917 172637431 mod q = 71353009;
b2=13917·36716173 mod q=913618649;b 2 = 13917 · 36716173 mod q = 913618649;
b3=13917·71259291 mod q=565817283.b 3 = 13917.71259291 mod q = 565817283.
5.3. Затем первый, второй и третий пользователи генерируют точки R1, R2 и R3 соответственно по формуле Ri=biG:5.3. Then the first, second and third users generate points R 1 , R 2 and R 3, respectively, according to the formula R i = b i G:
R1=(281198047, 813455618);R 1 = (281198047, 813455618);
R2=(1260148915, 294769180);R 2 = (1260148915, 294769180);
R3=(1391070805, 541095949).R 3 = (1391070805, 541095949).
5.4. Генерируют точку R по формуле R=R1+R2+R3:5.4. The point R is generated by the formula R = R 1 + R 2 + R 3 :
R=(xR, yR)=(337223575, 1350626111).R = (x R , y R ) = (337223575, 1350626111).
5.5. Формируют вспомогательное МДЧ е по формуле е=xRHmod δ, где xR - абсцисса точки R и δ - вспомогательное МДЧ (δ=348743991):5.5. An auxiliary MDC e is formed by the formula e = x R Hmod δ, where x R is the abscissa of the point R and δ is the auxiliary MDC (δ = 348743991):
е=337223575·171315687 mod δ=54524994.e = 337223575171315687 mod δ = 54524994.
5.6. Генерируют точки Zi по формуле Zi=e(kiG)+tiG=(eki+ti)G:5.6. Points Z i are generated by the formula Z i = e (k i G) + t i G = (ek i + t i ) G:
ek1+t1=54524994·35132631+172637431modq=1140036991;ek 1 + t 1 = 5452499435132631 + 172637431modq = 1140036991;
ek2+t2=54524994·567916337+36716173modq=104065810;ek 2 + t 2 = 54524994 567916337 + 36716173modq = 104065810;
ek3+t3=54524994·132552971+71259291modq=638476987:ek 3 + t 3 = 54524994132552971 + 71259291modq = 638476987:
Z1=(502331244, 1026983590);Z 1 = (502331244, 1026983590);
Z2=(1362556964, 156518973);Z 2 = (1362556964, 156518973);
Z3=(697927304, 886677154).Z 3 = (697927304, 886677154).
5.7. Генерируют точку Z по формуле Z=Z1+Z2+Z3:5.7. The point Z is generated by the formula Z = Z 1 + Z 2 + Z 3 :
Z=(xZ, yZ)=(714524287, 1037968014).Z = (x Z , y Z ) = (714524287, 1037968014).
6. Формируют первое проверочное МДЧ А, для чего генерируют точку V=zZ=(1001319513, 191443386) и формируют А путем копирования абсциссы точки V:6. Form the first verification MDC A, for which point V = zZ = (1001319513, 191443386) is generated and A is formed by copying the abscissas of point V:
A=1001319513.A = 1001319513.
7. Формируют второе проверочное МДЧ В, для чего выполняют следующие действия.7. Form the second verification MDC In, for which the following steps are performed.
7.1. Формируют коллективный открытый ключ в виде точки Р по формуле Р=Р1+P2+P3:7.1. A collective public key is formed in the form of a point P according to the formula P = P 1 + P 2 + P 3 :
Р=(672831345, 705469329);P = (672831345, 705469329);
7.2. Генерируют точку W=еР+R:7.2. The point W = eP + R is generated:
еР=(1146914821, 380461506);EP = (1146914821, 380461506);
W=(1001319513, 191443386).W = (1001319513, 191443386).
7.3. Генерируют МДЧ В путем копирования абсциссы точки W:7.3. Generate MDC B by copying the abscissas of point W:
B=1001319513.B = 1001319513.
8. Сравнивают первое и второе проверочные МДЧ. Они совпадают, поэтому подпись признается подлинной.8. Compare the first and second verification MDC. They match, so the signature is recognized as genuine.
Отметим, что в результате выполнения п.5 примера 1 формируется ЭЦП в виде четырех МДЧ 337223575, 1350626111, 714524287 и 1037968014, которые могут быть представлены точками R=(337223575, 1350626111) и S=(714524287, 1037968014). Эти два варианта представления ЭЦП являются идентичными.Note that, as a result of performing paragraph 5 of Example 1, an EDS is formed in the form of four MDC 337223575, 1350626111, 714524287 and 1037968014, which can be represented by points R = (337223575, 1350626111) and S = (714524287, 1037968014). These two options for representing EDS are identical.
Пример 3. Реализация заявляемого способа по п.4 формулы изобретенияExample 3. The implementation of the proposed method according to claim 4 of the claims
Данный пример относится к реализации заявленного технического решения с искусственно уменьшенной разрядностью используемых чисел и поясняет реализацию заявляемого способа по п.4 формулы изобретения. В примере 3 также задается значение z=13917 и используются те же значения параметров ЭК, секретных и открытых ключей, а также остальных используемых МДЧ, что и в примере 2. Отличие примера 3 от примера 2 состоит в том, что в примере 3 в качестве ЭЦП Q формируется тройка МДЧ е, xZ и yZ, из которых второе и третье МДЧ представляют собой координаты некоторой точки ЭК. ЭЦП может быть тождественно представлена в виде и пары (е, Z), где е - МДЧ и Z - точка ЭК. Использование ЭЦП вида (е, Z) позволяет сократить размер подписи примерно на 25% по сравнению с примером 2. При формировании и проверке подлинности ЭЦП (подписью является пара точек ЭК, обозначенных буквами R и Z) в примере 3 выполняют следующую последовательность действий.This example relates to the implementation of the claimed technical solution with artificially reduced bit depth of the numbers used and explains the implementation of the proposed method according to claim 4. Example 3 also sets the value z = 13917 and uses the same values of the EC parameters, secret and public keys, as well as the rest of the MDC used, as in Example 2. The difference between Example 3 and Example 2 is that in Example 3, as EDS Q forms a triple of MDCs e, x Z and y Z , of which the second and third MDCs represent the coordinates of some point of EC. EDS can be identically represented in the form of a pair (e, Z), where e is the MDC and Z is the EC point. Using an EDS of the form (e, Z) reduces the signature size by about 25% compared to Example 2. When forming and verifying the authenticity of an EDS (the signature is a pair of EC points denoted by the letters R and Z) in Example 3, the following sequence of operations is performed.
1. Выполняют последовательность действий, предписанных пп.1, 2, 3 и 4 примера 1.1. Perform the sequence of steps prescribed by paragraphs 1, 2, 3 and 4 of example 1.
2. Формируют ЭЦП Q в виде трех МДЧ е, xZ и yZ, где xZ и yZ - координаты некоторой точки Z ЭК, которая генерируется в зависимости от секретных ключей пользователей, участвующих в формировании коллективной ЭЦП, для чего выполняют следующие действия.2. Form the digital signature Q in the form of three MDCs e, x Z and y Z , where x Z and y Z are the coordinates of some point Z EC, which is generated depending on the secret keys of users involved in the formation of a collective digital signature, for which the following steps are performed .
2.1. Первый, второй и третий пользователи генерируют случайные МДЧ t1, t2 и t3 соответственно:2.1. The first, second and third users generate random MDC t 1 , t 2 and t 3, respectively:
t1=172637431;t 1 = 172637431;
t2=36716173;t 2 = 36716173;
t3=71259291.t 3 = 71259291.
2.2. Затем первый, второй и третий пользователи генерируют МДЧ b1, b2 и b3 соответственно по формуле bi=zti mod q:2.2. Then, the first, second and third users generate MDC b 1 , b 2 and b 3, respectively, according to the formula b i = zt i mod q:
b1=13917·172637431 mod q=71353009;b 1 = 13917 172637431 mod q = 71353009;
b2=13917·36716173 mod q=913618649;b 2 = 13917 · 36716173 mod q = 913618649;
b3=13917·71259291 mod q=565817283.b 3 = 13917.71259291 mod q = 565817283.
2.3. Затем первый, второй и третий пользователи генерируют точки R1, R2 и R3 соответственно по формуле Ri=biG:2.3. Then the first, second and third users generate points R 1 , R 2 and R 3, respectively, according to the formula R i = b i G:
R1=(281198047, 813455618);R 1 = (281198047, 813455618);
R2=(1260148915, 294769180);R 2 = (1260148915, 294769180);
R3=(1391070805, 541095949).R 3 = (1391070805, 541095949).
2.4. Генерируют точку R по формуле R=R1+R2+R3:2.4. The point R is generated by the formula R = R 1 + R 2 + R 3 :
R=(337223575, 1350626111).R = (337223575, 1350626111).
2.5. Формируют первое МДЧ е электронной цифровой подписи по формуле е=xRH mod δ, где xR - абсцисса точки R и δ - вспомогательное МДЧ (δ=348743991):2.5. The first MDC e electronic digital signature is formed according to the formula e = x R H mod δ, where x R is the abscissa of the point R and δ is the auxiliary MDC (δ = 348743991):
е=337223575·171315687 mod δ=54524994.e = 337223575171315687 mod δ = 54524994.
2.6. Генерируют точки Zi по формуле Zi=e(kiG)+tiG=(eki+ti)G:2.6. Points Z i are generated by the formula Z i = e (k i G) + t i G = (ek i + t i ) G:
ek1+t1=54524994·35132631+172637431 mod q=1140036991;ek 1 + t 1 = 5452499435132631 + 172637431 mod q = 1140036991;
ek2+t2=54524994·567916337+36716173 mod q=104065810;ek 2 + t 2 = 54524994 567916337 + 36716173 mod q = 104065810;
ek3+t3=54524994·132552971+71259291 mod q=638476987:ek 3 + t 3 = 54524994132552971 + 71259291 mod q = 638476987:
Z1=(502331244, 1026983590);Z 1 = (502331244, 1026983590);
Z2=(1362556964, 156518973);Z 2 = (1362556964, 156518973);
Z3=(697927304, 886677154).Z 3 = (697927304, 886677154).
2.7. Генерируют второе и третье МДЧ е электронной цифровой подписи в виде координат точки Z ЭК, вычисляемой по формуле Z=Z1+Z2+Z3:2.7. Generate the second and third MDC e electronic digital signature in the form of coordinates of the point Z EC calculated by the formula Z = Z 1 + Z 2 + Z 3 :
Z=(xZ, yZ)=(714524287, 1037968014).Z = (x Z , y Z ) = (714524287, 1037968014).
3. Формируют первое проверочное МДЧ А, для чего выполняют следующую последовательность действий.3. Form the first verification MDC A, for which the following sequence of actions is performed.
3.1. Формируют коллективный открытый ключ в виде точки Р по формуле P=P1+P2+P3:3.1. A collective public key is formed in the form of a point P according to the formula P = P 1 + P 2 + P 3 :
Р=(672831345, 705469329);P = (672831345, 705469329);
3.2. Генерируют точку R'=zS-eP=zS+(q-e)P:3.2. The point R '= zS-eP = zS + (q-e) P is generated:
zS=(1001319513, 191443386);zS = (1001319513, 191443386);
(q-e)P=1394524327·(672831345, 705469329)=(1146914821, 1068563143);(q-e) P = 1394524327 · (672831345, 705469329) = (1146914821, 1068563143);
R'=(1001319513, 191443386)+(1146914821, 1068563143)=(337223575, 1350626111);R '= (1001319513, 191443386) + (1146914821, 1068563143) = (337223575, 1350626111);
3.3. Генерируют МДЧ А по формуле A=xR'Hmod δ, где дополнительное МДЧ δ=348743991:3.3. Generate MDC And according to the formula A = x R ' Hmod δ, where the additional MDC δ = 348743991:
А=337223575·171315687 mod δ=54524994.A = 337223575171315687 mod δ = 54524994.
4. Формируют второе проверочное МДЧ В путем копирования МДЧ е:4. Form the second verification MDC In by copying MDC e:
В=е=54524994.B = e = 54524994.
5. Сравнивают первое А и второе В проверочные МДЧ. Они совпадают, поэтому подпись признается подлинной.5. Compare the first A and second B test MDC. They match, so the signature is recognized as genuine.
Пример 4. Реализация заявляемого способа по п.5 формулы изобретенияExample 4. The implementation of the proposed method according to claim 5 of the claims
В данном примере используется ЭК, секретные и открытые ключи пользователей такие же, как и в примере 1. В примере используется ЭК, определяемая следующими параметрами:In this example, an EC is used, the secret and public keys of users are the same as in example 1. The example uses an EC defined by the following parameters:
а=5521767865737634555390416300599776622347333359784, b=9717196 и р=5521767865737634555390416300599776622347333359787.a = 5521767865737634555390416300599776622347333359784, b = 9717196 and p = 5521767865737634555390416300599776622347333359787.
Данная ЭК содержит количество точек равное простому числу N=5521767865737634555390416228783886913339823841723, т.е. любая ее точка имеет порядок q, равный значению N, т.е. q=N.This EC contains the number of points equal to the prime number N = 5521767865737634555390416228783886913339823841723, i.e. any of its points has order q equal to the value of N, i.e. q = N.
Рассмотрим коллектив из трех пользователей. При формировании и проверке подлинности ЭЦП (подписью является пара МДЧ е и s.) выполняют следующую последовательность действий.Consider a team of three users. When forming and verifying the authenticity of the digital signature (the signature is a pair of MDCs e and s.), The following sequence of actions is performed.
1. Генерируют ЭК с параметрами, указанными выше.1. Generate EC with the parameters specified above.
2. Формируют секретные ключи в виде случайных МДЧ2. Generate secret keys in the form of random MDC
k1=8182108890892890101467333434019 - ключ первого пользователя;k 1 = 8182108890892890101467333434019 - the key of the first user;
k2=3952504539403758278808581024791 - ключ второго пользователя;k 2 = 3952504539403758278808581024791 - the key of the second user;
k3=9763160941600092631935520658071 - ключ третьего пользователя.k 3 = 9763160941600092631935520658071 - the key of the third user.
3. Формируют открытые ключи в виде точек ЭК P1, Р2, Р3, для чего выполняют следующие действия.3. Form public keys in the form of points EC P 1 , P 2 , P 3 , for which they perform the following steps.
3.1. Генерируют точку G:3.1. Generate point G:
G=(4058138998817699569976678358233335958495037969465,G = (4058138998817699569976678358233335958495037969465,
768568926336036825718495218916308682494116144160);768568926336036825718495218916308682494116144160);
3.2. Генерируют точки P1, P2, P3 по формуле Рi=kiG, где i=1, 2, 3:3.2. The points P 1 , P 2 , P 3 are generated according to the formula P i = k i G, where i = 1, 2, 3:
P1=(2406767665928158899446906165821747218883574602371, 562377648521692290689031507205008060205345636991);P 1 = (2406767665928158899446906165821747218883574602371, 562377648521692290689031507205008060205345636991);
P2=(348708108378027085357389414044825237922683510732, 1402026191996080196399482770468472598076052599809)P 2 = (348708108378027085357389414044825237922683510732, 1402026191996080196399482770468472598076052599809)
P3=(4307166077833519301063322533024162005091025020313, 5280296312549156028148905914215570655514986217509).P 3 = (4307166077833519301063322533024162005091025020313, 5280296312549156028148905914215570655514986217509).
4. Принимают ЭД, представленный, например, следующим МДЧ Н (в качестве которого может быть взята, в частности, хэш-функция от ЭД):4. Accept the ED represented, for example, by the following MDC N (which can be taken, in particular, the hash function of the ED):
H=8925999026871145131520337612117778680659192576033.H = 8925999026871145131520337612117778680659192576033.
5. Формируют ЭЦП Q в виде пары МДЧ е и s, для чего выполняют следующие действия.5. Form the digital signature Q in the form of a pair of MDC e and s, for which the following steps are performed.
5.1. Первый, второй и третий пользователи генерируют случайные МДЧ t1, t2 и t3 соответственно:5.1. The first, second and third users generate random MDC t 1 , t 2 and t 3, respectively:
t1=2090880922625982683584460167862382379;t 1 = 2090880922625982683584460167862382379;
t2=5360383526856663700583896205266418341;t 2 = 5360383526856663700583896205266418341;
t3=7677118810723142352012317453400887449.t 3 = 7677118810723142352012317453400887449.
5.2. Затем первый, второй и третий пользователи генерируют точки R1, R2 и R3 соответственно по формуле Ri=tiG:5.2. Then the first, second and third users generate points R 1 , R 2 and R 3, respectively, according to the formula R i = t i G:
R1=(4533360075292446608850664400364711592205136618460, 1175061337062232179584348686477324762101164050095);R 1 = (4533360075292446608850664400364711592205136618460, 1175061337062232179584348686477324762101164050095);
R2=(1958279223827902047379336465285895435330140185477, 8836508908256232955144234242970494318564852573);R 2 = (1958279223827902047379336465285895435330140185477, 8836508908256232955144234242970494318564852573);
R3=(5038616028852959877509554081789667436853794753557, 209613157933044677924551688484534713038841468913).R 3 = (5038616028852959877509554081789667436853794753557, 209613157933044677924551688484534713038841468913).
5.3. Генерируют точку R по формуле R=R1+R2+R3:5.3. The point R is generated by the formula R = R 1 + R 2 + R 3 :
R=(2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).R = (2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).
5.4. Формируют первое МДЧ е электронной цифровой подписи по формуле е=xRHmod δ, где xR - абсцисса точки R и δ - вспомогательное простое МДЧ (δ=7118198218659321028989011):5.4. Form the first MDC e of an electronic digital signature according to the formula e = x R Hmod δ, where x R is the abscissa of the point R and δ is the auxiliary simple MDC (δ = 7118198218659321028989011):
e=4927124871592959793329711.e = 4927124871592959793329711.
5.5. Первый, второй и третий пользователи генерируют МДЧ s1, s2 и s3 соответственно по формуле si=(ti-eki) mod q, где q'=N и i=1, 2, 3:5.5. The first, second and third users generate MDC s 1 , s 2 and s 3, respectively, according to the formula s i = (t i -ek i ) mod q, where q '= N and i = 1, 2, 3:
s1=359849983424274307716254877984953159149283598626;s 1 = 359849983424274307716254877984953159149283598626;
s2=2228471503399271451844174588034195792013686207551;s 2 = 2228471503399271451844174588034195792013686207551;
s3=3321295738385055881020248326363803564813773402448.s 3 = 3321295738385055881020248326363803564813773402448.
5.6. Генерируют второе МДЧ s электронной цифровой подписи по формуле s=s1+s2+s3 mod q:5.6. The second MDC s of the electronic digital signature is generated by the formula s = s 1 + s 2 + s 3 mod q:
s=387849359470967085190261563599065602636919366902.s = 387849359470967085190261563599065602636919366902.
6. Формируют первое проверочное МДЧ А, для чего выполняют следующую последовательность действий.6. Form the first verification MDC A, for which the following sequence of actions is performed.
6.1. Формируют коллективный открытый ключ в виде точки Р по формуле Р=P1+P2+Р3:6.1. A collective public key is formed in the form of a point P according to the formula P = P 1 + P 2 + P 3 :
Р=(2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).P = (2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).
6.2. Генерируют точку R'=eP+sG:6.2. The point R '= eP + sG is generated:
еР=(146955471348564375364922408624400975297984578370, 5067487498889971752716283347516092217397817107870);EP = (146955471348564375364922408624400975297984578370, 5067487498889971752716283347516092217397817107870);
sG=(2925357468651177964466813642233631538174971712513, 599550386022153150210626227063281723596625174740);sG = (2925357468651177964466813642233631538174971712513, 599550386022153150210626227063281723596625174740);
R'=(2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).R '= (2597097970263610863546069436833994580002105418569, 3304915040104400813802374282473985550015521973383).
6.3. Генерируют МДЧ А по формуле А=xR'Hmod δ, где дополнительное МДЧ δ=7118198218659321028989011:6.3. Generate MDC A according to the formula A = x R ' Hmod δ, where the additional MDC δ = 7118198218659321028989011:
A=4927124871592959793329711.A = 4927124871592959793329711.
7. Формируют второе проверочное МДЧ В путем копирования МДЧ е:7. Form the second verification MDC In by copying MDC e:
В=е=4927124871592959793329711.B = e = 4927124871592959793329711.
8. Сравнивают первое А и второе В проверочные МДЧ.8. Compare the first A and second B test MDC.
Сравнение показывает, что параметры МДЧ А и В совпадают. Совпадение значений А и В означает, что коллективная ЭЦП является подлинной, т.е. относится к принятому ЭД, представленному МДЧ Н, и сформирована тремя пользователями, по открытым ключам которых был сформирован коллективный открытый ключ, использованный для проверки подлинности подписи.A comparison shows that the parameters of the MDC A and B are the same. The coincidence of the values of A and B means that the collective digital signature is genuine, i.e. refers to the accepted ED presented by MDCH N, and is generated by three users whose public keys have generated the collective public key used to verify the signature authenticity.
Примеры 1, 2, 3 и 4 экспериментально подтверждают корректность реализации заявляемого способа, что дополняет математическое доказательство корректности, приведенное выше.Examples 1, 2, 3 and 4 experimentally confirm the correctness of the implementation of the proposed method, which complements the mathematical proof of correctness given above.
Таким образом показано, что заявляемый способ может быть положен в основу стойких систем ЭЦП, обеспечивающих уменьшение размера коллективной ЭЦП.Thus, it is shown that the inventive method can be the basis of persistent systems of EDS, providing a reduction in the size of the collective EDS.
Приведенные примеры и математическое обоснование показывают, что предлагаемый способ формирования и проверки подлинности ЭЦП работает корректно, технически реализуем и позволяет достичь сформулированного технического результата.The above examples and mathematical justification show that the proposed method for generating and verifying the authenticity of the digital signature works correctly, is technically feasible and allows to achieve the formulated technical result.
Приложение 1Annex 1
Толкование терминов, используемых в описании заявкиInterpretation of the terms used in the description of the application
1. Двоичный цифровой электромагнитный сигнал - последовательность битов в виде нулей и единиц.1. Binary digital electromagnetic signal - a sequence of bits in the form of zeros and ones.
2. Параметры двоичного цифрового электромагнитного сигнала: разрядность и порядок следования единичных и нулевых битов.2. Parameters of a binary digital electromagnetic signal: bit depth and order of single and zero bits.
3. Разрядность двоичного цифрового электромагнитного сигнала - общее число его единичных и нулевых битов, например число 10011 является 5-разрядным.3. The bit depth of a binary digital electromagnetic signal is the total number of its single and zero bits, for example, the number 10011 is 5-bit.
4. Электронная цифровая подпись (ЭЦП) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от подписанного электронного документа и от секретного ключа. Проверка подлинности ЭЦП осуществляют с помощью открытого ключа, который зависит от секретного ключа.4. Electronic digital signature (EDS) - a binary digital electromagnetic signal, the parameters of which depend on the signed electronic document and on the secret key. EDS authentication is carried out using a public key, which depends on the secret key.
5. Электронный документ (ЭД) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от исходного документа и способа его преобразования к электронному виду.5. An electronic document (ED) is a binary digital electromagnetic signal, the parameters of which depend on the original document and how it is converted to electronic form.
6. Секретный ключ - двоичный цифровой электромагнитный сигнал, используемый для формирования подписи к заданному электронному документу. Секретный ключ представляется, например, в двоичном виде как последовательность цифр «0» и «1».6. Secret key - a binary digital electromagnetic signal used to generate a signature for a given electronic document. The secret key is represented, for example, in binary form as a sequence of digits "0" and "1".
7. Открытый ключ - двоичный цифровой электромагнитный сигнал, параметры которого зависят от секретного ключа и который предназначен для проверки подлинности цифровой электронной подписи.7. Public key - a binary digital electromagnetic signal, the parameters of which depend on the secret key and which is designed to verify the authenticity of a digital electronic signature.
8. Хэш-функция от электронного документа - двоичный цифровой электромагнитный сигнал, параметры которого зависят от электронного документа и выбранного метода ее вычисления.8. A hash function of an electronic document is a binary digital electromagnetic signal, the parameters of which depend on the electronic document and the chosen method of its calculation.
9. Многоразрядное двоичное число (МДЧ) - двоичный цифровой электромагнитный сигнал, интерпретируемый как двоичное число и представляемый в виде последовательности цифр «0» и «1».9. A multi-bit binary number (MDC) is a binary digital electromagnetic signal, interpreted as a binary number and represented as a sequence of digits "0" and "1".
10. Операция возведения числа S в дискретную степень А по модулю n - это операция, выполняемая над конечным множеством натуральных чисел10. The operation of raising a number S to a discrete power A modulo n is an operation performed on a finite set of natural numbers
{0, 1, 2, …, n-1}, включающем n чисел, являющихся остатками от деления всевозможных целых чисел на число n; результат выполнения операций сложения, вычитания и умножения по модулю n представляет собой число из этого же множества [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.]; операция возведения числа S в дискретную степень Z по модулю n определяется как Z-кратное последовательное умножение по модулю n числа S на себя, т.е. в результате этой операции также получается число W, которое меньше или равно числу n-1; даже для очень больших чисел S, Z и n существуют эффективные алгоритмы выполнения операции возведения в дискретную степень по модулю [см. Молдовян А.А., Молдовян Н.А., Гуц Н.Д., Изотов Б.В. Криптография: скоростные шифры. - СПб, БХВ-Петербург, 2002. - с.58-61 или Б.Шнайер. Прикладная криптография. - М., изд-во «Триумф», 2002. - с.278-280] и электронные устройства, осуществляющие эту операцию с большой скоростью [У.Диффи. Первые десять лет криптографии с открытым ключом // ТИИЭР. 1988. т.76. №5. с.67-68]; выполнение операции возведения числа S в дискретную степень Z по модулю n обозначается как W=SZ mod n, где W - число являющееся результатом выполнения данной операции.{0, 1, 2, ..., n-1}, including n numbers that are the remainders of dividing all kinds of integers by the number n; the result of the operations of addition, subtraction and multiplication modulo n is a number from the same set [Vinogradov IM Fundamentals of number theory. - M .: Nauka, 1972. - 167 p.]; the operation of raising a number S to a discrete power Z modulo n is defined as a Z-fold sequential multiplication modulo n of the number S by itself, i.e. as a result of this operation, the number W is also obtained that is less than or equal to the number n-1; even for very large numbers S, Z, and n, there are effective algorithms for performing the operation of raising a discrete power modulo [see Moldovyan A.A., Moldovyan N.A., Guts N.D., Izotov B.V. Cryptography: high-speed ciphers. - SPb, BHV-Petersburg, 2002. - p. 58-61 or B. Schneier. Applied cryptography. - M., Triumph Publishing House, 2002. - p.278-280] and electronic devices that carry out this operation at high speed [W. Diffie. The first ten years of public-key cryptography // TIIER. 1988.V. 76. No. 5. p. 67-68]; the operation of raising the number S to a discrete power of Z modulo n is denoted as W = S Z mod n, where W is the number resulting from the operation.
11. Функция Эйлера от натурального числа n - это число чисел, являющихся взаимно простыми с n и не превосходящими n [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.; Бухштаб А.А. Теория чисел. - М.: Просвещение, 1966. - 384 с].11. The Euler function of a natural number n is the number of numbers that are coprime with n and not exceeding n [Vinogradov IM Fundamentals of number theory. - M .: Nauka, 1972. - 167 p .; Buchstab A.A. Number theory - M .: Education, 1966. - 384 s].
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 is satisfied, 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. Эллиптическая кривая (ЭК) - это совокупность пар МДЧ, которые удовлетворяют соотношению вида15. An elliptic curve (EC) is a collection of pairs of MDCs that satisfy a relation of the form
y2=х3+ax+b mod p,y 2 = x 3 + ax + b mod p,
где коэффициенты а и b и модуль р определяют конкретный вариант ЭК. Над ЭК определены операция сложения пар МДЧ и операция умножения пары МДЧ на произвольное целое число. Указанные пары МДЧ записываются в виде (x, y), где x называется абсциссой точки, а y - ординатой. Операции, определенные над точками ЭК, выполняются как операции над координатами точек ЭК. В результате вычисляется пара МДЧ, которая является координатами новой точки, являющейся результатом операции. Точки ЭК называются равными, если равны их обе координаты x и y. Детальное описание ЭК можно найти в широко доступных книгах: [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)]where the coefficients a and b and the module p determine a specific variant of EC. The operation of addition of MDC pairs and the operation of multiplying the MDC pair by an arbitrary integer are defined over EC. The indicated MDC pairs are written in the form (x, y), where x is called the abscissa of the point, and y is the ordinate. Operations defined on EC points are performed as operations on the coordinates of EC points. As a result, the MDC pair is calculated, which is the coordinates of the new point that is the result of the operation. EC points are called equal if both 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)]
16. Операция сложения двух точек А и В с координатами (хA, yA) и (xB, yB) соответственно выполняется по формулам:16. 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-xBmod p и yC=k(xA-xC)-yAmod p,x C = k 2 -x A -x B mod p and y C = k (x A -x C ) -y A mod p,
где если точки А и В не равны, и если точки А и В равны.Where if points A and B are not equal, and if points A and B are equal.
17. Операция умножения точки А на натуральное число n определяется как многократное сложение токи А:17. The operation of multiplying point A by a natural number n is defined as multiple additions of currents A:
nA=А+А+…+А (n раз).nA = A + A + ... + A (n times).
Результатом умножения любой точки ЭК на нуль определяется точка, называемая бесконечно удаленной точкой и обозначаемой буквой О. Две точки А=(x, y) и -А=(x, -y) называются противоположными. Умножение на целое отрицательное число -n определяется следующим образом: (-n)А=n(-А). По определению принимают, что сумма двух противоположных точек равна бесконечно удаленной точке О [Б.Я.Рябко, А.Н.Фионов. Криптографические методы защиты информации. М., Горячая линия - Телеком, 2005. - 229 с. (см. с.97-130)].The result of multiplying any EC point by zero determines a point called an infinitely distant point and denoted by the letter O. Two points A = (x, y) and -A = (x, -y) are called opposite. Multiplication by a negative integer -n is defined as follows: (-n) A = n (-A). By definition, it is assumed that the sum of two opposite points is equal to the infinitely distant point O [B.Ya. Ryabko, A.N. Fionov. Cryptographic methods of information security. M., Hot line - Telecom, 2005 .-- 229 p. (see p. 97-130)].
18. Выполнение операций на точками ЭК осуществляется в вычислительных устройствах как действия над двоичными цифровыми электромагнитными сигналами, осуществляемыми по определенными правилам, определяемым через операции над МДЧ.18. 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.
19. Порядком точки А ЭК называется наименьшее натуральное число q, такое что qA=О, т.е. такое, что результатом умножения точки А на число q является бесконечно удаленная точка.19. The order of the point A EC is the smallest positive integer q such that qA = O, i.e. such that the result of multiplying point A by q is an infinitely distant point.
Claims (5)
где wj - вспомогательные многоразрядные двоичные числа.2. The method according to claim 1, characterized in that the collective public key P is formed depending on the points of the elliptic curve according to the formula ,
where w j are auxiliary multidigit binary numbers.
генерируют m точек эллиптической кривой по формуле где , j=1, 2, …, m, генерируют точку R эллиптической кривой по формуле после чего формируют первое многоразрядное двоичное число е электронной цифровой подписи по формуле е=хRН mod δ, где xR - абсцисса точки R и δ - вспомогательное многоразрядное двоичное число, затем генерируют m точек эллиптической кривой по формуле после чего генерируют второе и третье многоразрядные двоичные числа электронной цифровой подписи в виде соответственно абсциссы xZ и ординаты yZ точки Z эллиптической кривой путем генерации точки Z эллиптической кривой по формуле причем первое проверочное многоразрядное двоичное число А формируют по формуле A=xR'H mod δ, где xR' - абсцисса точки R' эллиптической кривой, вычисленной по формуле R'=zZ-eP, а второе проверочное многоразрядное двоичное число В формируют по формуле В=е.4. The method according to claim 1, characterized in that when generating public keys, points P 1 , P 2 , ..., P n of the elliptic curve are generated by the formula P i = d i G, where i = 1, 2, ..., n, G is the additionally generated point of the elliptic curve, ad i = zk i mod q, z> 1 is a natural number, q is the order of the point G of the elliptic curve, the electronic digital signature Q is formed in the form of three multi-bit binary numbers e, x z and y z , why m random multi-bit binary numbers are generated
generate m points elliptic curve according to the formula Where , j = 1, 2, ..., m, generate a point R of the elliptic curve according to the formula after which the first multi-bit binary number e of the electronic digital signature is formed according to the formula e = x R H mod δ, where x R is the abscissa of the point R and δ is the auxiliary multi-bit binary number, then m points are generated elliptic curve according to the formula then generate the second and third multi-digit binary numbers of the electronic digital signature in the form of abscissas x Z and ordinates y Z of the point Z of the elliptic curve by generating the point Z of the elliptic curve according to the formula moreover, the first test multi-bit binary number A is formed by the formula A = x R ' H mod δ, where x R' is the abscissa of the point R 'of the elliptic curve calculated by the formula R' = zZ-eP, and the second test multi-bit binary number B is formed by formula B = e.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2007130982/09A RU2356172C1 (en) | 2007-08-13 | 2007-08-13 | Method for generation and authentication of electronic digital signature that verifies electronic document |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2007130982/09A RU2356172C1 (en) | 2007-08-13 | 2007-08-13 | Method for generation and authentication of electronic digital signature that verifies electronic document |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2007130982A RU2007130982A (en) | 2009-02-20 |
RU2356172C1 true RU2356172C1 (en) | 2009-05-20 |
Family
ID=40531423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2007130982/09A RU2356172C1 (en) | 2007-08-13 | 2007-08-13 | Method for generation and authentication of electronic digital signature that verifies electronic document |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2356172C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2450438C1 (en) * | 2011-03-21 | 2012-05-10 | Государственное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)" | Method of creating and authenticating collective electronic digital signature certifying electronic document |
-
2007
- 2007-08-13 RU RU2007130982/09A patent/RU2356172C1/en not_active IP Right Cessation
Non-Patent Citations (1)
Title |
---|
Рябко Б.Я. и др. Криптографические методы защиты информации. Москва, Горячая линия - Телеком, 2005, с.110-111 Молдовян А.А. и др. Криптография. Санкт-Петербруг, Лань, 2000, с.156-159. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2450438C1 (en) * | 2011-03-21 | 2012-05-10 | Государственное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)" | Method of creating and authenticating collective electronic digital signature certifying electronic document |
Also Published As
Publication number | Publication date |
---|---|
RU2007130982A (en) | 2009-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11558398B2 (en) | Selectivity in privacy and verification with applications | |
US11671255B2 (en) | Threshold digital signature method and system | |
TW201320700A (en) | Signature verification device, signature verification method, program, and recording medium | |
Noether et al. | Monero is not that mysterious | |
JP4988448B2 (en) | Batch verification apparatus, program, and batch verification method | |
Hartung | Attacks on secure logging schemes | |
Chande et al. | An improvement of a elliptic curve digital signature algorithm | |
CN111740821A (en) | Method and device for establishing shared secret key | |
CN113711562A (en) | Computer-implemented method and system for knowledge proof in blockchain transactions | |
RU2356172C1 (en) | Method for generation and authentication of electronic digital signature that verifies electronic document | |
US11616994B2 (en) | Embedding information in elliptic curve base point | |
RU2392736C1 (en) | Method for generation and authentication of electronic digital signature that verifies electronic document | |
KR100954844B1 (en) | Method and Apparatus of digital signature using CRT-RSA modula exponentiation algorithm against fault attacks, and Recording medium using it | |
RU2380838C1 (en) | Method for creation and authentication of electronic digital signature confirming electronic document | |
CN114640463A (en) | Digital signature method, computer equipment and medium | |
RU2402880C2 (en) | Method for generation and verification of collective electronic digital signature that certifies electronic document | |
RU2450438C1 (en) | Method of creating and authenticating collective electronic digital signature certifying electronic document | |
RU2369974C1 (en) | Method for generation and authentication of electronic digital signature that certifies electronic document | |
US9252941B2 (en) | Enhanced digital signatures algorithm method and system utilitzing a secret generator | |
RU2409903C2 (en) | Method of creating and authenticating electronic digital signature certifying electronic document | |
RU2401513C2 (en) | Method for generating and verification electronic digital signature authenticating electronic document | |
US10305678B2 (en) | Imbalanced montgomery ladder | |
RU2325767C1 (en) | Method of generation and authenticity check of electronic digital signature, which certifies electronic document | |
RU2325768C1 (en) | Method of generation and authenticity check of electronic digital signature, which certifies electronic document | |
FR2814620A1 (en) | METHOD FOR ACCELERATED TRANSMISSION OF ELECTRONIC SIGNATURE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20090814 |