способ формирования и проверки подлинности электронной цифровой подписи, заверяющей электронный документ

Классы МПК:H04L9/32 со средствами для установления личности или полномочий пользователя системы
Автор(ы):,
Патентообладатель(и):Молдовян Николай Андреевич (RU)
Приоритеты:
подача заявки:
2006-11-02
публикация патента:

Изобретение относится к области электросвязи, а именно к области криптографических устройств и способов проверки электронной цифровой подписи (ЭЦП). Техническим результатом является уменьшение размера ЭЦП без снижения ее уровня стойкости. В способе формируют секретный ключ (СК), включающий три многоразрядных двоичных числа (МДЧ) р, q и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где р, q простые числа и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 составное число. Формируют открытый ключ (ОК) в виде двух многоразрядных двоичных чисел n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где n=pq и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - число, относящееся к показателю q по модулю n. Принимают электронный документ (ЭД) в виде многоразрядного двоичного числа Н. Формируют электронную цифровую подпись (ЭЦП) Q в зависимости от значений СК, ОК и многоразрядного двоичного числа Н. Формируют первое проверочное многоразрядное двоичное число А в зависимости от Q. Генерируют промежуточное многоразрядное двоичное число W в зависимости от ОК и многоразрядного двоичного числа Н. Формируют второе проверочное многоразрядное двоичное число В в зависимости от W и сравнивают числа А и В. При совпадении параметров чисел А и В делают вывод о подлинности электронной цифровой подписи. 9 з.п. ф-лы.

Формула изобретения

1. Способ формирования и проверки подлинности электронной цифровой подписи, заверяющей электронный документ, заключающийся в том, что формируют секретный ключ, включающий три многоразрядных двоичных числа р, q и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где р, q простые числа и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 составное число, формируют открытый ключ, включающий два многоразрядных двоичных числа n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n и n=pq, принимают электронный документ, представленный многоразрядным двоичным числом Н, в зависимости от значения Н и значения секретного ключа формируют электронную цифровую подпись Q, формируют первое и второе проверочные многоразрядные двоичные числа А и В, сравнивают их и при совпадении их параметров делают вывод о подлинности электронной цифровой подписи, отличающийся тем, что электронную цифровую подпись Q формируют в виде двух многоразрядных двоичных чисел R и S, то есть Q=(R,S), формируют первое проверочное многоразрядное двоичное число А в зависимости от электронной цифровой подписи, генерируют промежуточное многоразрядное двоичное число W в зависимости от значения многоразрядных двоичных чисел R, S, Н, n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и формируют второе проверочное многоразрядное двоичное число В путем сжимающего преобразования промежуточного многоразрядного двоичного числа W.

2. Способ по п.1, отличающийся тем, что первое проверочное многоразрядное двоичное число А формируют путем вычитания значения из значения R.

3. Способ по п.1, отличающийся тем, что первое проверочное многоразрядное двоичное число А формируют путем деления значения R на значение S.

4. Способ по п.1, отличающийся тем, что первое проверочное многоразрядное двоичное число А формируют путем перемножения значений S и R.

5. Способ по п.1, отличающийся тем, что первое проверочное многоразрядное двоичное число А формируют путем сложения значений S и R.

6. Способ по п.1, отличающийся тем, что промежуточное многоразрядное двоичное число W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - многоразрядное двоичное число, которое вычисляют по формуле U=RS или по формуле U=RSH.

7. Способ по п.1, отличающийся тем, что промежуточное многоразрядное двоичное число W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - многоразрядное двоичное число, которое вычисляют по формуле U=RS или по формуле U=RSH, после чего полученное промежуточное многоразрядное двоичное число W дополнительно преобразуют по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 WH mod n или по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 (W+H)mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания.

8. Способ по п.1, отличающийся тем, что промежуточное многоразрядное двоичное число W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - многоразрядное двоичное число, которое вычисляют по формуле U=RS или по формуле U=RSH, после чего дополнительно преобразуют полученное промежуточное многоразрядное двоичное число W по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 WyS mod n или по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 WyRH mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания, y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n и х - дополнительное случайное многоразрядное двоичное число.

9. Способ по п.1, отличающийся тем, что сжимающее преобразование промежуточного многоразрядного двоичного числа W выполняют с помощью хэш-функции.

10. Способ по п.1, отличающийся тем, что сжимающее преобразование промежуточного многоразрядного двоичного числа W выполняют с помощью операции взятия остатка от деления промежуточного многоразрядного двоичного числа W на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , длина которого лежит в пределах от 64 до 256 бит.

Описание изобретения к патенту

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов аутентификации электронных сообщений, передаваемых по телекоммуникационным сетям и сетям ЭВМ, и может быть использовано в системах передачи электронных сообщений (документов), заверенных электронной цифровой подписью (ЭЦП), представленной в виде многоразрядного двоичного числа (МДЧ). Здесь и далее под МДЧ понимается электромагнитный сигнал в двоичной цифровой форме, параметрами которого являются: число битов и порядок следования их единичных и нулевых значений (толкование используемых в описании терминов приведено в Приложении 1.)

Известен способ формирования и проверки ЭЦП, описанный в книгах [1. М.А.Иванов. Криптография. М., КУДИЦ-ОБРАЗ, 2001; 2. А.Г.Ростовцев, Е.Б.Маховенко. Введение в криптографию с открытым ключом. С-Петербург, Мир и семья, 2001. - с.43]. Известный способ заключается в следующей последовательности действий:

формируют секретный ключ в виде трех простых МДЧ p, q и d, формируют открытый ключ (n, е) в виде пары МДЧ n и e, где n - число, представляющее собой произведение двух простых МДЧ p и e, и e - МДЧ, удовлетворяющее условию ed=1 mod(р-1)(q-1), принимают электронный документ,

представленный МДЧ H, в зависимости от значения H и значения секретного ключа формируют ЭЦП в виде МДЧ Q=S=Hd mod n.

формируют первое проверочное МДЧ A=H;

формируют второе проверочное МДЧ B, для чего МДЧ S возводят в целочисленную степень е по модулю n: B=Se mod n;

сравнивают сформированные проверочные МДЧ A и B;

при совпадении параметров сравниваемых МДЧ A и B делают вывод о подлинности ЭЦП.

Недостатком известного способа является относительно большой размер подписи и необходимость увеличения размера подписи при разработке новых более эффективных алгоритмов разложения числа n на множители или при росте производительности современных вычислительных устройств. Это объясняется тем, что значение элемента подписи S вычисляется путем выполнения арифметических операций по модулю n, а стойкость ЭЦП определяется сложностью разложения модуля n на множители p и q.

Известен также способ формирования и проверки подлинности ЭЦП Эль-Гамаля, описанный в книге [Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. - СПб, Лань, 2000. - с.156-159], который включает следующие действия:

формируют простое МДЧ p и двоичное число G, являющееся первообразным корнем по модулю p, генерируют секретный ключ в виде МДЧ x, в зависимости от секретного ключа формируют открытый ключ в виде МДЧ Y=Gx mod p, принимают электронный документ (ЭД), представленный в виде МДЧ H, в зависимости от H и секретного ключа формируют ЭЦП Q в виде двух МДЧ S и R, то есть Q=(S, R);

осуществляют процедуру проверки подлинности ЭЦП, включающую вычисление двух контрольных параметров с использованием исходных МДЧ p, G, Y, H и S путем возведения МДЧ G, Y, R в дискретную степень по модулю p и сравнение вычисленных контрольных параметров;

при совпадении значений контрольных параметров делают вывод о подлинности ЭЦП.

Недостатком данного способа также является относительно большой размер ЭЦП. Это объясняется тем, что значения элементов подписи S и R вычисляются путем выполнения арифметических операций по модулю р-1 и по модулю p, соответственно.

Наиболее близким по своей технической сущности к заявленному является известный способ формирования и проверки подлинности ЭЦП, описанный в статье [Костин А.А., Молдовян Д.Н., Молдовян Н.А. Новая криптосистема с открытым ключом на основе RSA-модуля // Вопросы защиты информации. 2005 (68). №1. С.8-12]. Ближайший аналог (прототип) заключается в выполнении следующей последовательности действий:

формируют секретный ключ в виде трех МДЧ p, q и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где p, q - простые числа и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - составное число, формируют открытый ключ (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ) в виде пары МДЧ n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где n - число, представляющее собой произведение двух простых МДЧ р и q, и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - число, относящееся к МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 как к показателю по модулю n, принимают электронный документ, представленный МДЧ H, в зависимости от значения H и значения секретного ключа формируют ЭЦП Q в виде МДЧ S, то есть Q=S;

формируют первое проверочное МДЧ A, для чего МДЧ S возводят в степень H по модулю n;

формируют второе проверочное МДЧ B, для чего МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 возводят в целочисленную степень u>1 по модулю n: B=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 u mod n;

сравнивают сформированные проверочные МДЧ A и B;

при совпадении параметров сравниваемых МДЧ A и B делают вывод о подлинности ЭЦП.

Недостатком ближайшего аналога также является относительно большой размер подписи, что обусловлено необходимостью вычисление значения S путем выполнения арифметических операций по модулю n, размер которого для обеспечения требуемого уровня стойкости ЭЦП составляет 1024 бит и более.

Целью изобретения является разработка способа формирования и проверки подлинности ЭЦП, заверяющей ЭД, обеспечивающего уменьшение размера подписи без снижения уровня стойкости ЭЦП.

Поставленная цель достигается тем, что в известном способе формирования и проверки подлинности ЭЦП, заверяющей ЭД, заключающемся в том, формируют секретный ключ, включающий три МДЧ p, q и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где p, q - простые числа и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - составное число, формируют открытый ключ, включающий два МДЧ n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n и n=pq, принимают ЭД, представленный МДЧ H, в зависимости от значения H и значения секретного ключа формируют ЭЦП Q, формируют первое и второе проверочные МДЧ A и B, сравнивают их и при совпадении их параметров делают вывод о подлинности ЭЦП, новым в заявленном способе является то, что ЭЦП Q формируют в виде двух МДЧ R и S, то есть Q=(R, S), формируют первое проверочное МДЧ A в зависимости от ЭЦП, генерируют промежуточное МДЧ W в зависимости от значения МДЧ R, S, H, n и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и формируют второе проверочное МДЧ B путем сжимающего преобразования промежуточного МДЧ W.

Новым является также то, что первое проверочное МДЧ A формируют путем вычитания значения S из значения R.

Новым является также то, что первое проверочное МДЧ A формируют путем деления значения R на значение S.

Новым также является то, что первое проверочное МДЧ A формируют путем перемножения значений S и R.

Новым также является то, что первое проверочное МДЧ A формируют путем сложения значений S и R.

Новым является также то, что промежуточное МДЧ W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - МДЧ, которое вычисляют по формуле U=RS или по формуле U=RSH.

Новым также является то, что промежуточное МДЧ W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - МДЧ, которое вычисляют по формуле U=RS или по формуле U=RSH, после чего полученное промежуточное МДЧ W дополнительно преобразуют по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 WH mod n или по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 (W+H)mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания.

Новым также является то, что промежуточное МДЧ W генерируют путем выполнения операции возведения числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 в степень U по модулю n, где U - МДЧ, которое вычисляют по формуле U=RS или по формуле U=RSH, после чего дополнительно преобразуют полученное промежуточное МДЧ W по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 Wy S mod n или по формуле Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 Wy RH mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания, y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n и х - дополнительное случайное МДЧ.

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

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

Благодаря новой совокупности существенных признаков путем изменения процедуры формирования проверочных МДЧ достигается уменьшение размера подписи, а выбором фиксированного размера секретного МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обеспечивается неизменность размера подписи при увеличении размера секретного МДЧ p и q, чем и обеспечивается поддержание стойкости ЭЦП, т.е. реализуется сформулированный технический результат.

Проведенный анализ уровня техники позволил установить, что аналоги, характеризующиеся совокупностью признаков, тождественных всем признакам заявленного технического решения, отсутствуют в известных источниках информации, что указывает на соответствие заявленного изобретения условию патентоспособности «новизна».

Результаты поиска известных решений в данной и смежных областях с целью выявления признаков, совпадающих с отличительными от ближайшего аналога признаками заявленного объекта, показали, что они не следуют явным образом из уровня техники, что указывает на соответствие заявленного изобретения условию «изобретательский уровень».

Возможность реализации заявленного способа объясняется следующим образом. Известно, что сложность задачи разложения целого числа на два больших простых множителя зависит от длины последних, поэтому при появлении новых методов разложения увеличивают длину его простых множителей. Открытый ключ формируют в виде составного числа n=pq в зависимости от секретных простых чисел n и q, выбираемых такими, чтобы число q - 1 делилось на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и не делилось на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , а число p - 1 делилось на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и не делилось на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Причем числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирают длиной примерно равной 80-256 бит, что предотвращает возможность угадывания или подбора их значений. Выбирая в качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 некоторое число, относящееся по модулю n к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , мы можем воспользоваться следующими выражениями для формирования первого и второго проверочных МДЧ A и B, соответственно: A=F(способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 k mod n) и B=F(способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n), где F есть некоторая сжимающая функция, вычисляемая путем выполнения сжимающего преобразования числа, являющегося ее аргументом, а элемент подписи R вычисляется по предварительно выбираемому случайному числу k по формуле R=F(способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 k mod n). Например, в качестве сжимающей функции можно использовать операцию взятия остатка от деления на МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , имеющее заданную длину и определяющее размер значения функции F. В качестве сжимающей функции можно также использовать хэш-функции, описанные, например, в книге [Молдовян А.А., Молдовян Н.А. Введение в криптосистемы с открытым ключом. - СПб. БХВ-Петербург, 2005. - 286 с.; см. с.184-204].

С учетом выбора числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 равенство A=B выполняется, когда выполняется сравнение k=RSH mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , откуда получаем формулу для вычисления подписи:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Владелец секретного числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 может легко вычислить правильное значение элемента подписи S, которое будет зависеть от предварительно сформированного значения R и значения H. При этом разрядность элемента подписи S не будет превышать разрядности секретного числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , так как число S вычисляется по модулю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Сформированная таким образом подпись (R, S) будет удовлетворять процедуре проверки подлинности ЭЦП. Стойкость ЭЦП определяется сложностью разложения модуля n на множители и сложностью логарифмирования по модулю n при основании способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Поскольку число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 относится к достаточно большому показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , то сложность логарифмирования не ниже сложности разложения n на множители. Эта задача при разрядности n равной 1024 бит и более являются практически не реализуемой. При появлении новых методов дискретного логарифмирования или новых методов разложения числа n на множители разрядность и может быть выбрана равной 2048 бит и более при сохранении разрядности значения сжимающей функции и разрядности секретного числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Разрядность сжимающей функции равная 80-256 бит делает пренебрежимой вероятность нахождения правильного значения подписи без использования секретного ключа. Разрядность сжимающей функции определяет разрядность элемента подписи R. Поскольку способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , то разрядность способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 равна примерно сумме разрядности способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и разрядности способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , что составляет 160-512 бит. С учетом этого замечания получаем, что размер подписи (R, S) составляет от 240 до 768 бит. При этом в заявляемом способе формирования и проверки подлинности подписи имеется механизм, обеспечивающий сохранность размера подписи при увеличении размера чисел, задающих сложность задачи разложения на множители или дискретного логарифмирования. Сжимающую функцию F(W) можно определить через операцию взятия остатка от деления на некоторое простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , имеющее требуемую разрядность: F(W)=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и разрядность числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 равна от 80 до 256 бит.

Рассмотрим примеры реализации заявленного технического решения с искусственно уменьшенной разрядностью используемых чисел.

Пример 1. Реализации заявляемого способа с иллюстрацией конкретных численных значений.

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

1. Формируют секретный ключ в виде тройки чисел (р, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где

МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =1721, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =48463 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =83404823;

МДЧ p=572способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 +1=984413 и МДЧ q=12способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 +1=581557.

2. Формируют открытый ключ в виде пары чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где

МДЧ n=pq=572492271041;

МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =286266028236.

3. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), рассылаемый, например, удостоверяющим центром по телекоммуникационным сетям.

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

H=37975637.

5. Формируют ЭЦП Q в виде пары чисел (R, S), для чего выполняют следующие действия:

5.1. Задают случайное число k=4757231.

5.2. Формируют элемент подписи R путем выполнения операций, задаваемых формулой R=(способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 k mod n) mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =84713:

S=77530.

5.3. Формируют элемент подписи S путем выполнения операций, задаваемых формулой способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 :

S=1371543.

6. Формируют первое проверочное МДЧ A в зависимости от ЭЦП: A=R=77530.

7. Генерируют промежуточное МДЧ W в зависимости от H в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=RSH=4038167036659489230:

W=179477867971.

8. Формируют второе проверочное МДЧ В путем сжимающего преобразования промежуточного МДЧ W, причем в качестве сжимающего преобразования используют операцию взятия остатка от деления на число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =84713:

B=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =179477867971 mod 84713=77530.

9. Сравнивают (например, поразрядно) параметры первого и второго проверочных МДЧ A и B. Сравнение показывает, что параметры МДЧ A и B совпадают, что указывает на подлинность ЭЦП, т.е. принятая ЭЦП относится к принятому ЭД, представленному МДЧ H, и сформирована подписывающим, которому соответствует принятый открытый ключ (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ).

Рассмотренные в примере реализации заявленного способа действия обеспечивают корректность работы заявляемого способа, поскольку в общем случае для произвольной длины чисел n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , p, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , H, R и S, сформированных в соответствии с заявляемым способом. Это доказывается теоретически следующим образом:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Правильное значение ЭЦП можно вычислить только при знании секретного МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . В тоже время проверка правильности подписи осуществляется с использованием открытого ключа (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ). Для несанкционированного формирования ЭЦП необходимо разложить число n на множители p и q, затем разложить числа p - 1 и q - 1 и найти значение способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Однако при большой разрядности числа n эта задача вычислительно нереализуема. При появлении новых методов решения задачи разложения можно увеличить длину чисел p и q, а следовательно увеличить и длину числа n, сохраняя прежний размер числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и прежнюю сжимающую функции. Это обеспечит сохранение размера подписи при задании требуемого значения сложности задачи разложения числа n на множители. При этом увеличение размера числа n также приведет и к увеличению сложности задачи дискретного логарифмирования, связанную с попытками вычисления значения k по значению R и последующего определения секретного значения способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 как одного из делителей числа RSH - k.

В приводимых ниже дополнительных примерах реализации заявляемого способа не указывается конкретное значение численных значений. Корректность работы способа доказывается математическим способом для произвольных значений параметров, выбранных в соответствии с описанием изобретения и конкретизацией вариантов реализации в отдельных примерах.

Пример 2. Реализация заявляемого способа для выработки ЭЦП длиной 240 бит.

В качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 используются числа длиной 160 бит и 80 бит, соответственно, благодаря чему размер подписи сокращается до длины 240 бит при сохранении высокой криптостойкости. В данном примере выполняется следующая последовательность действий.

1. Формируют секретный ключ в виде тройки чисел (p, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 делит нацело число q - 1 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 делит число p - 1, МДЧ p и q есть простые числа. Длина чисел способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирается равной 80 бит, что задает длину числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , равной примерно 160 бит.

2. Формируют открытый ключ в виде пары чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где МДЧ n=pq и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 есть число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n.

3. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), рассылаемый, например, удостоверяющим центром по телекоммуникационным сетям.

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

5. Формируют ЭЦП в виде двух чисел R и S, для чего выполняют следующие действия:

5.1. Задают случайное число k.

5.2. Формируют элемент подписи R путем выполнения операций, задаваемых формулой R=F(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 kH mod n)=(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 kH mod n) mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , где способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 - дополнительное простое число длиной 80 бит. Поскольку последняя формула задает вычисления по модулю длины 80 бит, то значение R также имеет длину 80.

5.3. Формируют элемент подписи S путем выполнения операций, задаваемых формулой способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Эта формула задает вычисления по модулю длины 160 бит, поэтому значение S также имеет длину 160 бит, а ЭЦП - длину 240 бит.

6. Формируют первое проверочное МДЧ A в зависимости от ЭЦП: A=R.

7. Генерируют промежуточное МДЧ W в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=RSH.

8. Преобразуют промежуточное МДЧ W в соответствии с формулой Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 HW mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания. В результате этого преобразования получаем: W=Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n.

9. Формируют второе проверочное МДЧ В путем сжимающего преобразования промежуточного МДЧ W, используя в качестве сжимающего преобразования операцию взятия остатка от деления на простое число способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 :

B=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

10. Сравнивают (например, поразрядно) параметры первого и второго проверочных чисел A и B.

Совпадение значений A и B означает, что ЭЦП является подлиной, т.е. она относится к принятому ЭД, представленному МДЧ H, и сформирована подписывающим, которому соответствует принятый открытый ключ (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ).

Это доказывается теоретически следующим образом. Мы имеем B=(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 HRS mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Поскольку способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 есть число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n, то:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Пример 3. Реализация заявляемого способа для выработки ЭЦП длиной 320 бит.

В данном примере в качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 используются числа длиной 160 бит, благодаря чему размер подписи равен 320 бит при сохранении высокой криптостойкости. В данном примере выполняется следующая последовательность действий.

1. Формируют секретный ключ в виде тройки чисел (р, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где длина числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирается равной 160 бит.

2. Формируют открытый ключ в виде пары чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где МДЧ n=pq и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 есть число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n.

3. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), рассылаемый, например, удостоверяющим центром по телекоммуникационным сетям.

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

5. Формируют ЭЦП в виде двух чисел R и S, для чего выполняют следующие действия:

5.1. Задают случайное число k.

5.2. Задают первое дополнительное МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 длиной 160 бит.

5.3. Вычисляют второе дополнительное МДЧ G по формуле

G=F(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 k mod n)=(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 k mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

Формула для формирования G задает вычисления по модулю длины 160 бит, поэтому значение G имеет длину 160 бит.

5.4. Формируют ЭЦП в виде следующих двух чисел: способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и R=S+G. Формула для формирования S задает вычисления по модулю длины 160 бит, поэтому значение S имеет длину 160 бит. Элемент подписи R имеет также длину примерно 160 бит, поскольку он является суммой двух чисел длины 160 бит. Длина ЭЦП равна сумме длин ее элементов R и S, т.е. ЭЦП имеет длину 320 бит.

6. Формируют первое проверочное МДЧ A в зависимости от ЭЦП:

A=R-S.

7. Генерируют промежуточное МДЧ W в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=RSH.

8. Преобразуют промежуточное МДЧ W в соответствии с формулой Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 HW mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания. В результате этого преобразования получаем: W=Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n.

9. Формируют второе проверочное МДЧ B:

B=F(W)=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

10. Сравнивают (например, поразрядно) параметры первого и второго проверочных чисел A и B.

Совпадение значений A и B означает, что ЭЦП является подлинной, т.е. она относится к принятому ЭД, представленному МДЧ H, и сформирована подписывающим, которому соответствует принятый открытый ключ (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ). Это доказывается теоретически следующим образом. Мы имеем В=(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Вычислим значение способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 . Далее имеем:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Поскольку A=R-S=(G+S)-S=G, то A=B.

Пример 4. Реализация заявляемого способа для выработки ЭЦП длиной 400 бит.

В данном примере качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 используются числа длиной 160 бит и 80 бит, соответственно, и выполняется следующая последовательность действий.

1. Формируют секретный ключ в виде тройки чисел (р, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ). Длина числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирается равной 160 бит.

2. Формируют открытый ключ в виде тройки чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где МДЧ n=pq и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 есть число, относящееся к показателю способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 по модулю n.

3. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), рассылаемый, например, удостоверяющим центром по телекоммуникационным сетям.

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

5. Формируют ЭЦП в виде двух чисел R и S, для чего выполняют следующие действия:

5.1. Задают случайное число k.

5.2. Задают первое дополнительное МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 длиной 80 бит.

5.3. Вычисляют второе дополнительное МДЧ G по формуле

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Формула для формирования G задает вычисления по модулю длины 80 бит, поэтому значение G имеет длину 80 бит.

5.4. Формируют ЭЦП в виде следующих двух чисел: способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и R=S·G. Формула для формирования S задает вычисления по модулю длины 160 бит, поэтому значение S имеет длину 160 бит. Элемент подписи R имеет длину примерно 240 бит, поскольку он является произведением чисел длины 160 бит и 80 бит. Длина ЭЦП равна сумме длин ее элементов R и S, т.е. ЭЦП имеет длину 400 бит.

6. Формируют первое проверочное МДЧ A в зависимости от ЭЦП:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

7. Генерируют промежуточное МДЧ W в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=RSH.

8. Преобразуют промежуточное МДЧ W в соответствии с формулой Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 HW mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания. В результате этого преобразования получаем: W=Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n.

9. Формируют второе проверочное МДЧ B:

B=F(W)=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RSH mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

10. Сравнивают (например, поразрядно) параметры первого и второго проверочных чисел A и B.

Совпадение значений A и B означает, что ЭЦП является подлинной, т.е. ЭЦП относится к принятому ЭД, представленному МДЧ H, и была сформирована подписывающим, которому соответствует принятый открытый ключ (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ). Это доказывается теоретически следующим образом. Для ЭЦП, сформированной по секретному ключу, мы имеем:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Поскольку способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , то A=B.

Пример 5. Реализация заявляемого способа для выработки ЭЦП длиной 240 бит.

В данном примере качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 используются числа длиной 160 бит и 80 бит, соответственно. Этот пример отличается от приведенных выше тем, что после формирования открытого ключа генерируют первое вспомогательное случайное МДЧ x и второе вспомогательное МДЧ y, которое зависит от х по формуле y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n. В данном примере выполняется следующая последовательность действий.

1. Формируют секретный ключ в виде тройки чисел (р, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где длина числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирается равной 160 бит.

2. Формируют открытый ключ в виде пары чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ).

3. Генерируют первое вспомогательное случайное МДЧ x.

4. Генерируют второе вспомогательное МДЧ y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n.

5. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ) и второе вспомогательное МДЧ y, рассылаемые, например, удостоверяющим центром по телекоммуникационным сетям.

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

7. Формируют ЭЦП в виде двух чисел R и S, для чего выполняют следующие действия:

7.1. Задают случайное число k.

7.2. Задают первое дополнительное МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 длиной 80 бит.

7.3. Вычисляют второе дополнительное МДЧ G по формуле

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Формула для формирования G задает вычисления по модулю длины 80 бит, поэтому значение G имеет длину 80 бит.

7.4. Формируют ЭЦП в виде следующих двух чисел:

R=G и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Формула для формирования S задает вычисления по модулю длины 160 бит, поэтому значение S имеет длину 160 бит. Элемент подписи R имеет длину 80 бит, поскольку МДЧ G имеет длину 80 бит. Длина ЭЦП равна сумме длин ее элементов R и S, т.е. ЭЦП имеет длину 240 бит.

8. Формируют первое проверочное МДЧ A в зависимости от ЭЦП:

A=R.

9. Генерируют промежуточное МДЧ W в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=RH.

10. Преобразуют промежуточное МДЧ W в соответствии с формулой Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 HWyS mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания. В результате этого преобразования получаем: W=Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RHyS mod n.

11. Формируют второе проверочное МДЧ B:

B=F(W)=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(Hспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 RHyS mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

12. Сравнивают (например, поразрядно) параметры первого и второго проверочных чисел A и B.

Совпадение значений A и B означает, что ЭЦП является подлинной, т.е. относящейся к принятому ЭД, представленному МДЧ H, и сформирована подписывающим, которому соответствует принятый открытый ключ. Это доказывается теоретически следующим образом. Мы имеем:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Поскольку A=G, то A=B.

Пример 6. Реализация заявляемого способа для выработки ЭЦП длиной 400 бит.

В данном примере качестве способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 используются числа длиной 160 бит и 80 бит, соответственно. Этот пример (также как и пример 5) раскрывает реализацию заявляемого способа в соответствии с п.8 формулы изобретения, согласно которому после формирования открытого ключа генерируют первое вспомогательное случайное МДЧ x и второе вспомогательное МДЧ y, которое зависит от x по формуле y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n. В примере 6 выполняется следующая последовательность действий.

1. Формируют секретный ключ в виде тройки чисел (p, q, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ), где длина числа способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 выбирается равной 160 бит.

2. Формируют открытый ключ в виде пары чисел (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ).

3. Генерируют первое вспомогательное случайное МДЧ x.

4. Генерируют второе вспомогательное МДЧ y=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 x mod n.

5. Принимают открытый ключ подписывающего (n, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 ) и второе вспомогательное МДЧ y, рассылаемые, например, удостоверяющим центром по телекоммуникационным сетям.

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

7. Формируют ЭЦП в виде двух чисел R и S, для чего выполняют следующие действия:

7.1. Задают случайное число k.

7.2. Задают первое дополнительное МДЧ способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 длиной 80 бит.

7.3. Вычисляют второе дополнительное МДЧ G по формуле

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Формула для формирования G задает вычисления по модулю длины 80 бит, поэтому значение G имеет длину 80 бит.

7.4. Формируют ЭЦП в виде следующих двух чисел:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 и R=GS.

Формула для формирования S задает вычисления по модулю длины 160 бит, поэтому значение S имеет длину 160 бит. Элемент подписи R имеет длину примерно 240 бит, поскольку он является произведением чисел длины 160 бит и 80 бит. Длина ЭЦП равна сумме длин ее элементов R и S, т.е. ЭЦП имеет длину 400 бит.

8. Формируют первое проверочное МДЧ A в зависимости от ЭЦП:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

9. Генерируют промежуточное МДЧ W в соответствии с формулой W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 U mod n, где U=SH.

10. Преобразуют промежуточное МДЧ W в соответствии с формулой Wспособ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 WyR mod n, где знак способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 обозначает операцию присваивания. В результате этого преобразования получаем: W=способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 SHyR mod n.

11. Путем сжимающего преобразования промежуточного МДЧ W формируют второе проверочное МДЧ B:

B=F(W)=W mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =(способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 SHyR mod n)mod способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 .

12. Сравнивают (например, поразрядно) параметры первого и второго проверочных чисел A и B.

Совпадение значений A и B означает, что ЭЦП является подлиной, т.е. относится к принятому ЭД, представленному МДЧ H, и сформирована подписывающим, которому соответствует принятый открытый ключ. Это доказывается теоретически следующим образом. Для ЭЦП, сформированной с использованием правильного значения секретного ключа, мы имеем:

способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767

Поскольку A=С, то A=B.

Таким образом, показано, что заявляемый способ может быть положен в основу стойких систем ЭЦП, обеспечивающих уменьшение размера подписи по сравнению с известными решениями и сохранение размера подписи при появлении новых более эффективных алгоритмов решения задачи разложения чисел на множители и задачи дискретного логарифмирования, т.е. низкую вероятность несанкционированного формирования ЭЦП («ложного» подтверждения подлинности ЭЦП).

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

Приложение 1

Толкование терминов, используемых в описании заявки

1. Двоичный цифровой электромагнитный сигнал - последовательность битов в виде нулей и единиц.

2. Параметры двоичного цифрового электромагнитного сигнала: разрядность и порядок следования единичных и нулевых битов.

3. Разрядность двоичного цифрового электромагнитного сигнала - общее число его единичных и нулевых битов, например, число 10011 является 5-разрядным.

4. Электронная цифровая подпись (ЭЦП) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от подписанного электронного документа и от секретного ключа. Проверка подлинности ЭЦП осуществляют с помощью открытого ключа, который зависит от секретного ключа.

5. Электронный документ (ЭД) - двоичный цифровой электромагнитный сигнал, параметры которого зависят от исходного документа и способа его преобразования к электронному виду.

6. Секретный ключ - двоичный цифровой электромагнитный сигнал, используемый для формирования подписи к заданному электронному документу. Секретный ключ представляется, например, в двоичном виде как последовательность цифр «0» и «1».

7. Открытый ключ - двоичный цифровой электромагнитный сигнал, параметры которого зависят от секретного ключа и который предназначен для проверки подлинности цифровой электронной подписи.

8. Хэш-функция от электронного документа - двоичный цифровой электромагнитный сигнал, параметры которого зависят от электронного документа и выбранного метода ее вычисления.

9. Многоразрядное двоичное число - двоичный цифровой электромагнитный сигнал, интерпретируемый как двоичное число и представляемый в виде последовательности цифр «0» и «1».

10. Операция возведения числа S в дискретную степень A по модулю n - это операция, выполняемая над конечным множеством натуральных чисел {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 - число, являющееся результатом выполнения данной операции.

11. Функция Эйлера от натурального числа n - это число чисел, являющихся взаимно простыми с n и не превосходящими n [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.; Бухштаб А.А. Теория чисел. - М.: Просвещение, 1966. - 384 с].

12. Показатель q по модулю n числа a, являющегося взаимно простым с n - это минимальное из чисел способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , для которых выполняется условие способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 mod n=1, т.е. q=min {способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 1, способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 2, ...} [Виноградов И.М. Основы теории чисел. - М.: Наука, 1972. - 167 с.].

13. Первообразный корень - это число относящееся к показателю, который равен функции Эйлера от модуля.

14. Обратный элемент по модулю n к числу способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 , являющемуся взаимно простым с n, есть натуральное число, обозначаемое как способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 -1, для которого выполняется условие способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 -1способ формирования и проверки подлинности электронной цифровой   подписи, заверяющей электронный документ, патент № 2325767 =1; для любого числа, являющегося взаимно простым с модулем, существует элемент, обратный этому числу. Известны эффективные алгоритмы вычисления обратных элементов [Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. - М., Радио и связь. - с.308 - 310].

15. Операция деления целого числа А на целое число В по модулю n выполняется как операция умножения по модулю n числа А на целое число В -1, которое является обратным к В по модулю n.

Класс H04L9/32 со средствами для установления личности или полномочий пользователя системы

методики обеспечения и управления цифровым телефонным аппаратом для аутентификации с сетью -  патент 2518441 (10.06.2014)
способ и устройство для генерации и аутентификации псевдонима -  патент 2512139 (10.04.2014)
способ и устройство управления потоками данных распределенной информационной системы -  патент 2509425 (10.03.2014)
аутентификация потоков данных -  патент 2509424 (10.03.2014)
интеграция корпоративной авторизации идентичности в конференциях -  патент 2507692 (20.02.2014)
сетевая архитектура для безопасной передачи данных -  патент 2504912 (20.01.2014)
электронная сертификация, индентификация и передача информации с использованием кодированных графических изображений -  патент 2494455 (27.09.2013)
способ аутентификации пользовательского терминала в сервере интерфейса, а также сервер интерфейса и пользовательский терминал для его осуществления -  патент 2491771 (27.08.2013)
способ аутентификации пользовательского терминала и сервер аутентификации и пользовательский терминал для него -  патент 2491733 (27.08.2013)
способы для автоматической идентификации участников для события мультимедийной конференц-связи -  патент 2488227 (20.07.2013)
Наверх