Введение 3
Глава 1. Математические основы 7
Параграф 1. Кольца вычетов 7
Параграф 2. Свободные группы конечного ранга 11
Параграф 3. Общая линейная группа GL2 (Zn) 13
Глава 2. Генерация ключей 17
Параграф 1. Алгоритм генерации ключей 17
Параграф 2. Примеры вычисления ключей 18
Параграф 3. Выбор параметров 25
Параграф 4. Сложность вычисления квадратного корня по различным модулям 28
Глава 3. Шифрование 33
Параграф 1. Алгоритм шифрования 33
Параграф 2. Примеры шифрования по различным модулям
и открытым ключам 33
Параграф 3. Возможные атаки на алгоритм шифрования 35
Глава 4. Расшифрование 37
Параграф 1. Алгоритм расшифрования 37
Параграф 2. Примеры расшифрования различных шифртекстов
с различными модулями и секретными ключами 37
Параграф 3. Возможные атаки на алгоритм расшифрования 39
Заключение 44
Список используемой литературы 46
Безопасность некоторых современных криптосистем с открытым ключом основана на вычислительной сложности нескольких задач, относящихся к теории чисел. Две из этих задач используются чаще других: задача факторизации в целых числах и задача дискретного логарифмирования. Именно эти задачи обеспечивают стойкость криптосистем RSA и Эль-Г амаля, а также основанных на них схемах формирования электронной подписи [1].
Как бы то ни было, реальный уровень вычислительной сложности этих задач неизвестен. Это значит, что они считаются трудно разрешимыми, хотя никаких доказательств тому не предоставлено.
В [2], для квантовых компьютеров уже были представлены недетерминированные алгоритмы для дискретного логарифмирования и факторизации, работающие за полиномиальное время.
Однако, можно предложить некоторые альтернативы. Один из возможных подходов - замена криптосистем на базе теории чисел на такие алгебраические криптосистемы, которые будут выдерживать атаку квантового компьютера.
Рассмотрим схему криптосистем, а именно, криптосистем на базе групповых колец.
В работах [3,4], предложены схемы криптосистем, основанных на групповых кольцах.
Идея применить групповые кольца в криптографии основана на том факте, что, если зафиксировать мощность конечного кольца R и мощность конечной группы G, то мощность группового кольца RG является степенью |R| с показателем |G|, т.е. |Я6| = |fl||G|. Тогда даже для небольших мощностей, например, |R|=100 и |G|=10, мы получаем групповое кольцо RG’ большой мощности, а именно, |^G'| = 1020. Затем авторизованный пользователь может выполнять криптографические преобразования отдельно в кольце R и в группе G с использованием полиномиальных алгоритмов, а злоумышленник должен решать сложные вычислительные проблемы в групповом кольце RG.
Рассмотрим задачу стандартизации в групповом кольце и её два аспекта. Прямой задачей стандартизации является построение стандартных автоморфизмов у группового кольца RG , из автоморфизмов а группы G и автоморфизмов Р кольца R в следующем виде: если элемент x группового кольца RG представлен в виде формальной линейной комбинации элементов gt группы G с коэффициентами r из кольца R, тогда образ элемента x под действием у является формальной линейной комбинацией образов элементов gL группы G под действием а с коэффициентами, которые являются образами коэффициентов r под действием р.
Обратная задача стандартизации сформулирована следующим образом. Для данного автоморфизма у группового кольца RG найти автоморфизм а из группы G и автоморфизм Р из кольца R, такие что у может быть построена на основе а и р таким образом, как описано в прямой задаче стандартизации или доказать, что таких автоморфизмов не существует.
Нетрудно видеть, что, в случае эффективного вычисления автоморфизма а в группе G и автоморфизма Р в кольце R, можно эффективно вычислить действие автоморфизмов у на любой элемент группового кольца RG, т. е. эффективно указать автоморфизм у из группового кольца RG.
Что касается обратной задачи стандартизации, то есть некоторые причины полагать, что эта задача является вычислительно сложной. Однако доказательств этому нет.
В некоторых обобщениях (см., например, [5]) криптосистем групповых колец рассматриваются криптосистемы квазигрупповых колец .
Следует отметить, что внутренний автоморфизм целочисленного группового кольца конечной группы, как правило, не является стандартным автоморфизмом. Именно поэтому вместе со стандартными автоморфизмами группового кольца Z G, где G - конечная группа, мы используем внутренние автоморфизмы. В [9] групповое кольцо ZS3, где S3 -группа перестановок для трех символов, представлено в матричной форме в виде блока диагональных матриц четвертой степени с двумя одномерными блоками и одним двумерным блоком. В [9,10] показано, что группа единиц группового кольца ZS3 является полупрямым произведением тривиальных единиц (+S3) и свободной подгруппы ранга 3. Поскольку матрицы четвертой степени из этой подгруппы содержат два идентичных одномерных блока, мы можем ограничиться рассмотрением свободной группы матриц второй степени с помощью свободных порождающих [9]:
А = (1 0) W1 3) (-2 3)
Д ( I, B ( ), C ( ).
'3 1 'U 1 х—3 4'
Если мы выходим за пределы матричного представления ZS3, мы рассмотрим произвольные матрицы второй степени в кольце М2 (Z) и ее группу обратимых элементов GL2(Z), которая содержит свободные подгруппы ранга 3 - G(a, Р, у) со свободными порождающими:
где а,Р,у принадлежат Z и |а|>3, |Р|>3, |у|> 3 [11]. Например, если а=Р=у=3, получаем свободную подгруппу G ранга 3 и G = G ^ (3,3,3) с вышеуказанными свободными порождающими А, В и С.
Следует также отметить, что все автоморфизмы группового кольца ZS3 являются внутренними [12].
При осуществлении вычислений с целочисленными матрицами неизбежен бесконечный рост элементов этих матриц. Поэтому вместо Z удобно рассматривать Zn, так как это позволяет проводить эффективные вычисления. Следовательно, элементы свободной группы над целыми числами становятся подгруппой M2(Zn), т.е. появляется GL2(Zn).
Таким образом, математической базой для построения криптосистем становятся кольца матриц второй степени над кольцами вычетов М2(г^п), общая линейная группа GL2 (%п) и их внутренние автоморфизмы.
В ходе исследования модульных матричных криптосистем в рамках данной работы был сделан вывод, что данная криптосистема имеет ряд преимуществ по сравнению с широко используемыми в настоящее время криптосистемами.
Одним из ее преимуществ можно назвать меньшее время работы алгоритма в вычислительной части так как показатели степени, в которые необходимо возводить элементы, на несколько порядков меньше, чем используемые, например, в криптосистеме RSA.
Несмотря на это, ввиду того, что злоумышленник будет вынужден решать систему уравнений с многими неизвестными, перемножаемыми и возводимыми в степень, время, которое необходимо на взлом данного шифрования, увеличивается.
Таким образом, метод, описанный в данной работе, позволяет не только увеличить скорость работы автоматизированной системы, основанной на ВММС, но и достичь большего уровня криптостойкости.
Примеры, на которых был рассмотрен данный алгоритм, являются представителями всех трех вариантов множеств чисел, из которых выбирается модуль п, а именно:
• 11 - простое число;
• 25 - степень простого числа 5;
• 35 - произведение двух простых чисел 5 и 7.
Были даны рекомендации по выбору параметров криптосистем:
• Задавать модуль кольца вычетов п (первый шаг генерации ключей) в виде произведения двух простых чисел размерности больше 1024бит;
• Выбирать небольшие слова W (X) и W (U) (второй шаг генерации ключей) не превышающих длиной 6, так как выбор слов превышающих данное количество букв не увеличивает стойкости алгоритма, но уменьшает его эффективность;
• Выбирать параметры к и s (четвертый шаг генерации ключей) из данного набора {-3, -2, -1,2,3}, при фиксированном 1=2;
• Сессионные ключи rt, С (третий шаг шифрования) выбирать разными целыми числами на каждой итерации, с условием что их модуль не будет больше 10 и не равен нулю.
Придерживаясь данных рекомендаций можно достигнуть компромисса между эффективностью и безопасностью криптосистемы. Что позволит построенной по данным рекомендациям криптосистеме быть практически ориентированной.
[1] A. Menezes, P. van Ooshot and S. Vanstone, “Handbook of Applied Cryptography,” CRC Press, Waterloo, 1996. код: 10.1201/9781439821916
[2] P. W. Shor, “Algorithms for Quantum Computation: Discrete Logarithm and Factoring,” Proceedings of the IEEE 35th Communications Annual Symposium on Foundations of Computer Science, Santa Fe, 20-22 November 1994, pp. 124-134.
[3] С.К. Росошек, “Криптосистемы в группах автоморфизмов групповых колец абелевых групп” Фундаментальная и прикладная математика, Том 13, No. 8, 2007, стр. 157- 164.
[4] С.К. Росошек, “Криптосистемы в группах автоморфизмов групповых колец абелевых групп” Журнал математических наук, Том 154, No. 3, 2008, стр. 386-391. код: 10.1007/s10958-008-9168-2
[5] А.Н. Грибов, П.А. Золотых и А.В. Михалев, “Построение алгебраической криптосистемы над квазигрупповым кольцом,” Математические аспекты криптографии, Том 1, No. 4, 2010, стр. 23-32.
[6] К.Н. Пономарев, “Автоморфно жесткие групповые алгебры I. Полупростые алгебры”, Алгебра и логика, Том 48, No. 5, 2009, стр. 654-674. код: 10.1007/s10469-009-9064-y
[7] К.Н. Пономарев, “Автоморфно жесткие групповые алгебры II. Модулярные алгебры,” Алгебра и логика, Том 49, No. 2, 2010, стр. 216-237.
[8] К.Н. Пономарев, “Жесткие групповые кольца,” В: А.Г. Пинус и К.Н. Пономарев и др., Алгебра и теория модулей, 6, Издательство НГТУ, Новосибирск, 2007, стр. 73-83. код: 10.1007/s10469-010-9086-5
[9] А. Попова и Е. Порошенко, “Группы единиц целочисленных групповых колец конечных групп,” В: А.Г. Пинус и К.Н. Пономарев и др., Алгебра и теория модулей, 4, Издательство НГТУ, Новосибирск, 2003, стр. 99-106.
[10] A. Dooms and E. Jespers, “Normal Complements of the Trivial Units in the Unit Group of Some Integral Group Rings,” Communications in Algebra, Vol. 31, No. 1, 2003, pp. 475-482. код: 10.1081/AGB-120016770
[11] И.И. Мерзляков, “Матричные представления свободных групп,” Доклады Академии Наук, Том 238, No. 3, 1978, стр. 527-533.
[12] А. Попова, “Группа автоморфизмов в ZS3 ,” В: А.Г. Пинус и К.Н. Пономарев и др., Алгебра и теория модулей, 6, Издательство НГТУ, Новосибирск, 2007, стр. 84-90.
[13] A. Mahalanobis, “A Simple Generalization of the El Gamal Cryptosystem to Non-Abelian Groups,” Communications in Algebra, Vol. 36, No. 10, 2008, pp. 3878-3889. код: 10.1080/00927870802160883
[14] S.-H. Paeng, K.-C. Ha, J. N. Kim, S. Chee and C. Park, “New Public Key Cryptosystem Using Finite Non-Abelian Groups,” Proceedings of the Crypto 2001, Lecture Notes in Computer Sciences, Santa Barbara, 19-23 August 2001, pp. 470-485.
[15] М.И. Каргаполов и И.И. Мерзляков, “Основы теории групп,” Наука, Москва, 1977... 17