Майзаков Максим Александрович Разработка модулей автоматической генерации заданий с решениями по теме «Дискретное логарифмирование» диплом

Вид материалаДиплом

Содержание


Список литературы
Приложение 1. Документация для пользователя.
Подобный материал:
1   ...   4   5   6   7   8   9   10   11   12

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


Данный модуль создает задания и их решения при помощи алгоритма исчисления порядка.

Параметры, подающиеся на вход аналогичны входным параметрам в предыдущих модулях:
  1. k – количество заданий, принимает значения от 1 до 25;
  2. max – максимальный модуль, может принимать значения от 3 до 1000. Влияет на сложность генерируемых заданий.
  3. t – размер факторной базы, по умолчанию равен 3.
  4. nmax – максимальное количество чисел для перебора, по умолчанию данный параметр равен 10. Не должен быть слишком большим, так как от напрямую зависит объем работы, которой потребуется студенту для решения.

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

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

ЗАКЛЮЧЕНИЕ



В ходе выполнения дипломной работы были изучены материалы по теме «Дискретное логарифмирование» и решена намеченная цель – созданы модули автоматической генерации заданий и решений по данной теме. Для достижения этой цели, мной в ходе выполнения работы были решены следующие задачи:
  • Определен набор тем для создания модулей, максимально полно покрывающий тему «Дискретного логарифмирования»
  • Спроектированы и разработаны сами модули генерации заданий и решений по выбранным темам. Обладают дружественным, интуитивно понятным интерфейсом и простотой использования.
  • Реализована интеграция модулей в программный комплекс. Данный комплекс объединяет все модули в одно цело. Имеет дружественный, интуитивно понятный интерфейс и прост в использовании.
  • Составлена документация двух видов. Для пользователя – с иллюстрациями интерфейса и объяснением всех параметров и правил их заполнения. Для программиста – с объяснениями исходного кода, параметров и функций, использующихся в данных модулях.
  • Произведена апробация генерируемых заданий на студентах 5 курса специальности «Компьютерная безопасность», с целью проверки корректности их составления и правильности решения.
  • Сформирована база учебных задач по теме «Дискретное логарифмирование», и успешное ее использование в ходе аудиторных практических занятий по предмету «Теоретико-числовые методы в криптографии».



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

  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 с.

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



Модуль BABYSTEP:



На рисунке изображен интерфейс модуля генерирующего задания и решения методом Шаг младенца – шаг великана.

Модуль имеет следующие параметры:
  • Количество заданий. Числовое значение, отвечающее за количество создаваемых заданий с решениями. Может быть только числовым значением от 1 до 25.
  • Максимальное простое число. Это максимальное значение модуля, которое он может при генерации заданий. Может быть только числовым значением от 3 до 2000. Напрямую влияет на сложность генерируемых заданий. Чем больше число, тем более сложные вычисления потребуется произвести студенту.

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

Модуль POLARD:




На рисунке изображен интерфейс модуля генерирующего задания и решения Ро-методом Полларда.

Модуль имеет следующие параметры:
  • Количество заданий. Принимает значения от 1 до 25.
  • Максимальное простое число. Это максимальное значение модуля, которое он принимает в процессе генерации заданий. Имеет только числовое значением от 3 до 2000. От этого параметра зависит сложность расчетов, выполняемых студентов в ходе решения.
  • Минимальное количество итераций. Числовое значение, ограничивающее снизу количество расчетов, которые понадобятся для решения, тем самым, этот параметр исключает слишком простые задания. Значение поля лежит в интервале от 2 до 17, но не больше максимального значения итераций.
  • Максимальное количество итераций. Этот параметр устанавливает ограничение сверху на количество расчетов, которые придется выполнить студентом в ходе решения, тем самым отбрасывает слишком сложные задания. Может принимать значения от 3 до 18, но не меньше предыдущего параметра.

После ввода всех данных нажимается кнопка «Сгенерировать». Модуль начинает работу, создает задания и решения в соответствии с заданной сложности. По окончании работы, информирует пользователя об окончании работы.


Модуль POLIHELL:




На рисунке представлен интерфейс модуля генерирующего задания и решения алгоритмом Поллига-Хэллмана. Как видим, он идентичен интерфейсу у предыдущего модуля, соответственно входные параметры схожи:
  • Количество заданий. Количество генерируемых заданий с решениями, которые получатся в результате работы модуля. Принимает числовые значения числовые значения от 1 до 25.
  • Максимальное простое число. Это максимальное значение модуля, принимаемое им в результате генерации чисел. Может быть только числовым значением от 3 до 2000. Влияет на сложность расчетов в итоговых заданиях.
  • Параметры, ограничивающие количество итераций снизу и сверху, для задания нужной сложности. Минимальное значение составляет 2, а максимальное 15.

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