Реализация и исследование криптографических алгоритмов на эллиптических кривых
|
Введение 7
Глава 1 Теоретические основы эллиптических кривых 9
1.1 Эллиптические кривые в действительных числах 9
1.1.1 Определение эллиптической кривой 9
1.1.2 Эллиптическая кривая как группа 10
1.1.3 Сложение точек на эллиптической кривой 12
1.1.4 Скалярное умножение 18
1.1.5 Задача логарифмирования и ее значение в криптографии 20
1.2 Эллиптические кривые над конечными полями 21
1.2.1 Поле целых чисел по модулю p 21
1.2.2 Эллиптические кривые над полем 24
1.2.3 Сложение точек на эллиптической кривой над конечным полем ... 25
1.2.4 Порядок группы на эллиптической кривой 27
1.2.5 Циклические подгруппы и их характеристики 28
1.2.6 Задача дискретного логарифмирования 32
Глава 2 Алгоритмы эллиптической криптографии 35
2.1 Обмен ключами - ECDH 35
2.2 Цифровая подпись - ECDSA 36
2.3 Смешанные алгоритмы - ECIES 38
Глава 3 Программная реализация алгоритмов 42
3.1 Выбор средств 42
3.2 Структура проекта 42
3.3 Реализация эллиптических кривых 43
3.4 Реализация ECDH 54
3.5 Реализация ECDSA 55
Заключение 59
Список используемой литературы 60
Глава 1 Теоретические основы эллиптических кривых 9
1.1 Эллиптические кривые в действительных числах 9
1.1.1 Определение эллиптической кривой 9
1.1.2 Эллиптическая кривая как группа 10
1.1.3 Сложение точек на эллиптической кривой 12
1.1.4 Скалярное умножение 18
1.1.5 Задача логарифмирования и ее значение в криптографии 20
1.2 Эллиптические кривые над конечными полями 21
1.2.1 Поле целых чисел по модулю p 21
1.2.2 Эллиптические кривые над полем 24
1.2.3 Сложение точек на эллиптической кривой над конечным полем ... 25
1.2.4 Порядок группы на эллиптической кривой 27
1.2.5 Циклические подгруппы и их характеристики 28
1.2.6 Задача дискретного логарифмирования 32
Глава 2 Алгоритмы эллиптической криптографии 35
2.1 Обмен ключами - ECDH 35
2.2 Цифровая подпись - ECDSA 36
2.3 Смешанные алгоритмы - ECIES 38
Глава 3 Программная реализация алгоритмов 42
3.1 Выбор средств 42
3.2 Структура проекта 42
3.3 Реализация эллиптических кривых 43
3.4 Реализация ECDH 54
3.5 Реализация ECDSA 55
Заключение 59
Список используемой литературы 60
В настоящий момент рынок мобильных устройств является одним из самых быстроразвивающихся на планете. У каждого человека есть если не смартфон, то обыкновенный мобильный телефон. Учитывая множество функций, которые выполняют в современном мире мобильные устройства, так или иначе они будут взаимодействовать с конфиденциальной информацией. Большинство этих устройств также имеют сетевые возможности, и там, где есть подключение к Интернету, есть злоумышленники, которые пытаются использовать слабые места в системе безопасности.
В дополнение к смартфонам и планшетам, Интернет вещей (IoT) также набирает популярность. Люди живут в "умных" домах, где лампочки, кондиционеры, гаражные двери и дверные звонки подключены к Интернету. Теперь, когда IoT размывает границы между цифровым и физическим миром, безопасность жизненно важна.
Актуальность бакалаврской работы объясняется тем, что криптография на эллиптических кривых является наиболее подходящим подходом к обеспечению информационной безопасности на устройствах с ограниченными вычислительными ресурсами [11]. К таким устройствам относятся как мобильные телефоны и смартфоны, так и маломощные домашние устройства IoT, работающие на беспроводных сетях. Криптография на эллиптических кривых достигает большей скорости выполнения при меньших размерах ключей, что позволяет экономить как память, так и процессорную мощность, и полосу пропускания [5]. Эти особенности делают ее идеальной для применения в современном мире, где мобильные устройства и беспроводная связь имеют большее распространение, чем когда-либо.
Целью бакалаврской работы является реализация криптографических алгоритмов на основе эллиптических кривых.
Задачи бакалаврской работы:
- описать теоретические основы эллиптических кривых,
использующиеся в криптографии;
- исследовать алгоритмы криптографии на эллиптических кривых;
- реализовать алгоритм обмена ключами ECDH и алгоритм цифровой подписи ECDSA.
Объектом исследования бакалаврской работы являются эллиптические кривые.
Предметом исследования бакалаврской работы являются криптографические алгоритмы на эллиптических кривых.
Бакалаврская работа содержит три главы.
В первой главе описывается математическая теория эллиптических кривых, использующаяся в криптографических алгоритмах. Описываются как эллиптические кривые в действительных числах, так и на конечных полях.
Во второй главе проводится исследование криптографических алгоритмов на эллиптических кривых. Исследуются три направления: обмен ключами через алгоритм ECDH, цифровая подпись через алгоритм ECDSA и смешанные алгоритмы шифрования через алгоритм ECIES.
В третьей главе происходит разработка и программная имплементация алгоритмов криптографии на эллиптических кривых. Разрабатываются как математические основы эллиптических кривых, так и алгоритмы, на них построенные.
Бакалаврская работа содержит 28 рисунков и 28 формул.
В дополнение к смартфонам и планшетам, Интернет вещей (IoT) также набирает популярность. Люди живут в "умных" домах, где лампочки, кондиционеры, гаражные двери и дверные звонки подключены к Интернету. Теперь, когда IoT размывает границы между цифровым и физическим миром, безопасность жизненно важна.
Актуальность бакалаврской работы объясняется тем, что криптография на эллиптических кривых является наиболее подходящим подходом к обеспечению информационной безопасности на устройствах с ограниченными вычислительными ресурсами [11]. К таким устройствам относятся как мобильные телефоны и смартфоны, так и маломощные домашние устройства IoT, работающие на беспроводных сетях. Криптография на эллиптических кривых достигает большей скорости выполнения при меньших размерах ключей, что позволяет экономить как память, так и процессорную мощность, и полосу пропускания [5]. Эти особенности делают ее идеальной для применения в современном мире, где мобильные устройства и беспроводная связь имеют большее распространение, чем когда-либо.
Целью бакалаврской работы является реализация криптографических алгоритмов на основе эллиптических кривых.
Задачи бакалаврской работы:
- описать теоретические основы эллиптических кривых,
использующиеся в криптографии;
- исследовать алгоритмы криптографии на эллиптических кривых;
- реализовать алгоритм обмена ключами ECDH и алгоритм цифровой подписи ECDSA.
Объектом исследования бакалаврской работы являются эллиптические кривые.
Предметом исследования бакалаврской работы являются криптографические алгоритмы на эллиптических кривых.
Бакалаврская работа содержит три главы.
В первой главе описывается математическая теория эллиптических кривых, использующаяся в криптографических алгоритмах. Описываются как эллиптические кривые в действительных числах, так и на конечных полях.
Во второй главе проводится исследование криптографических алгоритмов на эллиптических кривых. Исследуются три направления: обмен ключами через алгоритм ECDH, цифровая подпись через алгоритм ECDSA и смешанные алгоритмы шифрования через алгоритм ECIES.
В третьей главе происходит разработка и программная имплементация алгоритмов криптографии на эллиптических кривых. Разрабатываются как математические основы эллиптических кривых, так и алгоритмы, на них построенные.
Бакалаврская работа содержит 28 рисунков и 28 формул.
Выпускная квалификационная работа была посвящена реализации и исследованию криптографических алгоритмов на эллиптических кривых. Поставленная цель достигнута. Задачи, поставленные в начале работы, были выполнены.
В ходе выполнения работы из теории эллиптических кривых была выделены значимые части, стоящие в основе криптографии на эллиптических кривых.
Были проанализированы фундаментальные криптографические алгоритмы, основанные на эллиптических кривых. В том числе были рассмотрены направление обмена ключами на примере алгоритма ECDH, направление цифровой подписи на примере алгоритма ECDSA и направление шифрования на примере смешанного алгоритма ECIES.
Для программной реализации были выбраны алгоритмы ECDH и ECDSA. На основе объектно-ориентированного программирования были разработаны классы Fld, ElC, ECpt, ECgroup, реализующие програмно свойства конечных полей, эллиптических кривых, точек на эллиптических кривых, и групп эллиптических кривых над конечными полями соответственно.
Используя вышеописанные классы, были реализованы ранее рассмотренные алгоритмы обмена ключами ECDH, состоящий из одной функции, и цифровой подписи ECDSA, состоящий из двух функций: функции подписи и функции верификации.
Результатом работы является заголовочная библиотека классов, написанная на языке C++, которая реализует математические свойства эллиптических кривых и может использоваться для дальнейшего построения алгоритмов, а также уже реализованные алгоритмы ECDH и ECDSA.
В ходе выполнения работы из теории эллиптических кривых была выделены значимые части, стоящие в основе криптографии на эллиптических кривых.
Были проанализированы фундаментальные криптографические алгоритмы, основанные на эллиптических кривых. В том числе были рассмотрены направление обмена ключами на примере алгоритма ECDH, направление цифровой подписи на примере алгоритма ECDSA и направление шифрования на примере смешанного алгоритма ECIES.
Для программной реализации были выбраны алгоритмы ECDH и ECDSA. На основе объектно-ориентированного программирования были разработаны классы Fld, ElC, ECpt, ECgroup, реализующие програмно свойства конечных полей, эллиптических кривых, точек на эллиптических кривых, и групп эллиптических кривых над конечными полями соответственно.
Используя вышеописанные классы, были реализованы ранее рассмотренные алгоритмы обмена ключами ECDH, состоящий из одной функции, и цифровой подписи ECDSA, состоящий из двух функций: функции подписи и функции верификации.
Результатом работы является заголовочная библиотека классов, написанная на языке C++, которая реализует математические свойства эллиптических кривых и может использоваться для дальнейшего построения алгоритмов, а также уже реализованные алгоритмы ECDH и ECDSA.
Подобные работы
- Реализация и исследование криптографического алгоритма на эллиптических кривых
Бакалаврская работа, информатика. Язык работы: Русский. Цена: 4365 р. Год сдачи: 2020 - Реализация и исследование криптографического алгоритма на эллиптических кривых
Бакалаврская работа, программирование. Язык работы: Русский. Цена: 3800 р. Год сдачи: 2020 - Исследование и реализация криптографических алгоритмов на эллиптических кривых
Бакалаврская работа, информатика. Язык работы: Русский. Цена: 4230 р. Год сдачи: 2022 - ПРОЕКТИРОВАНИЕ И АНАЛИЗ КРИПТОГРАФИЧЕСКИХ МЕТОДОВ НА ЭЛЛИПТИЧЕСКИХ КРИВЫХ
Дипломные работы, ВКР, информационная безопасность. Язык работы: Русский. Цена: 4340 р. Год сдачи: 2018 - ИССЛЕДОВАНИЕ И РЕАЛИЗАЦИЯ ТЕСТОВ ПРОСТОТЫ С ИСПОЛЬЗОВАНИЕМ ЭЛЛИПТИЧЕСКИХ КРИВЫХ
Дипломные работы, ВКР, информационная безопасность. Язык работы: Русский. Цена: 4370 р. Год сдачи: 2018 - РЕАЛИЗАЦИЯ И ИССЛЕДОВАНИЕ ТЕСТА ПРОСТОТЫ ГОЛЬДВАССЕРА- КИЛИАНА
Дипломные работы, ВКР, информационная безопасность. Язык работы: Русский. Цена: 4300 р. Год сдачи: 2017 - Сравнительный анализ криптографических схем, основанных на различных классах эллиптических кривых
Бакалаврская работа, информационная безопасность. Язык работы: Русский. Цена: 4295 р. Год сдачи: 2016 - Реализация и исследование теста простоты Аткина-Морейна на эллиптических кривых
Бакалаврская работа, информационная безопасность. Язык работы: Русский. Цена: 4220 р. Год сдачи: 2016 - РЕАЛИЗАЦИЯ И АНАЛИЗ МЕТОДОВ УСКОРЕНИЯ ФАКТОРИЗАЦИИ НА ЭЛЛИПТИЧЕСКИХ КРИВЫХ
Дипломные работы, ВКР, информационная безопасность. Язык работы: Русский. Цена: 4265 р. Год сдачи: 2018



