Всероссийская научно-практическая конференция «НОВЫЕ ТЕНДЕНЦИИ В ОБРАЗОВАНИИ И НАУКЕ: ОПЫТ МЕЖДИСЦИПЛИНАРНЫХ ИССЛЕДОВАНИЙ»
г. Ростов-на-Дону, 27 февраля 2014 г.
ТЕХНИКО-ТЕХНОЛОГИЧЕСКИЕ ПРОЦЕССЫ В УСЛОВИЯХ ГЛОБАЛИЗАЦИИ
А.М. Атаян, В.С. Дзигоева
Финансовый университет при Правительстве Российской Федерации, г. Владикавказ, Россия
МАТЕМАТИЧЕСКИЕ ОСНОВЫ ЗАЩИТЫ ИНФОРМАЦИИ: РЮКЗАЧНЫЕ КРИПТОСИСТЕМЫ
Защита информации в условиях глобализации является одной из важнейших задач обеспечения безопасности. В статье рассматриваются математические методы построения стойких криптосистем. Для повышения надежности криптосистем предлагается использовать рюкзачную криптосистему Чора-Райвеста, которая использует наборы, состоящие из элементов конечного поля.
Ключевые слова: криптография, рюкзачные криптосистемы, шифрование, дешифрование, открытый ключ, закрытый ключ
Information security in globalization conditions is one of the most important tasks of safety ensuring. The article deals with mathematical methods of resistant cryptosystems creation. It is offered to use Chor-Rivest knapsack cryptosystem for reliability increase of cryptosystems. It uses the sets which consist of finite field elements.
Key words: cryptography, knapsack cryptosystem, encryption, decryption, public key, private key.
Одним из технико-технологических факторов глобализации сегодня является Интернет. Однако важнейшим условием его широкого применения было и остается обеспечение адекватного уровня безопасности всех сетевых транзакций. Понятие «безопасность информации» можно определить как состояние устойчивости информации к случайным или преднамеренным воздействиям, исключающее недопустимые риски ее уничтожения, искажения и раскрытия, которые приводят к материальному ущербу владельца или пользователя информации.
Решить проблемы безопасности призвана криптография - наука об обеспечении безопасности данных. Криптография представляет собой совокупность методов преобразования данных, направленных на то, чтобы сделать эти данные бесполезными для несанкционированного доступа. Такие преобразования позволяют решить две главные проблемы защиты данных: проблемы конфиденциальности (путем лишения противника возможности извлечь информацию из канала связи) и проблему целостности (путем лишения противника возможности изменить сообщение так, чтобы изменился его смысл, или ввести ложную информацию в канал связи). Проблемы конфиденциальности и целостности информации тесно связаны между собой, поэтому методы решения одной из них часто применимы для решения другой.
Поэтому одной из основных задач криптографии является разработка стойких криптосистем.
Существуют симметричные криптосистемы и криптосистемы с открытым ключом [4, с.15]. В симметричных криптосистемах ключ и алгоритм шифрования известны только адресату и отправителю. В основе криптосистемы с открытым ключом лежит односторонняя функция f, такая, что значение f (x) легковычислимо по x (вычисление осуществимо с вре-
менной сложностью, являющейся полиномом низкой степени относительно размера входа задачи); но решение уравнения у=Дх) при неизвестном х трудновычислимо (т.е. в настоящее время неизвестен полиномиальный алгоритм решения уравнения).
Особый интерес представляют рюкзачные криптосистемы, которые основаны на так называемой задаче о рюкзаке.
Пусть задан набор а;, если это возможно, сумма которых равна к . В простейшем случае к указывает размер рюкзака, а каждое из чисел а г - размер предмета, который может быть упакован в рюкзак. Если числовой набор невелик, то эта задача может быть решена простым перебором всех подмножеств. Если же в наборе, например, 300 элементов, то такой перебор подмножеств невозможен.
Однако существуют наборы, для которых задача о рюкзаке решается просто независимо от количества элементов. Это так называемые быстрорастущие наборы, в которых каждый элемент больше суммы всех предыдущих. Для решения задачи с таким набором достаточно просмотреть его справа налево. Если последнее число набора ап больше числа к , то мы переходим к предпоследнему числу, если же нет, то оно служит одним из искомых слагаемых. Это следует из того факта, что все оставшиеся числа в сумме дают число, меньшее к . Далее мы повторяем процедуру для кл = к - Дп и т.д. Заметим, что в случае быстрорастущих наборов разложение к. в сумму а, г однозначно, что важно в контексте криптосистем.
Заметим также, что криптосистема должна быть построена таким образом, чтобы задача легко решалась легальным получателем, владеющим секретной лазейкой, и была трудновычислима для криптоаналитика, знающего открытый ключ - рюкзачный набор.
Опишем рюкзачную криптосистему Меркля - Хеллмана, основанную на быстрорастущих наборах [1].
Пусть А ={ал.ал,...,ап\ а^М, ¿ = 1 ,п, быстрорастущий набор, т.е.
а5 > а1 + + я -2,п. И пусть выбрано целое число т такое, что и
число I взаимно простое с т. Умножим каждое число набора на I и обозначим через Ь; наименьший положительный остаток ^ = С-Д^ (той ш).
В результате мы получим набор В = СЬ±,Ь2,____йп3, который будет служить открытым ключом. Секретной лазейкой при этом будут гп, t .
Процесс шифрования происходит следующим образом. Сначала исходное сообщение кодируется и разбивается на п-разрядные блоки. При необходимости последний блок дополняется в конце нулями.
Каждый такой блок С шифруется числом. Процесс дешифрования легальным получателем осуществляется следующим образом. Так как согласно выбору t и т взаимно простые, то существует элемент Г"1, обратный к I по модулю ш, т.е. Г - Е-1 = 1 (той тпА. С помощью элемента Г"1 легальный получатель восстанавливает быстрорастущий набор
. Далее он вычисляет наименьший положительный остаток и решают задачу о рюкзаке, определяемую набором А и числом с. Далее по соответствующему двоичному набору восстанавливает исходное сообщение.
В начале 80-х гг. данный тип рюкзачных криптосистем был вскрыт Шамиром, предложившим алгоритм, решающий задачу о рюкзаке с такими наборами за полиномиальное время. Алгоритм основан на том факте, что не обязательно для криптоаналитика нахождение истинных значений множителя I и модуля т. Достаточно найти любые {'иЖ, такие, что умножение чисел открытого ключа В на (£ )1 приводит к быстрорастущему набору [2, с. 145-152].
Несмотря на то, что А. Шамир показал, что система Меркля-Хеллмана является ненадежной, попытки ее усовершенствования до сих пор не прекращаются, о чем свидетельствуют работы Р. Гудмана, Э. Маколи, Б. Чора, Р. Райвеста, В.О. Осипяна, В.В. Подколзина. Более полный обзор работ в области анализа системы Меркля-Хеллмана и ее развития дан Б. Шнайером [3].
В своей работе мы хотим рассмотреть рюкзачную систему, которая до сих пор пользуется доверием и не поддается вскрытию. Это рюкзачная криптосистема, предложенная Чором и Райвестом, использующая наборы, состоящие из элементов конечного поля.
Пусть к = Рръ. - конечное поле из элементов, 9 - образующая мультипликативной группы к* поля к , а алгебраический элемент степени Ь над полем Рр . Если 8 т = /? , то будем писать /? = т. Такие логарифмы называются дискретными логарифмами.
Вычислим Щ = + £ -1), 1 <1 < р. Перемешаем Щ с помощью случайно выбран-
ной перестановки п шр элементов и добавим по модулю -1 к результату произвольно выбранное число (1,0 < & <р* -2. Обозначим через В = (Ь^ ...Ьр) полученный вектор.
Открытый ключ составляют В.р, к . Секретной лазейкой служат а, 6,п, с1.
Исходное сообщение кодируется двоичными наборами С длины р , содержащими к единиц. Вектор С , рассматриваемый как вектор-столбец, зашифровывается как наименьший положительный остаток от В ■ С (то с? рь -1).
Дешифрование для легального получателя, знающего секретную лазейку, выполняется следующим образом. Из числа криптотекста вычитается число Л - (I по модулю (р* -1), получается число у. Тем самым нейтрализуется добавление случайного шума d. В поле к вычисляется
С целью пояснения дальнейших действий заметим, что согласно выбору а - алгебраический элемент степени Ь над полем Рр . Следовательно, а служит корнем неприводимого над полем Рр многочлена /Се) степени к, т.е ./(а) = 0, и любой элемент представим в виде многочлена от а степени, не превосходящей к - 1 . В частности, 6 У представим в таком виде.
Продолжим описание процесса дешифрования. Составляется многочлен степени к : £(й!) = /(а) +£?у.Так как многочлен £ (а) представляет собой степень ЭУ = он
разлагается на линейные сомножители, еОх) = (а + ^ -1).....(а + ¿г - 13. Линейные множители могут быть найдены подстановкой 0,1,.. .р-1.
Числа ...Лг указывают на позиции единиц. Места для единиц в закодированном исходном тексте определяются после применения обратной перестановки 7Г"1 к числам ¡1Р...,
В описанной криптосистеме используются наборы длины р , содержащие ровно h единиц. Ясно, что в результате кодирования число единиц в каждом наборе, в общем говоря, не всегда равно h . Но этого можно добиться, используя следующую лемму.
Лемма. Пусть h > 3, h < ti . Тогда существует вложение множества всех двоичных наборов длины [1°92 )] во множество всех двоичных наборов длины п , содержащих ровно k единиц.
Напомним, что в случае криптосистем с модульным умножением быстрорастущие наборы обеспечивали однозначность дешифрования. В описанной криптосистеме Чора-Райве-ста это условие обеспечивается следующей леммой.
Лемма. Пусть р - простое число, h >2 - целое число. Тогда найдется рюкзачный вектор А = foi, -ар\ удовлетворяющий следующим условиям:
1. Числа at удовлетворяют неравенству 1 <щ <ръ -1 ,i = l.p-,
2. Пусть хг,у[, i = 1,р - неотрицательные целые числа такие, что
Набор А 5 состоящий из Щ = log^fff + i l), используемый в криптосистеме Чора-Райве-ста, удовлетворяет всем условиям леммы, следовательно, обеспечивает однозначность процесса дешифрования.
ЛИТЕРАТУРА
1. Ralph C. Merkle, Martin E. Hellman. Hiding Information and Signatures in Trapdoor Knapsacks. IEEE Transactions on Information Theory, vol. IT-24, 1978.
2. Shamir A. A polynomial time algorithm for breaking. The basic Merkle-Hellman cryptosystem // Proc. of the 23rd FOCS Symposium. 1982.
3. Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си. М.: Триумф, 2002. 816 с.
4. Ященко В.В. Введение в криптографию. М.:МЦНМО - ЧеРО, 1999. 272 с.