Научный журнал
Успехи современного естествознания
ISSN 1681-7494
"Перечень" ВАК
ИФ РИНЦ = 0,775

ПРИКЛАДНОЕ ЗНАЧЕНИЕ СРАВНИМОСТИ ЧИСЕЛ В КРИПТОГРАФИИ

Посевкин Р.В. Светличная В.Б.

Сравнения нашли широкое применение в криптографии и шифровании. Один из наглядных примеров - алгоритмы ассиметричного шифрования. Основная идея асимметричного шифрования заключается в существовании сразу двух ключей для обмена информацией - открытого, известного любому желающему, и закрытого, который известен лишь получателю информации. Очевидно, что открытый и закрытый ключи генерируются одновременно и между ними существует определенная математическая связь. Основная задача проектировщика асимметричного алгоритма заключается в том, чтобы по известному открытому ключу было бы невозможно (очень трудоемко) получить секретный ключ шифрования. Для этого в основу асимметричных алгоритмов закладываются вычислительно трудные задачи факторизации, дискретного логарифмирования, проецирования точек на эллиптической кривой и т.д. Объединяет все эти задачи то, что они используют операцию получения остатка от целочисленного деления (сравнения). Говорят, что два целых числа a и b являются сравнимыми по модулю n, если (a mod n)  =  (b mod n). Это записывается в виде:

a ≡ b mod n.

В качестве примера алгоритмов симметричного шифрования можно привести первую систему с открытым ключом - метод экспоненциального ключевого обмена Диффи - Хеллмана. Метод предназначен для передачи секретного ключа симметричного шифрования. В обмене задействованы два участника А и Б. Сначала они выбирают большие простые числа n и g < n (эти числа секретными не являются). Затем участник A выбирает большое целое число х, вычисляет Х = gx mod n и передает Х участнику Б. Б в свою очередь выбирает большое целое число y, вычисляет Y = gy mod n и передает Y участнику А. Б вычисляет K´ = Xy mod n, А вычисляет K´´ = Yx mod n. Легко заметить, что K´ = K´´ = gxy mod n, и это значение оба участника могут использовать в качестве ключа симметричного шифрования. Злоумышленник может узнать такие параметры алгоритма, как n, g, X, Y, но вычислить по ним значения x или y - задача, требующая очень больших вычислительных мощностей и времени.

Примером действительно асимметричного алгоритма шифрования, основанного на проблеме дискретного логарифма, является алгоритм Эль-Гемаля. Последовательность действий при генерации ключей, шифровании и дешифрации представлена на рис. 1.

Рис. 1. Схема шифрования алгоритма Эль-Гемаля

Так как ax  gkx mod p, то имеем:

. (1)

Самым первым, действительно асимметричным алгоритмом стал алгоритм RSA. В основу криптостойкости RSA положена задача факторизации (разложения на множители) больших (более 200 двоичных разрядов) целых чисел.

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

Рис. 2. Схема шифрования алгоритма RSA

На этапе генерации ключей формируется пара ключей: закрытый d и открытый e. Шифрование данных должно начинаться с его разбиения на блоки m размером k = [log2 (n)] бит каждое, чтобы блок m можно было рассматривать как целое число в диапазоне [0.. n - 1]. Обратимость операции шифрования и дешифрования RSA требует доказательства. Из теоремы Эйлера известно, что для двух целых чисел n и x, таких, что (n,x) = 1, выполняется:

xj(n) ≡ 1 mod n, (2)

где j(n) - функция Эйлера, значение которой равно количеству чисел меньших n и взаимно простых с ним. Для n = pq из алгоритма RSA, где p и q - простые числа, можно записать j(n) = (p - 1)(q - 1).

Тогда (1) можно переписать в виде:

x(p - 1)(q - 1) ≡ 1 mod n. (3)

Возведем обе части (3) в степень - y:

x(-y)(p - 1)(q - 1) º 1(-y) mod n ≡ 1 mod n. (4)

Умножим обе части (4) на x:

x(-y)(p - 1)(q - 1) +1 mod n = x. (5)

Но при генерации ключей мы получили e и d такие, что ed º 1 mod (p - 1)(q - 1), а это означает, что в (5) можно заменить 1 - y(p - 1)(q - 1) на ed:

xed mod n = x. (6)

Тогда, если мы возведем шифротекста c = me mod n в степень d по модулю n, как мы это и делаем при дешифровании, то получим:

(cd ) mod n = (me mod n)d mod n = med mod n = m. (7)

Очевидно, что основная задача криптоаналитика при взломе этого шифра - узнать закрытый ключ d. Для этого он должен выполнить те же действия, что и получатель при генерации ключа - решить в целых числах уравнение ed + y (p - 1)(q - 1) = 1 относительно d и y. Однако, если получателю известны входящие в уравнение параметры p и q, то криптоаналитик знает только число n - произведение p и q. Следовательно, ему необходимо произвести факторизацию числа n, то есть разложить его на множители. Для решения задачи факторизации к настоящему времени разработано множество алгоритмов: квадратичного решета, обобщенного числового решета, метод эллиптических кривых. Но для чисел большой размерности это очень трудоемкая задача.

Список литературы

1. Методы и средства защиты компьютерной информации: учебное пособие / Д.Н. Лясин, С.Г. Саньков - РПК «Политехник», 2005.


Библиографическая ссылка

Посевкин Р.В., Светличная В.Б. ПРИКЛАДНОЕ ЗНАЧЕНИЕ СРАВНИМОСТИ ЧИСЕЛ В КРИПТОГРАФИИ // Успехи современного естествознания. – 2012. – № 4. – С. 52-54;
URL: https://natural-sciences.ru/ru/article/view?id=29870 (дата обращения: 16.04.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674