книга DipMaster-Shop.RU
поиск
карта
почта
Главная На заказ Готовые работы Способы оплаты Партнерство Контакты F.A.Q. Поиск
Разработка мероприятий по обеспечению информационной безопасности предприятия (на примере ЗАО OTIS - лифт Санкт-Петербургский ( Дипломная работа, 117 стр. )
РАЗРАБОТКА МЕТОДОВ ПРЕДОТВРАЩЕНИЯ ФАЛЬСИФИКАЦИИ ПРОПУСКНЫХ ДОКУМЕНТОВ НА ТРАДИЦИОННЫХ НОСИТЕЛЯХ ( Дипломная работа, 76 стр. )
Разработка моделей и алгоритмов построения дерева синтаксических отношений русского языка ( Дипломная работа, 139 стр. )
Разработка модели защиты данных в темпоральных геоинформационных системах ( Дипломная работа, 51 стр. )
Разработка модулей автоматической генерации заданий с решениями по теме «Теория сравнений» ( Дипломная работа, 63 стр. )
Разработка модулей автоматической генерации заданий с решениями по теме «Дискретное логарифмирование» ( Дипломная работа, 53 стр. )
Разработка модулей генерации заданий и решений по теме «Основы теории чисел» ( Дипломная работа, 99 стр. )
Разработка мультимедийного Web - сайта для ОАО "Букварь" ( Дипломная работа, 77 стр. )
Разработка направлений повышения эффективности принимаемых решений по вопросам управления сбытом продукции за счет применения экономико-математических моделей и методов на предприятии ООО "Аскон" ( Дипломная работа, 128 стр. )
РАЗРАБОТКА НАПРАВЛЕНИЙ И СОВЕРШЕНСТВОВАНИЕ ДЕЯТЕЛЬНОСТИ СЛУЖБЫ ЗАЩИТЫ ИНФОРМАЦИИ В ЗАО «ПРАЙМ-КОМПАНИ» ( Дипломная работа, 117 стр. )
РАЗРАБОТКА НОРМАТИВНО-МЕТОДИЧЕСКОЙ ДОКУМЕНТАЦИИ ПО ЗАЩИТЕ КОММЕРЧЕСКОЙ ТАЙНЫ В ООО «РН-АВТОМАТИКА» ( Дипломная работа, 85 стр. )
РАЗРАБОТКА НОРМАТИВНО-МЕТОДИЧЕСКИХ ДОКУМЕНТОВ ПО ЗАЩИТЕ ПЕРСОНАЛЬНЫХ ДАННЫХ В АКБ «МАСТЕР-КАПИТАЛ» ( Дипломная работа, 111 стр. )
Разработка обнаруживающего теста для четырехразрядного регистра с мультиплексированием и отключением на выходе ( Контрольная работа, 16 стр. )
Разработка обучающей программы «Газофазные процессы эпитаксии кремния» ( Дипломная работа, 103 стр. )
РАЗРАБОТКА ОРГАНИЗАЦИОННЫХ МЕР ЗАЩИТЫ ИНФОРМАЦИИ В АКЦИОНЕРНОМ КОММЕРЧЕСКОМ БАНКЕ ( Дипломная работа, 85 стр. )
Разработка основных элементов электронно-вычислительной машины (ЭВМ) ( Контрольная работа, 16 стр. )
Разработка ПО ( Курсовая работа, 29 стр. )
Разработка подсистемы автоматизированной тарификации БС «ОТИК-Интернет» 2005-2 ( Доклад, 2 стр. )
Разработка подсистемы автоматизированной тарификации БС «ОТИК-Интернет» ( Доклад, 2 стр. )
Разработка подсистемы информационно-справочной службы в составе Автоматизированного учебного комплекса «Когнитивная ролевая игра». ( Дипломная работа, 135 стр. )
Разработка подсистемы нейросетевого моделирования биржевой информации на основе средств Analysis Services SQL 2005 ( Дипломная работа, 146 стр. )
Разработка подсистемы статистического учёта успеваемости студентов для сетевой системы поддержки дистанционного обучения ОРОКС ( Дипломная работа, 108 стр. )
Разработка политики информационной безопасности в компании ( Дипломная работа, 134 стр. )
Разработка портала парикмахерского искусства с поддержкой функции Интернет-магазина ( Дипломная работа, 102 стр. )
Разработка порталов муниципального образования5 ( Реферат, 20 стр. )

ВВЕДЕНИЕ 3

ГЛАВА 1. Алгоритмы дискретного логарифмирования 7

1.1 Общие сведения 7

1.2 Шаг младенца – шаг великана 8

1.2 Ро-метод Полларда для дискретного логарифмирования 10

1.3 Алгоритм Полига-Хеллмана 13

1.4 Алгоритм исчисления порядка (index-calculus algorithm) 16

1.5 Оценка сложности решения 19

ГЛАВА 2. Обзор существующих методов контроля знаний 20

2.1 Методы контроля знаний при изучении курса «Теоретико-числовые методы в криптографии» 20

2.2 Тесты 21

2.3 Контрольные и самостоятельные работы 25

2.4 Итоги 26

ГЛАВА 3. Реализация модулей 27

3.1 Среда разработки 27

3.2 Взаимодействие с ядром 28

3.3 Экспорт данных 30

3.4 Документация 31

3.5 Модуль BABYSTEP (Шаг младенца - шаг великана) 31

3.6 Модуль POLARD (Ро-метод Полларда дискретного логарифмирования) 34

3.7 Модуль POLIHELL (дискретное логарифмирование при помощи алгоритма Полига-Хеллмана) 36

3.8 Модуль INDEXCLCL (Алгоритм исчисления порядка (index-calculus algorithm) 38

ЗАКЛЮЧЕНИЕ 39

СПИСОК ЛИТЕРАТУРЫ 40

Приложение 1. Документация для пользователя. 42

Приложение 2. Документация для программиста. 46

Приложение 3. Примеры генерируемых заданий. 49

Современная криптография в значительной мере использует результаты таких дисциплин как алгебра, теория чисел, теория сложности. Студентам, изучающим криптографию, необходимо знание ее математических основ. Среди этих основ одно из ведущих мест занимает проблема дискретного логарифмирования.

Дискретное логарифмирование – задача обращения функции gx в некоторой конечной мультипликативной группе G.

Для заданных g и a решение x уравнения gx = a называется дискретным логарифмом элемента a по основанию g.

Решение задачи дискретного логарифмирования состоит в нахождении некоторого целого неотрицательного числа x удовлетворяющего данному уравнению. Если оно разрешимо, у него должно быть хотя бы одно натуральное решение, не превышающее порядок группы.

В отличие от логарифма непрерывного, дискретный логарифм не является дифференцируемой монотонной функцией, его нельзя найти приближенно, разложив в ряд Тейлора, и вообще никакого приближенного значения здесь не может быть, ведь x – целое число.

Именно трудность решения этой задачи лежит в основе многих криптосистем. Это и шифр Эль-Гамаля, Шамира, такие криптостандарты как подпись DSA , ГОСТ Р 34.10-94, ГОСТ Р 34.10-2001 и другие.

Например в том же шифре Эль-Гамаля открытым ключом является тройка (p, g, y), закрытым ключом — число x, и связаны они между собой cоотношением y=gxmod p. А процедура восстановления закрытого ключа по открытому есть решение задачи дискретного логарифмирования.

К тому же очень важное место в криптоанализе асимметричных шифров занимает эффективность используемых алгоритмов. Если, к примеру, в симметричной криптографии для взлома шифра используется в основном только полный перебор, то для взлома асимметричных шифров применяются специальные алгоритмы, сокращающие время в разы. Чем лучше алгоритм, тем более быстро он приводит к желаемому результату.

Наиболее очевидным и легким в реализации является алгоритм исчерпывающего поиска (прямого перебора). Этот наивный метод является самым трудоемким, он требует O(n) умножений, то есть обладает экспоненциальной сложностью.

Состоит он в следующем: вычисляются g0, g1, g2,…, gp—1 пока не попадется gi?a(mod p). Полученное i будет искомым дискретным логарифмом i=logga(mod p—1).

Как видим, алгоритм абсолютно неэффективен в реальных условиях при больших p, которые используются в криптографии.

Первым алгоритмом, позволяющим не использовать обычный перебор, был Baby-step-giant-step (Шаг младенца, шаг великана), предложенный Даниелем Шэнксом (Shanks) в 1973 году.

Сложность данного алгоритма составляет O( ) умножений по модулю и O( ) операций сравнения.

Как видим, алгоритм эффективнее прямого перебора, но в связи с малой распространенностью асимметричных шифров он оставался малоизвестным.

Но уже в конце 70х, в 80х вместе с развитием асимметричных шифров и подписей, данная тема получила большое распространение. Стали появляться все новые и новые алгоритмы с все большой и большой скоростью работы.

К примеру, ?-алгоритм Полларда для вычисления дискретного логарифма.

Основные идеи этого алгоритма известны в теории чисел довольно долгое время, однако только в 1979 г. американским ученым Адлеманом был предложен данный алгоритм как метод решения задачи нахождения дискретного логарифма. В реальных условиях использования этого алгоритма (в том числе и его усовершенствованных вариантов) дает довольно быстрое решение задачи нахождения дискретного логарифма. Самым быстрым на данное время считается алгоритм Полига-Хеллмана. Этот алгоритм используется в случае известной факторизации порядка p группы G. Алгоритм Полига-Хеллмана является наиболее сложным для написания, так как требует реализации других теоретико-числовых алгоритмов, таких как китайская теорема об остатках.

Трудоемкость данного метода составляет:

умножений в группе при условии, что разложение n известно.

Как видим, выбор алгоритма напрямую влияет на скорость. Поэтому для будущего специалиста в области компьютерной безопасности и криптоанализа так важно понимание и корректное усвоение основ дискретного логарифмирования.

Один из способов обеспечения объективной оценки – использование индивидуальных вариантов контрольных и домашних заданий. Такой подход снижает вероятность списывания и помогает в раннем выявлении неуспевающих студентов.

Но внедрению такого подхода мешает большой объем подготовительной работы, необходимой для создания проверочных заданий, и время, затрачиваемое преподавателем для проверки работ студентов.

К тому же данные алгоритмы обладают следующей особенностью: при одних входных параметрах процесс решения может занять две-три итерации, а при других – десятки.

Если у нас, к примеру:

g – порождающий элемент,

p – простое число,

a – аргумент логарифма,

то количество итераций любого метода может насчитывать от 1 до p-1, при этом при одних a количество итераций будет не велико (1-3), а при других a очень большим (до p-1). Причем заранее выяснить количество невозможно.

Поэтому, прежде чем дать студенту задание, преподавателю необходимо предварительно узнать степень его сложности.

Так, в курсе «Теоретико-числовые методы в криптографии» ТюмГУ общий объем домашних и контрольных работ составляет около 150 задач на студента, а число студентов на курсе – от 30 до 45 человек. Таким образом, для обучения одного потока студентов необходимо составить и решить более 4500 различных задач.

Поэтому цель моей дипломной работы – разработка модулей автоматической генерации случайных заданий и решений к ним по теме «Алгоритмы дискретного логарифмирования» в дисциплине «Теоретико-числовые методы в криптографии».

Для ее достижения были поставлены следующие задачи:

• определить необходимый набор модулей;

• cпроектировать и разработать учебные модули;

• создать документацию;

• сформировать базу учебных заданий по теме "Дискретное логарифмирование";

• обеспечить интеграцию созданных модулей с основным ядром системы.

1. А.В.Рожков, О.В. Ниссенбаум. Теоретико-числовые методы в криптографии: Учебное пособие. Тюмень: Издательство Тюменского государственного университета, 2007. 160с.

2. Виноградов И.М. Основы теории чисел. М.: Наука, 1972. 402с.

3. Бухштаб А.А. Теория чисел. Издательство: Лань. Серия: Учебники для вузов. Специальная литература. 2008 г. ISBN: 978-5-8114-0847-4

4. Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии. Учебное пособие. М.: Гелиос-АРВ, 2001.

5. Б. Я. Рябко, А. Н. Фионов. Основы современной криптографии для специалистов в информационных технологиях. Издательство - Научный мир, 2004 год. ISBN: 5-89176-233-1

6. Трей Нэш. C# 2008: ускоренный курс для профессионалов. Язык программирования C# 3.0 для .NET 3.5. М.: Вильямс, 2008. 576c.

7. Эндрю Троелсен. С# 2008 и платформа .NET 3.5 Framework = Pro C# 2008 and the .NET 3.5 Framework. — 4-е изд. — М.: Вильямс, 2009. — С. 1368. — ISBN 978-5-8459-1589-4

8. Герберт Шилдт. C# 3.0: полное руководство = C# 3.0: The Complete Reference. — 4-е изд. — М.: Вильямс, 2009. — С. 992. — ISBN 978-5-8459-1565-8

9. Кристиан Нейгел, Карли Уотсон и др. Visual C# 2008: базовый курс. Visual Studio® 2008 = Beginning Visual C# 2008. — М.: Диалектика, 2009. — ISBN 978-5-8459-1317-3

10. Кристиан Нейгел, Билл Ивьен и др. C# 2008 и платформа .NET 3.5 для профессионалов = Professional C# 2008. — М.: Диалектика, 2008. — ISBN 978-5-8459-1458-3

11. В.В. Гузеев. Образовательная технология: от приёма до философии. М.:Сентябрь, 1996.

12. В.И. Загвязинский - Теория обучения: Современная интерпретация: Учеб. пособие для студ. высш. пед. учеб. заведений. - М.: Издательский центр «Академия», 2001-192 с.

Примечаний нет.

2000-2024 © Copyright «DipMaster-Shop.ru»