Тип работы:
Предмет:
Язык работы:


РЕАЛИЗАЦИЯ И АНАЛИЗ МЕТОДОВ УСКОРЕНИЯ ФАКТОРИЗАЦИИ НА ЭЛЛИПТИЧЕСКИХ КРИВЫХ

Работа №45576

Тип работы

Дипломные работы, ВКР

Предмет

информационная безопасность

Объем работы87
Год сдачи2018
Стоимость4265 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
311
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 3
ПОСТАНОВКА ЗАДАЧИ 5
ГЛАВА 1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 6
1.1. Эллиптические кривые 6
1.2. Групповые законы в аффинных координатах 8
1.3. Алгоритм факторизации Ленстры 11
1.4. Оценка эффективности алгоритма факторизации Ленстры 14
1.5. Эллиптические кривые в проективных координатах 15
1.6. Эллиптические кривые в якобиановых координатах 16
1.7. Кривые Монтгомери 18
1.8. Скрученные кривые Эдвардса 20
1.9. Выбор кривых с большим кручением 25
1.10. Дополнительные алгоритмы, использованные в работе 27
ГЛАВА 2. ПРАКТИЧЕСКАЯ ЧАСТЬ 29
2.1. Программная реализация алгоритма ECM 29
2.2. Исследование эффективности алгоритма 32
ЗАКЛЮЧЕНИЕ 45
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 47
ПРИЛОЖЕНИЕ

Одним из популярнейших разделов в современной алгебраической геометрии становится раздел, посвященный эллиптическим кривым, в сторону которых ведутся активные научные исследовании в теории чисел и особенно в эллиптической криптографии. Это объясняется тем, что в эллиптических кривых используется иная алгебра, отличающаяся от ранее известной модульной, и задача дискретного логарифмирования на эллиптических кривых намного сложнее задачи дискретного логарифмирования на конечном поле.
Эллиптические кривые были известны еще давно, но их активное применение в криптографии началось после независимых публикаций Нила Коблица[8] и Виктора Миллера[10] в 1985 году, в которых они предлагали воспользоваться некоторыми свойствами этих кривых.
Кроме алгоритмов шифрования и электронной цифровой подписи, в криптографии эллиптические кривые используются также в задаче факторизации целых чисел, которая является односторонней, т.е. является легко вычислимой в одну сторону, но не наоборот. Факторизация - это разложение числа на его делители. На вычислительной сложности этой задачи строится один из самых популярных на сегодняшний день криптографических алгоритмов с открытым ключом - RSA. В нем берутся два больших простых числа одинаковой длины и вычисляется их произведение, которое является открытым ключом. Сумев разложить это число на множители, можно однозначно восстановить секретный ключ и прочесть зашифрованное сообщение.
Алгоритм факторизации, работающий на эллиптических кривых был предложен Хендриком Ленстрой[9] в 1987 году. Преимуществом данного алгоритма являлось то, что он работал за субэкспоненциальное время, и скорость его работы зависела только от наименьшего делителя входного числа, а не от самого этого числа. В том же году Питер Монтгомери[11] предложил использовать специальный вид кривых для ускорения вычислений, которые впоследствии были названы его именем. Самый большой скачок в развитии данного алгоритма произошел после появления статьи Гарольда Эдвардса[7] 2007 года, в которой описывалась новая форма кривых, и статьи Дэниэла Бернштейна[2] 2008 года, в которой проводилось их обобщение. Так появились скрученные кривые Эдвардса, которые нашли свое применение во многих современных криптографических алгоритмах. Большой раздел по факторизации на эллиптических кривых уделен в монографии Ишмухаметова Ш.Т.[15]

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Некоторые современные шифры, в том числе и RSA, строятся на задаче целочисленной факторизации, т.е. разложения большого числа на простые множители равной длины. Задача эта сильно осложняется ограниченностью вычислительных ресурсов, поэтому для более эффективного взлома таких шифров используются специально разработанные алгоритмы факторизации.
Одни из самых первых алгоритмов факторизации, среди которых р- метод Полларда, p - 1 метод Полларда, метод Шенкса и другие, работают за экспоненциальное время, поэтому сегодня применяются очень редко или вовсе не применяются на практике в то время, как алгоритм Ленстры применяется очень часто. На больших числах с большими минимальными делителями этот алгоритм сильно уступает методу квадратичного решета и методу решета числового поля, но при малых делителях имеет среди них наибольшую скорость, поэтому его основной задачей является отсеивание относительно небольших делителей (до нескольких десятков разрядов) для дальнейшего облегчения работы вышеперечисленных методов.
Подводя итоги, можно с уверенностью сказать, что в результате проделанной ВКР удалось достигнуть поставленные в начале цели в полной мере. Сперва был реализован классический алгоритм факторизации на эллиптических кривых Вейерштрасса, затем на нем были успешно реализованы некоторые модификации, а именно: были применены
проективные системы координат и был произведен перенос алгоритма на кривые Монтгомери и скрученные кривые Эдвардса. Последим выполненным улучшением было применение распараллеливания. Таким образом, удалось ускорить изначальный вариант алгоритма более чем в 20 раз. Кроме того, удалось выявить достоинства и недостатки применения кривых Монтгомери в задаче факторизации. К достоинствам можно отнести очень быстрое выполнение первой стадии, а к недостаткам - отсутствие возможности применения ускорений для умножения на второй стадии. Наиболее оптимальными оказались скрученные кривые Эдвардса, как более быстрые и перспективные. Самыми быстрыми системами координат для них оказались инвертированные и расширенные системы, слегка опередив классические проективные. Применение кривых Эдвардса с большим кручение также оказалось очень полезным в ускорении, повысив скорость работы алгоритма в 1,5 - 2 раза. С помощью всех этих улучшений в проделанной работе удалось факторизовать RSA числа вплоть до 200 бит (60 десятичных разрядов) за приемлемое время. Главным недостатком алгоритма Ленстры является то, что он является вероятностный, т.е. разброс времени выполнения в разных экспериментах на одних и тех же данных достаточно велик.



1. Atkin A. O. L., Morain F., Finding suitable curves for the elliptic curve method of factorization, Mathematics of Computation 60 (1993), 399-405.
2. Bernstein D.J., Birkner P., Joye M., Lange T., Peters C., Twisted Edwards curves, in Africacrypt (2008).
3. Bernstein D.J., Lange T., Inverted Edwards coordinates, in AAECC 2007 (2007), 20-27.
4. Bernstein D.J., Birkner P., Lange T., Peters C, ECM using Edwards curves. Mathematics of Computation. 82 (2013), 1139-1179.
5. Bernstein D.J., Lange T., Explicit-formulas database (2007).
URL: http://hyperelliptic.org/EFD
6. Brent R.P., Some integer factorization algorithms using elliptic curves/ R.P. Brent.- Austral.Comput.Sci.Comm, v.8, (1986), 149-163.
7. Edwards H.M., A normal form for elliptic curves, Bulletin of the American Mathematical Society, Providence, R.I.: American Mathematical Society, 44, (2007).
8. Koblitz N., Introduction to elliptic curves and modular forms, Graduate Texts in Mathematics, vol. 97, Springer-Verlag, New York (1984).
9. Lenstra H.W., Factoring integers with elliptic curves, H.W.Lenstra.- Ann.Math. v.126 (1987), 649-674.
10. Miller V., Use of elliptic curves in cryptography, Advances in cryptology— CRYPTO 85, Springer Lecture Notes in Computer Science vol. 218 (1985).
11. Montgomery P.L., Speeding the Pollard and elliptic curve methods of factorization, Mathematics of Computation 48 (1987), 255-264.
12. Montgomery P.L., An FFT extension of the elliptic curve method of factorization, Ph.D. thesis, University of California at Los Angeles (1992).
13. Washington L., Elliptic Curves Number Theory and Cryptography/ L. Washington. - Series Discrete Mathematics and Its Applications, Chapman & Hall/ CRC,second ed. (2008), 347-356.
14. Zimmermann P., Dodson B., 20 Years of ECM, in ANTS 2006 (2006), 525-542.
15. Ишмухаметов Ш.Т. Методы факторизации натуральных чисел/ Ш.Т.Ишмухаметов. - Казань, 2012, с. 89-92.


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2024 Cервис помощи студентам в выполнении работ