Криптография - наука, занимающаяся разработкой криптосистем, то есть исследованием математических методов преобразования информации с целью защиты систем от несанкционированного доступа.
Целью данной работы является оптимизация реализации алгоритма шифрования Эль-Гамаля. Нашей главной задачей является уменьшение времени шифрования и расшифровывания. Для этого мы будем оптимизировать работу отдельных элементов алгоритма шифрования. Также мы должны измерить выигрыши по времени.
В век современных технологий время является очень ценным ресурсом. Поэтому важным показателем работы реализации является его скорость вычислений. Процесс оптимизации идет в двух направлениях:
1. Уменьшение асимптотики алгоритма. Крайне трудная задача, так как не всегда возможна. Но гарантирует выигрыш по времени при больших значениях параметров.
2. Уменьшение коэффициента в асимптотике. Есть несколько способов достижения: распараллеливание, приведение к битовой арифметике, разбиение на подзадачи,.... Основная сложность в том, что иногда сложно подсчитать получаемое изменение константы.
Алгоритм шифрования с открытым ключом Эль-Гамаля был предложен Тахером Эль-Гамалем в 1985 году. Вся схема была разработана на основе протокола Диффи-Хеллмана. Криптостойкость данного алгоритма основывается на трудности вычисления дискретного логарифма в конечном поле. Отсутствие патента на алгоритм делает его более дешевой альтернативой алгоритму RSA.
Самыми сложными операциями в шифровании являются операции взятия по модулю и операции умножения. Поэтому наша работа будет направлена на оптимизацию именно этих операций.
В ходе работы мы посмотрим на эффективность известных оптимизаций. Выберем наиболее эффективные и на основе нее реализуем оптимизированную криптосистему.
В процессе решения данной задачи были рассмотрены схема шифрования Эль-Гамаля, модификации возведения в степень по модулю: Монтгомери, КТО, Барретт, Look-up Table; и модификация умножения FFT. Имея данный материал мы смогли оптимизировать работу криптосистемы.
Мы рассмотрели все возможные модификации схемы шифрования Эль-Гамаля. Оценили их прибавку к скорости работы и выбрали наилучший вариант.
Используя выбранный вариант мы реализовали схему шифрования.
1. Cao Z., Wei R., Lin X. A Fast Modular Reduction Method - eprint.iacr.org, 2014.
2. Lim C. H., Hwang H. S. Fast Modular Reduction With Precomputation - citeseerx.ist.psu.edu, 1997
3. Ors S. B., Batina L., Preneel B., Vandewalle J. Hardware Implementation of a Montgomery Modular Multiplier in a Systolic Array - Proceedings of the International Parallel and Distributed Processing Symposium, 2003
4. Sharma P., Gupta A. K., Sharma S. Intensified ElGamal cryptosystem - International Journal of Advances in Engineering & Technology, Jan 2012.
5. http: //e-maxx.ru/algo/chinese_theorem
6. http: //e-maxx.ru/algo/fft_multiply
7. https://ru.wikipedia.org/wiki/%D0%A1%D1%85%D0%B5%D0%BC%D0%B0_%D 0%AD%D0%BB%D 1 %8C-
%D0%93%D0%B0%D0%BC%D0%B0%D0%BB%D1%8F