способ шифрования

Классы МПК:H04K1/00 Секретная связь
Патентообладатель(и):Молдовян Николай Андреевич (RU)
Приоритеты:
подача заявки:
2009-08-26
публикация патента:

Изобретение относится к области электросвязи, а именно к области криптографических устройств и способов защиты информации, передаваемой по открытым каналам телекоммуникационных систем. Техническим результатом является повышение скорости шифрования. Технический результат достигается тем, что способ шифрования включает следующую последовательность действий: генерируют конечную группу Г, формируют сообщение в виде элемента М конечной группы Г, генерируют секретный ключ шифрования, генерируют криптограмму в виде элемента С конечной группы Г путем преобразования сообщения М в зависимости от секретного ключа шифрования, причем в качестве конечной группы Г генерируют некоммутативную конечную группу, генерируют секретный ключ шифрования в виде двух элементов X и W группы Г и многоразрядного двоичного числа е, генерируют криптограмму С путем формирования элемента R конечной группы Г, равного е-й степени сообщения М, т.е. R=Ме, формирования элемента V конечной группы Г в зависимости от элементов X и R конечной группы Г и последующего выполнения групповой операции между элементами V и W конечной группы Г. 3 з.п. ф-лы, 3 табл.

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

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

2. Способ по п.1, отличающийся тем, что формируют элемент V конечной группы Г путем выполнения групповой операции между элементами X и R конечной группы Г.

3. Способ по п.2, отличающийся тем, что генерируют секретный ключ шифрования в виде многоразрядного двоичного числа е и двух элементов X и W группы Г, удовлетворяющих условию способ шифрования, патент № 2411666 где знак способ шифрования, патент № 2411666 обозначает групповую операцию.

4. Способ по п.2, отличающийся тем, что генерируют секретный ключ шифрования в виде многоразрядного двоичного числа е и двух взаимно обратных элементов X и W группы Г, для которых выполняются условия W=X -1 и X=W-1.

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

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

Известен способ шифрования путем формирования секретного ключа, генерации ключевого потока в виде последовательности битов, зависящих от секретного ключа, и сложения текущих битов ключевого потока с текущими битами передаваемого сообщения [Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. СПб., Лань, 2000. - 218 с.; см. с.88-89]. Недостатком этого способа шифрования является необходимость синхронизации ключевого потока и потока данных.

Также известен способ шифрования, включающий генерацию 56-битового секретного ключа, формирование сообщения М в виде 64-битового блока данных, разбиение блока данных, генерацию криптограммы, представляющей собой 64-битовый блок данных, преобразованных в зависимости от секретного ключа [Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. С-Петербург, Лань, 2000. - 218 с.; см. с.68-73]. При этом генерация криптограммы осуществляется путем разбиения сообщения М на два 32-битовых подблока данных и поочередное преобразование подблоков в зависимости от секретного ключа. Недостатком этого способа является малый размер секретного ключа, что не обеспечивает криптостойкости, соответствующей современным требованиям.

Также известен способ шифрования, включающий генерацию мультипликативной группы Г, генерацию секретного ключа в виде двух больших простых чисел р и q, генерацию открытого ключа в виде многоразрядных двоичных чисел1 (Толкование терминов, используемых в описании, приведено в Приложении 1) (МДЧ) n и е, генерацию дополнительного секретного ключа в виде МДЧ d, формирование сообщения в виде элемента М группы Г и генерацию криптограммы в виде элемента С группы Г путем возведения сообщения М в степень е по модулю n [Смарт Н. Мир программирования. Криптография. М.: ТЕХНОСФЕРА, 2005. - 525 с.; см. с.192-193]. Генерация группы Г осуществляется путем генерации трудноразложимого на простые множители числа n. Число n задает множество чисел {1, 2, 3, способ шифрования, патент № 2411666 , n-1}, включающее подмножество взаимно простых с n чисел, которое образует конечную группу с групповой операцией, являющейся операцией умножения по модулю n. Расшифрование криптограммы осуществляется путем возведения криптограммы С в степень d по модулю n. Недостатком этого способа шифрования является достаточно низкая скорость расшифрования криптограммы, что связано с тем, что для обеспечения требуемой стойкости следует генерировать модуль n, разрядность которого составляет не менее 1024 бит. При этом, если генерируется открытый ключ, в котором МДЧ е имеет сравнительно малую разрядность, то вычисляемое в зависимости от е МДЧ d имеет разрядность, примерно равную разрядности модуля n. Если генерируется дополнительный секретный ключ d таким образом, чтобы он имел сравнительно малую разрядность, то МДЧ е, вычисляемое в зависимости от МДЧ d, имеет разрядность, примерно равную разрядности модуля n. Это приводит к тому, что скорость расшифрования увеличивается, но при этом скорость шифрования становится низкой.

Наиболее близким по своей технической сущности к заявленному является известный способ шифрования, описанный в книге [Смарт Н. Мир программирования. Криптография. М.: ТЕХНОСФЕРА, 2005. - 525 с.; см. с.200-202]. Ближайший способ-аналог (прототип) включает следующие действия:

1. Генерируют конечную группу Г, включающую множество целых чисел {1, 2, способ шифрования, патент № 2411666 , р-1}, над которыми в качестве групповой операции задана операция умножения по модулю р, где р - простое МДЧ, разрядность которого составляет не менее 1024 бит. Для этого генерируют простое число р требуемой разрядности.

2. Формируют элемент G конечной группы Г, представляющий собой МДЧ Gспособ шифрования, патент № 2411666 {1, 2, способ шифрования, патент № 2411666 , р-1}, относящееся к показателю р-1 по модулю р.

3. У получателя сообщения генерируют открытый ключ в виде элемента Y конечной группы Г, для чего генерируют его личный секретный ключ в виде МДЧ х, разрядность которого выбирают не менее 160 бит, и вычисляют Н по формуле Н=Gxmod p.

4. Открытый ключ G передают по открытому каналу отправителю сообщения.

5. У отправителя сообщения генерируют секретный ключ шифрования в виде элемента Z конечной группы Г, для чего формируют вспомогательный секретный ключ в виде МДЧ k, разрядность которого выбирают не менее 160 бит, и вычисляют элемент R группы Г по формуле R=Gkmod p. По открытому ключу получателя и вспомогательному секретному ключу k генерируют секретный ключ шифрования Z по формуле Z=Hkmod p.

6. Формируют сообщение в виде элемента М конечной группы Г, т.е. в виде МДЧ Мспособ шифрования, патент № 2411666 {1, 2, способ шифрования, патент № 2411666 , р-1}.

7. Генерируют криптограмму в виде элемента С конечной группы Г путем выполнения групповой операции между элементами Z и М, т.е. по формуле С=ZMmod p.

В результате выполненных действий получена криптограмма С, в котором содержится зашифрованное сообщение М. Криптограмму С можно передавать по открытому каналу, так как без знания секретного ключа Z или личного секретного ключа получателя х и элемента R группы Г практически невозможно получить исходное сообщение из криптограммы. Чтобы получатель мог правильно расшифровать криптограмму, т.е. сгенерировать по ней исходное сообщение, ему отправляют вместе с криптограммой С также и элемент R группы Г. Он генерирует исходное сообщение М, выполняя вычисления по формуле: М=R-xCmod p.

Недостатком ближайшего аналога является относительно высокая сложность процедуры шифрования, поскольку для каждого нового сообщения генерируется новое значение вспомогательного секретного ключа k и выполняются две операции возведения в k-ю степень по модулю МДЧ р, разрядность которого из соображения получения достаточной криптостойкости выбирается равной 1024 бит и более. Наиболее быстрый алгоритм возведения в большую степень по модулю использует таблицу предвычислений и требует выполнения способ шифрования, патент № 2411666 операций умножения по модулю, где способ шифрования, патент № 2411666 - разрядность МДЧ k. Другим недостатком является то, что для хранения или передачи по каналу связи сообщения размером, например 1024 бит, требуется хранить или передавать два элемента С и R группы Г, размер каждого из которых равен примерно 1024 бит. Элемента R группы Г представляет собой дополнительный блок данных, ассоциированный с криптограммой. Он требуется для обеспечения возможности вычисления сообщения М из криптограммы по секретному ключу расшифрования. Это увеличивает в два раза объем требуемой памяти и время передачи сообщения по каналу связи.

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

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

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

Некоммутативную конечную группу Г можно задать, расширяя способ задания коммутативны мультипликативных групп векторов, предложенный в работе [Молдовян П.А., Дернова Е.С., Молдовян Д.Н. Синтез конечных расширенных полей для криптографических приложений // Вопросы защиты информации. 2008. № 3(82). С.2-7]. Примеры задания некоммутативных групп векторов с операцией умножения векторов, обладающей относительно низкой сложностью, приведены ниже. Благодаря сравнительно низкой сложности операции векторного умножения и возможности ее эффективного распараллеливания обеспечивается существенное повышение скорости шифрования.

Новым является также и то, что формируют элемент V конечной группы Г путем выполнения групповой операции между элементом Х конечной группы Г и сообщением М.

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

Новым является также и то, что генерируют секретный ключ шифрования в виде двух элементов Х и W группы Г, удовлетворяющих условию Xспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 X, где знак способ шифрования, патент № 2411666 обозначает групповую операцию.

Вычисление секретного ключа в виде двух некоммутирующих элементов группы дополнительно повышает криптостойкость шифрования.

Новым является также и то, что генерируют секретный ключ шифрования в виде двух взаимно обратных элементов Х и W группы Г, для которых выполняются условия W=X-1 и Х=W-1.

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

Новым является также и то, что генерируют дополнительный секретный ключ шифрования в виде МДЧ е, формируют элемент V конечной группы Г путем формирования элемента R конечной группы Г, равного е-й степени сообщения М, т.е. R=Me, и последующего выполнения групповой операции между элементами X и R конечной группы Г, т.е. по формуле V=Xспособ шифрования, патент № 2411666 Me.

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

Изобретательский замысел заявленного нового технического решения состоит в применении некоммутативных конечных групп, в которых в общем случае результат выполнения групповой операции зависит от порядка расположения элементов группы, над которыми выполняется групповая операция. Благодаря этому уравнения вида C=Xспособ шифрования, патент № 2411666 Zспособ шифрования, патент № 2411666 X-1 с неизвестным значением X являются трудно решаемыми при соответствующем выборе группы Г и ее элементов Y и Z. Это позволяет использовать значение Х в качестве секретного ключа шифрования и выполнять шифрование по формуле C=Xспособ шифрования, патент № 2411666 Mспособ шифрования, патент № 2411666 X-l, предварительно формируя сообщение в виде элемента М группы Г. В общем случае в некоммутативных группах для двух ее элементов Х и Z обычно выполняется неравенство Zспособ шифрования, патент № 2411666 Хспособ шифрования, патент № 2411666 Хспособ шифрования, патент № 2411666 Z. Вероятность случайного выбора двух элементов Х и Z некоммутативной группы таких, что Zспособ шифрования, патент № 2411666 X=Xспособ шифрования, патент № 2411666 Z является достаточно малой. Чтобы шифрование приводило к изменению сообщения М, и в этих случаях можно применить шифрование по формуле

C=Xспособ шифрования, патент № 2411666 Mспособ шифрования, патент № 2411666 W,

где для элементов Х и W, используемых в качестве секретного ключа шифрования, выполняется неравенство Zспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Z. При этом в некоммутативных группах всегда существуют коммутативные подгруппы Гкспособ шифрования, патент № 2411666 , что может быть использовано для осуществления коммутативного шифрования.

Для этого следует задать одну коммутативную подгруппу Гхспособ шифрования, патент № 2411666 для случайного выбора из нее элемента Х секретного ключа шифрования, а другую Гwспособ шифрования, патент № 2411666 - для случайного выбора из нее элемента W секретного ключа шифрования. Задание таких коммутативных подгрупп может быть осуществлено следующим образом. Генерируются два элемента группы Gx и Gw, порядок которых является достаточно большим простым числом q и для которых имеет место неравенство G xспособ шифрования, патент № 2411666 Gwспособ шифрования, патент № 2411666 Gwспособ шифрования, патент № 2411666 Gx. Для генерации секретного ключа в виде пары элементов Х и W группы Г генерируют два случайных МДЧ а и b, каждое из которых не превосходит q. Элемент Х и вычисляют по формуле способ шифрования, патент № 2411666 а элемент W - по формуле способ шифрования, патент № 2411666 При этом для любых МДЧ а и b, в силу неравенства G xспособ шифрования, патент № 2411666 Gwспособ шифрования, патент № 2411666 Gwспособ шифрования, патент № 2411666 Gx, имеет место неравенство способ шифрования, патент № 2411666 т.е. Xспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 X. В то же время для любых двух МДЧ а и аспособ шифрования, патент № 2411666 элементы способ шифрования, патент № 2411666 и способ шифрования, патент № 2411666 коммутируют между собой, т.е. имеет место равенство Хспособ шифрования, патент № 2411666 Хспособ шифрования, патент № 2411666способ шифрования, патент № 2411666 способ шифрования, патент № 2411666 Х. Аналогично для любых двух МДЧ b и bспособ шифрования, патент № 2411666 элементы способ шифрования, патент № 2411666 и способ шифрования, патент № 2411666 имеет место равенство Хспособ шифрования, патент № 2411666 Хспособ шифрования, патент № 2411666способ шифрования, патент № 2411666 способ шифрования, патент № 2411666 Х. Если в качестве первого ключа шифрования использовать пару элементов Х и W, а в качестве второго ключа шифрования - пару элементов Xспособ шифрования, патент № 2411666 и Wспособ шифрования, патент № 2411666 , то будет реализовываться коммутативное шифрование, для которого результат шифрования по двум ключам не зависит от очередности их использования. Детально особенности коммутативного шифрования рассмотрены в книге [Молдовян Н.А., Молдовян А.А. Введение в криптосистемы с открытым ключом. С-Петербург. БХВ-Петербург, 2005. - 286 с.], где также рассмотрены специальные технические области их применения (см. с.129-133 и с.237-238). Расшифрование криптограммы С осуществляется по формуле

M=X -1способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1,

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

C=Xспособ шифрования, патент № 2411666 Meспособ шифрования, патент № 2411666 W,

а формула расшифрования - вид М=(Xспособ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W)d, где d - дополнительный секретный ключ расшифрования, который легко вычисляется из дополнительного секретного ключа шифрования как МДМ, обратное к МДЧ е по модулю, равному максимальному значению порядка элементов группы. При этом обеспечивается более высокая скорость шифрования по сравнению с прототипом. Если в варианте реализации заявленного способа с дополнительным секретным ключом шифрования использовать пару элементов Х и W, таких что выполняется условие Х и W=X-1, то процедура шифрования будет обладать свойством коммутативности. Действительно, для произвольных элементов V, М и X некоммутативной группы Г выполняется соотношение (Xспособ шифрования, патент № 2411666 Mспособ шифрования, патент № 2411666 X-l)способ шифрования, патент № 2411666 (Xспособ шифрования, патент № 2411666 Vспособ шифрования, патент № 2411666 X-l)=Xспособ шифрования, патент № 2411666 (Mспособ шифрования, патент № 2411666 V)способ шифрования, патент № 2411666 X-1, из которого легко установить справедливость формулы

(Xспособ шифрования, патент № 2411666 Mспособ шифрования, патент № 2411666 X-1)s=Xспособ шифрования, патент № 2411666 Msспособ шифрования, патент № 2411666 X-1.

Выполнимость последнего соотношения обусловливается тем фактом, что групповая операция обладает свойством ассоциативности в группах любого типа (см. с.28-43 в книге [Б.Л. ван дер Варден «Алгебра». Изд-во «Лань». 2004 г. - 623 с.]). Данное соотношение обусловливает свойство коммутативности процедуры шифрования также и в случае использования дополнительного секретного ключа шифрования. Действительно, пусть дана первая пара элементов Х1 и W11способ шифрования, патент № 2411666 -1 (первый секретный ключ шифрования) и первое МДЧ е1 (первый дополнительный секретный ключ шифрования), задающие функцию шифрования Е1, а также дана вторая пара элементов X2 и способ шифрования, патент № 2411666 (второй секретный ключ шифрования) и второе МДЧ е 2 (второй дополнительный секретный ключ шифрования), задающие функцию Е2. Легко показать, что имеет место равенство Е21(М))=E1(E2(M)), определяющее свойство коммутативности процедуры шифрования:

способ шифрования, патент № 2411666

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

Пример 1

Генерация некоммутативных конечных групп векторов.

Рассмотрим упорядоченные наборы МДЧ (а1, а2, способ шифрования, патент № 2411666 , am), каждое из которых не превосходит некоторого выбранного простого МДЧ р. Такой набор называется вектором, а МДЧ а1, а2, способ шифрования, патент № 2411666 , am - координатами вектора, значение mспособ шифрования, патент № 2411666 2 - это размерность вектора, равная числу координат в векторе. Координаты представляют собой МДЧ, принадлежащие множеству МДЧ {1, 2, способ шифрования, патент № 2411666 , р-1}, где р - заданное простое МДЧ, над которыми определены операции сложения и умножения по модулю р. Другой формой записи векторов является его запись в виде суммы одномерных векторов, называемых компонентами вектора, каждый из которых представляет собой координату вектора с приписанным к ней формальным базисным вектором. Обозначим формальные базисные векторы строчными латинскими буквами е, i, j и т.д. В последней записи очередность записи компонентов вектора не имеет значения, например вектора Z 1=523425е+3676785i+53453453j и Z2=3676785i+523425e+53453453j, где е, i, j - формальные базисные векторы, в которых координатами являются МДЧ, рассматриваются как равные, т.е. Z1=Z 2. Операция умножения векторов определяется как перемножение всех компонентов векторов-сомножителей, с учетом того, что возникающие при этом произведения формальных базисных векторов заменяются по некоторой специфицированной таблице одним базисным вектором или однокомпонентным вектором, после чего все координаты, приписанные одному и тому же базисному вектору, складываются по модулю р. Указанная таблица умножения базисных векторов (ТУБВ) для случая векторов размерности m=3 имеет, например, вид таблицы 1, которая определяет следующее правило подстановки базисных векторов:

еспособ шифрования, патент № 2411666 еспособ шифрования, патент № 2411666 е, eспособ шифрования, патент № 2411666 iспособ шифрования, патент № 2411666 i, eспособ шифрования, патент № 2411666 jспособ шифрования, патент № 2411666 j, iспособ шифрования, патент № 2411666 eспособ шифрования, патент № 2411666 e, iспособ шифрования, патент № 2411666 iспособ шифрования, патент № 2411666 j, iспособ шифрования, патент № 2411666 jспособ шифрования, патент № 2411666 µe,

jспособ шифрования, патент № 2411666 eспособ шифрования, патент № 2411666 j, jспособ шифрования, патент № 2411666 iспособ шифрования, патент № 2411666 µe, jспособ шифрования, патент № 2411666 jспособ шифрования, патент № 2411666 µi,

где µ - заданное МДЧ, принадлежащее множеству МДЧ {1, 2, способ шифрования, патент № 2411666 , р-1}.

Такие таблицы будем называть таблицами умножения базисных векторов. Например, пусть Z1 1е+b1i+c1j и Z2=a 2e+b2i+c2j, тогда операция умножения векторов Z1 и Z2 (обозначим ее знаком «способ шифрования, патент № 2411666 ») выполняется следующим образом:

Z 1способ шифрования, патент № 2411666 Z2=(a1e+b1i+c1 j)способ шифрования, патент № 2411666 (a2e+b2i+c2j)=

=a1a2eспособ шифрования, патент № 2411666 e+a1b2eспособ шифрования, патент № 2411666 i+a1c2eспособ шифрования, патент № 2411666 j+b1a2iспособ шифрования, патент № 2411666 e+b1b2iспособ шифрования, патент № 2411666 i+b1c2iспособ шифрования, патент № 2411666 j+c1a2jспособ шифрования, патент № 2411666 e+c1b2jспособ шифрования, патент № 2411666 i+c1c2jспособ шифрования, патент № 2411666 j=

=(a1a2+µb 1c2+µc1b2)e+(a 1b2+b1a2+µc1 c2)i+(a1c2+c1a 2+b1b2)j.

способ шифрования, патент № 2411666

Поскольку каждая координата вектора принимает р различных значений, то множество векторов для конечного значения размерности является конечным. При соответствующем задании ТУБВ операция умножения векторов будет обладать свойством ассоциативности. Тогда все обратимые векторы, т.е. векторы, для которых существуют обратные значения, будут образовывать конечную группу. При этом, если ассоциативная операция умножения векторов будет некоммутативной, то сгенерированная группа векторов будет некоммутативной.

Некоммутативная конечная группа четырехмерных векторов вида Z=ае+bi+cj+dk может быть сгенерирована путем выбора простого МДЧ p и выбора ТУБВ, представленной таблицей 2. Единичным элементом данной некоммутативной конечной группы является вектор Е=1е+0i+0j+0k=(1, 0, 0, 0). Генерация различных вариантов некоммутативных конечных групп четырехмерных векторов осуществляется генерацией различных значений простого МДЧ р и различных конкретных значений коэффициентов µ и способ шифрования, патент № 2411666 .

Некоммутативная конечная группа шестимерных векторов вида Z=ае+bi+cj+dk+gu+hv может быть сгенерирована путем выбора простого МДЧ р и выбора ТУБВ, представленной таблицей 3. Единичным элементом данной некоммутативной конечной группы является вектор Е=1е+0i+0j+0k+0u+0v=(1, 0, 0, 0, 0, 0). Генерация различных вариантов некоммутативных конечных групп шестимерных векторов осуществляется генерацией различных значений простого МДЧ р и различных конкретных значений коэффициентов µ и способ шифрования, патент № 2411666 .

способ шифрования, патент № 2411666 способ шифрования, патент № 2411666

В рассматриваемых ниже конкретных вариантах реализации заявленного способа генерируются некоммутативные конечные группы четырехмерных векторов, в которых используется простое МДЧ р с искусственно уменьшенной разрядностью для более компактной записи примеров. В реальных применениях разрядность МДЧ р следует выбирать равной 56 бит и более для обеспечения достаточной криптостойкости заявленного способа шифрования. При выборе разрядности простого МДЧ р, равной 80 битам, для всех приводимых ниже примеров частных вариантов реализации заявленного способа шифрования обеспечивается криптостойкость не ниже криптостойкости, обеспечиваемой способом-прототипом при использовании в нем разрядности МДЧ р, равной 1024 битам.

По аналогии с приводимыми ниже примерами могут быть реализованы различные варианты заявленного способа, в котором используются некоммутативные конечные группы шестимерных векторов, некоммутативные конечные группы векторов других размерностей, а также некоммутативные конечные группы другой природы, например некоммутативные конечные группы невырожденных матриц с групповой операцией матричного умножения (о формировании конечных групп матриц см., например, статью [Дернова B.C., Костина А.А., Молдовяну П.А. Конечные группы матриц как примитив алгоритмов цифровой подписи // Вопросы защиты информации. 2008. № 3(82). С.8-12.]).

Пример 2

Данный пример иллюстрирует реализацию заявленного способа по пп.1, 2 и 3 формулы изобретения.

1. Генерируют некоммутативную конечную группу Г в виде некоммутативной конечной группы четырехмерных векторов, для чего

1.1) генерируют простое МДЧ p=87049239434461;

1.2) генерируют ТУБВ в виде таблицы 2, где µ=257 и способ шифрования, патент № 2411666 =17.

2. Формируют сообщение в виде элемента М конечной группы Г, а именно в виде вектора

М=(38231784837662, 81700379195104, 32430684295463, 4516085675164).

3. Генерируют секретный ключ шифрования в виде двух элементов Х и W группы Г:

X=(12051687713738, 12743450807620, 58233746685306, 75018447720758);

W=(66976554653300, 55000279002666, 77076465402894, 78895259854281).

Проверка показывает, что условие Xспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 X выполняется.

4. Генерируют криптограмму С, для чего

4.1) формируют вектор V конечной группы Г в зависимости от элемента Х конечной группы Г и сообщения М по формуле V=Xспособ шифрования, патент № 2411666 M:

V=(68460548570101, 22813135953984, 62519151350007,84899633263035).

4.2) формируют криптограмму С путем выполнения групповой операции между элементами V и W конечной группы Г, т.е. по формуле С=Vспособ шифрования, патент № 2411666 W:

С=(55081147763695, 7256895867211, 6835460242342, 10411406180456).

В результате выполненных действий сформирована криптограмма С, размер которой равен размеру исходного сообщения. Для ее правильного расшифрования, т.е. вычисления по С исходного сообщения, достаточно использовать только секретный ключ расшифрования, который легко вычисляется из секретного ключа шифрования. Необходимость наличия дополнительного блока данных, ассоциированного с криптограммой, в заявленном способе устранена. Криптограмму можно передавать по открытому каналу связи, поскольку получить из нее исходное сообщение может только законный получатель, владеющий секретным ключом шифрования (обмен ключами между санкционированными отправителями сообщений и получателями сообщений выполняется по защищенному каналу связи). Для постороннего субъекта, перехватывающего сообщения, передаваемые по каналу связи, вычисление секретного ключа шифрования или сообщения М вычислительно неосуществимо на практике при выборе размера МДЧ p, равного 80 бит и более. Данный вариант реализации заявленного способа шифрования увеличивает скорость шифрования по сравнению с прототипом, в котором по требованиям криптостойкости выбирается разрядность МДЧ р, равная 1024 бит. Действительно, одна операция умножения векторов в группе Г реализуется путем выполнения не более 22 операций умножения по 80-битовому модулю р. При шифровании выполняются две операции умножения векторов, т.е. всего 44 операции умножения по 80-битовому модулю. В способе-прототипе используются две операции возведения в степень, разрядность которой из соображений криптостойкости выбирается равной не менее 160 бит, поэтому одна операция возведения в степень в способе-прототипе требует выполнения в среднем не менее 160/2=80 операций умножения по 1024-битовому модулю, причем сложность операции умножения по модулю пропорциональна квадрату разрядности. Коэффициент способ шифрования, патент № 2411666 достигаемого возрастания скорости составляет примерно способ шифрования, патент № 2411666

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

Расшифрование криптограммы в примере 2 выполняется по формуле расшифрования вида Mспособ шифрования, патент № 2411666 =X-1способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1, где обратные значения X-1 и W-1 легко вычисляются:

Х-1 =(12051687713738, 74305788626841, 28815492749155, 12030791713703);

W-1=(66976554653300, 32048960431795, 9972774031567, 8153979580180).

Вычисление по формуле расшифрования дает

Мспособ шифрования, патент № 2411666 =(38231784837662, 81700379195104, 32430684295463, 4516085675164).

Сравнение с исходным сообщением показывает, что сообщение расшифровано правильно.

Пример 3

Данный пример иллюстрирует реализацию заявленного способа по п.4 формулы изобретения.

1. Генерируют некоммутативную конечную группу Г в виде некоммутативной конечной группы четырехмерных векторов, для чего

1.1) генерируют простое МДЧ р=87049239434461;

1.2) генерируют ТУБВ в виде таблицы 2, где µ=257 и способ шифрования, патент № 2411666 =17.

2. Формируют сообщение в виде элемента М конечной группы Г, а именно в виде вектора

М=(38231784837662, 81700379195104, 32430684295463, 4516085675164).

3. Генерируют секретный ключ шифрования в виде двух взаимно обратных элементов Х и W группы Г, для которых выполняются условия W=X -1 и Х=W-1, для чего

3.1) генерируют элемент X группы Г, значение порядка которого равно

q=43524619717231:

X=(12051687713738, 12743450807620, 58233746685306, 75018447720758);

3.2) вычисляют элемент W группы Г, например, по формуле

W=X -1=Xq-1=X43524619717230:

W=(12051687713738, 74305788626841, 28815492749155, 12030791713703).

Проверка показывает, что произведение WX равно единичному элементу Е=(1, 0, 0, 0) группы Г, т.е. элементы Х и W группы Г действительно являются взаимно обратными.

4. Генерируют криптограмму С, для чего

4.1) формируют вектор V конечной группы Г в зависимости от элемента X конечной группы Г и сообщения М по формуле V=Xспособ шифрования, патент № 2411666 M:

V=(68460548570101, 22813135953984, 62519151350007, 84899633263035);

4.2) формируют криптограмму С путем выполнения групповой операции между элементами V и W конечной группы Г, т.е. по формуле С=Vспособ шифрования, патент № 2411666 W:

C=(38231784837662, 55597852011830, 31133631402162, 67373330976147).

В результате выполненных действий сформирована криптограмма С, размер которой равен размеру исходного сообщения. Расшифрование криптограммы выполняется по формуле расшифрования Мспособ шифрования, патент № 2411666-1способ шифрования, патент № 2411666 Сспособ шифрования, патент № 2411666 W-1, где Х-1=W и W-1=X. По формуле расшифрования получаем

Мспособ шифрования, патент № 2411666 =(38231784837662, 81700379195104, 32430684295463, 4516085675164).

Сравнение с исходным сообщением показывает, что сообщение расшифровано правильно.

Пример 4

Данный пример иллюстрирует реализацию заявленного способа по п.5 формулы изобретения.

1. Генерируют некоммутативную конечную группу Г в виде некоммутативной конечной группы четырехмерных векторов, для чего

1.1) генерируют простое МДЧ р=87049239434461;

1.2) генерируют ТУБВ в виде таблицы 2, где µ=257 и способ шифрования, патент № 2411666 =17.

2. Формируют сообщение в виде элемента М конечной группы Г, а именно в виде вектора

М=(38231784837662, 81700379195104, 32430684295463, 4516085675164).

3. Генерируют секретный ключ шифрования в виде двух элементов Х и W группы Г, значение порядка которых равно q=43524619717231:

X=(12051687713738, 12743450807620, 58233746685306, 75018447720758);

W=(66976554653300, 55000279002666, 77076465402894, 78895259854281).

Проверка показывает, что условие Xспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 Wспособ шифрования, патент № 2411666 X выполняется.

4. Генерируют дополнительный секретный ключ шифрования в виде случайного МДЧ е=1564738297.

5. Генерируют криптограмму С, для чего

5.1) формируют элемент R конечной группы Г, равный е-й степени сообщения М, т.е. R=Ме

R=(33165708342194, 44635145878926, 27218913703632, 86167722855141);

5.2) формируют элемент V конечной группы Г путем выполнения групповой операции между элементами Х и R группы Г, т.е. по формуле V=Хспособ шифрования, патент № 2411666 Me=Xспособ шифрования, патент № 2411666 R:

V=(21225882163327,81784979805756, 36290579760498, 59011556699378);

5.3) формируют криптограмму С путем выполнения групповой операции между элементами V и W конечной группы Г, т.е. по формуле С=Vспособ шифрования, патент № 2411666 W:

С=(81151321903463; 34928622232905; 40321732625021; 27943213385539).

В результате выполненных действий сформирована криптограмма С, размер которой равен размеру исходного сообщения. По криптограмме исходное сообщение получают по формуле расшифрования Мспособ шифрования, патент № 2411666 =(X-1способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1)d, где Х-1=W,

W-1=Х и d - МДЧ, обратное к МДЧ е по модулю р(р 2-1);

d=e-1modp(p2 -1)=57047190496431981721267140853661386109713;

X-1=(12051687713738, 74305788626841, 28815492749155, 12030791713703);

W-1=(66976554653300, 32048960431795, 9972774031567, 8153979580180).

Вычисления по формуле расшифрования дают

X -1способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1=

=(33165708342194, 44635145878926, 27218913703632, 86167722855141);

(X-1 способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1)d=(X-1способ шифрования, патент № 2411666 Cспособ шифрования, патент № 2411666 W-1)57047190496431981721267140853661386109713 =

=(56361567605757, 15257986828317, 58542760700288, 35609765290075;)

Mспособ шифрования, патент № 2411666 =(38231784837662, 81700379195104, 32430684295463, 4516085675164).

Сравнение с исходным сообщением показывает, что сообщение расшифровано правильно.

Пример 5

Данный пример иллюстрирует реализацию заявленного способа по п.6 формулы изобретения.

1. Генерируют некоммутативную конечную группу Г в виде некоммутативной конечной группы четырехмерных векторов, для чего

1.1) генерируют простое МДЧ p=87049239434461;

1.2) генерируют ТУБВ в виде таблицы 2, где µ=257 и способ шифрования, патент № 2411666 =17.

2. Формируют сообщение в виде элемента М конечной группы Г, а именно в виде вектора

М=(38231784837662, 81700379195104, 32430684295463, 4516085675164).

3. Генерируют секретный ключ шифрования в виде двух взаимно обратных элементов Х и W группы Г, для которых выполняются условия W=X-1 и Х=W-1, для чего

3.1) генерируют элемент Х группы Г, значение порядка которого равно

q=43524619717231:

X=(12051687713738, 12743450807620, 58233746685306, 75018447720758);

3.2) вычисляют элемент W группы Г, например, по формуле

W=X-1=Xq-1=X43524619717230:

W=(12051687713738, 74305788626841, 28815492749155, 12030791713703).

Проверка показывает, что произведение WX равно единичному элементу Е=(1, 0, 0, 0) группы Г, т.е. элементы X и W группы Г действительно являются взаимно обратными.

4. Генерируют дополнительный секретный ключ шифрования в виде случайного МДЧ е=1564738297.

5. Генерируют криптограмму С, для чего

5.1) формируют элемент R конечной группы Г, равный е-той степени сообщения М, т.е. R=Me

R=(33165708342194, 44635145878926, 27218913703632, 86167722855141);

5.2) формируют элемент V конечной группы Г путем выполнения групповой операции между элементами Х и R группы Г, т.е. по формуле V=Хспособ шифрования, патент № 2411666 Me=Xспособ шифрования, патент № 2411666 R:

V=(21225882163327, 81784979805756, 36290579760498, 59011556699378);

5.3) формируют криптограмму С путем выполнения групповой операции между элементами V и W конечной группы Г, т.е. по формуле С=Vспособ шифрования, патент № 2411666 W:

С=(33165708342194, 59052072691720, 80363916760611, 79904520870827).

В результате выполненных действий сформирована криптограмма С, размер которой равен размеру исходного сообщения. Расшифрование криптограммы выполняется по формуле расшифрования Мспособ шифрования, патент № 2411666-1способ шифрования, патент № 2411666 Cdспособ шифрования, патент № 2411666 W-1, где Х-1=W,

W -1=Х и d - МДЧ, обратное к МДЧ е по модулю р(р2 -1);

d=e-1 mod p(p2-1)=57047190496431981721267140853661386109713.

Вычисления по формуле расшифрования дают

Cd=(38231784837662, 55597852011830, 31133631402162, 67373330976147);

X-1способ шифрования, патент № 2411666 Cd=X-1способ шифрования, патент № 2411666 C57047190496431981721267140853661386109713=

=(11810164016425, 31707129959260, 10338075247979, 75038288163169);

(X-1способ шифрования, патент № 2411666 Cd)способ шифрования, патент № 2411666 W-1=

=(38231784837662, 81700379195104, 32430684295463, 4516085675164);

Mспособ шифрования, патент № 2411666 =(38231784837662, 81700379195104, 32430684295463, 4516085675164).

Сравнение с исходным сообщением показывает, что криптограмма С расшифрована правильно, т.е. из нее получено исходное сообщение М. В варианте реализации заявленного способа по примерам 4 и 5 наиболее трудоемкой операцией при выполнении процедуры шифрования (расшифрования) является операция возведения в степень МДЧ е (МДЧ d). Для обеспечения требуемой криптостойкости достаточно выбрать разрядность МДЧ р, равную 80 бит, поэтому разрядность МДЧ е и d составляет 80 бит и 240 бит, соответственно. С учетом этих значений расчет коэффициента способ шифрования, патент № 2411666 повышения скорости шифрования и скорости расшифрования, обеспечиваемого реализацией заявленного способа по примерам 4 и 5, в сравнении со способом-прототипом, в котором вычисления ведутся по 1024-битовому модулю, дает:

способ шифрования, патент № 2411666

При этом в заявленном способе устранена необходимость генерации дополнительного блока данных, ассоциируемого с криптограммой. Кроме того, реализация заявленного способа по пп.4 и 6 обеспечивает свойство коммутативности процедуры шифрования, что позволяет использовать заявленный способ шифрования для повышения скорости конфиденциальной передачи сообщений по открытым каналам без обмена ключами между отправителем и получателем при использовании протокола, описанного в книге [Молдовян Н.А., Молдовян А.А. Введение в криптосистемы с открытым ключом. СПб. БХВ-Петербург, 2005. - 286 с.; см. с.129-133] и основанного на применении коммутативной процедуре шифрования.

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

Приложение 1

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

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

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

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

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

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

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

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

8. Разрядность МДЧ - это число двоичных разрядов (битов) в записи МДЧ по двоичному основанию.

9. Простое МДЧ - это МДЧ, которое делится только на единицу и на само себя.

10. Взаимно простые МДЧ - это МДЧ, наибольший общий делитель которых равен единице.

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

12. Сложность операции Oper - количество стандартных элементарных битовых операций (т.е. операций над битами), которые необходимо осуществить для выполнения операции Oper. Чем сложнее операция, тем больше время ее выполнения.

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

14. Алгебраическая структура - это множество математических элементов некоторой природы. В качестве математических элементов могут выступать, например, многочлены, МДЧ, пары МДЧ, пары многочленов, тройки МДЧ, тройки многочленов, матрицы МДЧ, матрицы многочленов и т.д., над которыми заданы математические действия (операции). Математически алгебраическая структура определяется путем задания конкретного множества математических элементов и одной или нескольких операций, выполняемых над элементами.

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

16. Группа - это алгебраическая структура (т.е. множество элементов различной природы), над элементами которой определена одна операция, которая при заданной операции обладает следующим набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является также элемент этой же структуры, существует единичный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в книгах [А.Г.Курош. Теория групп.- М., изд-во «Наука», 1967. - 648 с.] и [М.И.Каргаполов, Ю.И.Мерзляков. Основы теории групп. - М., изд-во «Наука. Физматлит», 1996. - 287 с.].

17. Групповая операция - это операция, определенная над элементами группы. Обычно в группе определяют операцию возведения в степень, которая является производной от групповой операции. Возведение в степень в группе - это многократное выполнение групповой операции над одним и тем же элементом. Например, для элемента группы а и натурального числа n по определению имеем an=aспособ шифрования, патент № 2411666 aспособ шифрования, патент № 2411666 aспособ шифрования, патент № 2411666 способ шифрования, патент № 2411666 способ шифрования, патент № 2411666 a (n раз), где «способ шифрования, патент № 2411666 » обозначает групповую операцию.

18. Единичный элемент группы Г - это такой элемент, что при выполнении операции над ним и другим произвольным элементом Z группы Г результатом является элемент Z, т.е. для любого Zспособ шифрования, патент № 2411666 Г имеем Eспособ шифрования, патент № 2411666 Z=Zспособ шифрования, патент № 2411666 E=Z, где Е - единичный элемент группы.

19. Порядком элемента Z группы Г называется наименьшее натуральное число q, такое что Zq=Е, где Е - единичный элемент группы Г.

20. Обратный элемент по отношению к заданному элементу Z группы Г - некоторый элемент группы Г, обозначаемый как Z-1, такой что Z-1способ шифрования, патент № 2411666 Z=Zспособ шифрования, патент № 2411666 Z-1=Е, где Е - единичный элемент группы Г.

21. Некоммутативная группа - это группа с некоммутативной групповой операцией, т.е. с групповой операцией, для которой в общем случае результат ее действия над двумя элементами группы зависит от их расстановки относительно знака групповой операции, например для двух элементов Z1способ шифрования, патент № 2411666 Г и Z2способ шифрования, патент № 2411666 Г в общем случае имеет место следующее неравенство Z 1способ шифрования, патент № 2411666 Z2способ шифрования, патент № 2411666 Z2способ шифрования, патент № 2411666 Z1.

22. Коммутирующие элементы группы Г - это два элемента Z1способ шифрования, патент № 2411666 Г и Z2способ шифрования, патент № 2411666 Г, действие групповой операции над которыми дает результат, не зависящий от порядка расположения этих элементов, т.е. для коммутирующих элементов выполняется соотношение Z1 способ шифрования, патент № 2411666 Z2=Z2способ шифрования, патент № 2411666 Z1.

23. Вектор - это набор из двух или более МДЧ, называемых координатами вектора. Число координат вектора называется размерностью вектора.

24. Операция векторного умножения - это операция умножения двух векторов, являющаяся групповой операцией в конечной группе векторов.

25. Конечная группа - это группа, содержащая конечное число элементов.

Класс H04K1/00 Секретная связь

высокоскоростная оптическая линия, защищенная от прослушивания квантовым шумом -  патент 2520419 (27.06.2014)
генератор шумовых сигналов -  патент 2519565 (10.06.2014)
способ и устройство для защиты считывающего устройства для носителя данных в форме карты от несанкционированного оценивания или копирования кодированных магнитным способом данных вводимого носителя данных в форме карты -  патент 2504836 (20.01.2014)
способ обнаружения сигналов без несущей -  патент 2504088 (10.01.2014)
способ защиты информации в распределенной случайной антенне -  патент 2492581 (10.09.2013)
способ приема-передачи криптографической информации -  патент 2488965 (27.07.2013)
способ обнаружения сигналов без несущей -  патент 2485692 (20.06.2013)
способ информационной защиты случайной антенны -  патент 2474966 (10.02.2013)
система конфиденциальной телефонной связи -  патент 2474064 (27.01.2013)
способ и устройство передачи сообщений p-кодами фибоначчи -  патент 2452100 (27.05.2012)
Наверх