Разработка программной имитации шифровальной машины Энигма
Наименование проекта: разработка программной имитации машины «Enigma», в качестве наглядности для проведения лекционных занятий по предмету «Безопасность». Область применения: защита документов и любых файлов, находящихся на компьютере. Функциональное назначение: шифрование и дешифрование данных, которые находятся на компьютере, с целью их защиты. Эксплуатационное назначение: программный продукт должен устанавливаться на ПК, как независимая программа для защиты файлов. Программа может использоваться как в личных, так и в коммерческих целях. Программный продукт должен соответствовать следующим требованиям: - Программа должна быть разработана с помощью визуальной среды программирования и иметь графический интерфейс; - Программа должна иметь интуитивно понятный интерфейс; - Программа должна отображать ход процесса шифрования или дешифрования; - Программа должна защищать зашифрованные файлы от модификации, перевирюючы хеш-сумму при дешифровке; - Программа должна иметь возможность удаления исходного файла при шифровании и дешифровке. Входными данными программы должны быть: - Пароль; - Путь к файлу для шифрования или дешифрования; - Путь для зашифрованного или расшифрованного файла; Система должна: - Обрабатывать файлы произвольных типов; - Работать под управлением ОС Windows; - Реализовывать произвольное количество барабанов; - Работать с ASCII таблице. Описание функций и ограничений: 1. Функция шифрования файла: реализует шифрования указанного файла после введения пароля по алгоритму Энигмы и добавления к нему контрольной суммы. По нажатию кнопки происходит шифрование и создается зашифрованный файл по указанному пути. 2. Функция дешифровки файла: реализует дешифровки указанного файла после введения пароля по алгоритму Энигмы и проверка контрольной суммы. По нажатию кнопки происходит дешифровка и создается расшифрован файл по указанному пути. 3. Функция удаления исходного файла: при выборе этой функции при шифровании или дешифровке удаляет исходный файл, который шифруется или дешифруется. 4. Функция проверки целостности зашифрованного файла: реализует проверку контрольной суммы. По нажатию кнопки происходит отделение контрольной суммы от файла, расчет новой контрольной суммы и сравнения отделенной контрольной суммы с рассчитанной. 5. Ограничения на ввод минимальной длины пароля: при вводе пароля при шифрования или дешифровке пароль не может буди длиной менее трех символов. С целью обеспечения надежного функционирования программы должны быть предусмотрены: - Блоки, которые контролируют устранение сбойных ситуаций в работе системы; - Контроль ввода данных, который обеспечивает устойчивость программы к ошибкам пользователя; - Обработка исключительных ситуаций; - Выдача четких и полезных сообщений о местонахождении ошибки и ее характер. Программа должна обрабатывать исключительные ситуации, такие как: - Невозможность создания зашифрованного или расшифрованного файла; - Невозможность удаления исходного файла. Программа должна нормально функционировать при бесперебойной работе ЭВМ. При возникновении сбоя в работе аппаратуры, восстановление нормальной работы программы должна проводиться после перезагрузка операционной системы; запуска программы; повторного выполнения действий, потерянных до последнего сохранения информации. Уровень надежности программы должен соответствовать технологии программирования, предусматривающей: инспекцию исходных текстов программы; автономное тестирование модулей (методов) программы; тестирование сопряжения модулей (методов) программы; комплексное тестирование программы. Время восстановления после отказа, вызванного сбоем электропитания технических средств (другими внешними факторами), не фатальным сбоем (не крахом) операционной системы, не должно превышать времени, необходимого на перезагрузку операционной системы и запуск программы, при условии соблюдения условий эксплуатации технических и программных средств . Время восстановления после отказа, вызванного неисправностью технических средств, фатальным сбоем (крахом) операционной системы, не должно превышать времени, необходимого на устранение неисправностей технических средств и переустановки программных средств. Программа имеет следующие функциональные возможности: - Шифрование файла; - Дешифрование файла; - Проверка контрольной суммы зашифрованного файла.
Введение 5 1 АНАЛИТИЧЕСКИЙ РАЗДЕЛ 7 1.1 Обзор возможностей применения криптографии и шифрования 7 1.2 Анализ шифровальной машины «Enigma» 12 1.3 Обзор существующих аналогов для шифрования данных 14 1.4 Анализ существующих программных инструментов разработки 20 1.5 Постановка технического задания дипломного проекта 24 2 ОПИСАНИЕ ПРОЦЕССА РАЗРАБОТКИ СИСТЕМЫ 29 2.1 Разработка алгоритмов действия программы 29 2.2 Описание разработанных функциональных модулей программного кода 33 2.3 Описание интерфейсной части разработанной программы 40 3 ОХРАНА ТРУДА 60 ВЫВОДЫ 61 ПЕРЕЧЕНЬ ССЫЛОК 63
В данном дипломном проекте разработана программа имитации машины «Enigma». Энигма - портативная шифровальная машина, использовавшаяся для шифрования и дешифрования секретных сообщений. Разрабатываемая в рамках данной работы программа позволяет шифровать файлы произвольных типов и размеров. Система может быть использована в любой сфере деятельности для защиты файлов. В качестве средств разработки использован язык С ++ и среда разработки С ++ Builder 6.
При необходимости, работа может быть оперативно переделана и доработана под нужную область. В наличии презентация, файлы исходников реализации, отчет по преддипломной практике(за дополнительную плату).Имеется 2 варианта работы, на русском и украинском языках, по запросу вышлю нужную. Если есть вопросы по работе - задавайте, постараюсь всем ответить. Работа была защищена в 2016 году на оценку "Отлично" в одном из Украинских Вузов.
1. Алферов А.П. Основы криптографии: Учеб. Пособие / А.П. Алферов, А.Ю. Зубов. - М.: Гелиос АРВ, 2002. - 480 с. 2. Архангельский А.Я. Программирование в C++ Builder 6 / А.Я. Архангельский. – М.: БИНОМ, 2003. — 1152 с. 3. Белов С.В. Безопасность жизнедеятельности. Учебник для вузов / С.В. Белов, А.В. Ильницкая, А.Ф. Козьяков. - М.: Высшая школа, 2007. - 616 с. 4. Бобровский С. А. Самоучитель программирования на языке C++ в системе Borland C++ Builder 5.0 / С. А. Бобровский М.: ДЕСС КОМ, 2001. — 272 с. 5. Бужан В.В. Основы программирования в среде Borland C++ Builder / В.В. Бужан. — Краснодар: РИО ЮИМ, 2005 - 156 с. 6. Гондзюк М.Н. Основи охорони праці / М.Н. Гондзюк, О.П. Желібо, М.О. Халімовський. – К.: Каравелла, 2004. – 408 с. 7. Домашев А.В. Программирование алгоритмов защиты информации: Учебное пособие / А.В. Домашев, В.О. Попов, Д.И. Правиков. - М.: «Нолидж». 2000. - 288 с. 8. Житецький В.Д. Охорона праці користувачів ПК / В.Д. Житецький – Львів: Афіша, 2000. – 176 с. 9. Масленников М.Е. Практическая криптографія / М.Е. Масленников. - СПб.: БХВ- Петербург, 2003. - 464 с. 10. Петров А.А. Компьютерная безопасность. Криптографические методы защиты / А.А. Петров. - М.: ДМК, 2000. – 448 с.
и еще 5 источников
Форма заказа новой работыНе подошла эта работа?
Закажи новую работу, сделанную по твоим требованиям
Фрагменты работ
Наименование проекта: разработка программной имитации машины «Enigma», в качестве наглядности для проведения лекционных занятий по предмету «Безопасность». Область применения: защита документов и любых файлов, находящихся на компьютере. Функциональное назначение: шифрование и дешифрование данных, которые находятся на компьютере, с целью их защиты. Эксплуатационное назначение: программный продукт должен устанавливаться на ПК, как независимая программа для защиты файлов. Программа может использоваться как в личных, так и в коммерческих целях. Программный продукт должен соответствовать следующим требованиям: - Программа должна быть разработана с помощью визуальной среды программирования и иметь графический интерфейс; - Программа должна иметь интуитивно понятный интерфейс; - Программа должна отображать ход процесса шифрования или дешифрования; - Программа должна защищать зашифрованные файлы от модификации, перевирюючы хеш-сумму при дешифровке; - Программа должна иметь возможность удаления исходного файла при шифровании и дешифровке. Входными данными программы должны быть: - Пароль; - Путь к файлу для шифрования или дешифрования; - Путь для зашифрованного или расшифрованного файла; Система должна: - Обрабатывать файлы произвольных типов; - Работать под управлением ОС Windows; - Реализовывать произвольное количество барабанов; - Работать с ASCII таблице. Описание функций и ограничений: 1. Функция шифрования файла: реализует шифрования указанного файла после введения пароля по алгоритму Энигмы и добавления к нему контрольной суммы. По нажатию кнопки происходит шифрование и создается зашифрованный файл по указанному пути. 2. Функция дешифровки файла: реализует дешифровки указанного файла после введения пароля по алгоритму Энигмы и проверка контрольной суммы. По нажатию кнопки происходит дешифровка и создается расшифрован файл по указанному пути. 3. Функция удаления исходного файла: при выборе этой функции при шифровании или дешифровке удаляет исходный файл, который шифруется или дешифруется. 4. Функция проверки целостности зашифрованного файла: реализует проверку контрольной суммы. По нажатию кнопки происходит отделение контрольной суммы от файла, расчет новой контрольной суммы и сравнения отделенной контрольной суммы с рассчитанной. 5. Ограничения на ввод минимальной длины пароля: при вводе пароля при шифрования или дешифровке пароль не может буди длиной менее трех символов. С целью обеспечения надежного функционирования программы должны быть предусмотрены: - Блоки, которые контролируют устранение сбойных ситуаций в работе системы; - Контроль ввода данных, который обеспечивает устойчивость программы к ошибкам пользователя; - Обработка исключительных ситуаций; - Выдача четких и полезных сообщений о местонахождении ошибки и ее характер. Программа должна обрабатывать исключительные ситуации, такие как: - Невозможность создания зашифрованного или расшифрованного файла; - Невозможность удаления исходного файла. Программа должна нормально функционировать при бесперебойной работе ЭВМ. При возникновении сбоя в работе аппаратуры, восстановление нормальной работы программы должна проводиться после перезагрузка операционной системы; запуска программы; повторного выполнения действий, потерянных до последнего сохранения информации. Уровень надежности программы должен соответствовать технологии программирования, предусматривающей: инспекцию исходных текстов программы; автономное тестирование модулей (методов) программы; тестирование сопряжения модулей (методов) программы; комплексное тестирование программы. Время восстановления после отказа, вызванного сбоем электропитания технических средств (другими внешними факторами), не фатальным сбоем (не крахом) операционной системы, не должно превышать времени, необходимого на перезагрузку операционной системы и запуск программы, при условии соблюдения условий эксплуатации технических и программных средств . Время восстановления после отказа, вызванного неисправностью технических средств, фатальным сбоем (крахом) операционной системы, не должно превышать времени, необходимого на устранение неисправностей технических средств и переустановки программных средств. Программа имеет следующие функциональные возможности: - Шифрование файла; - Дешифрование файла; - Проверка контрольной суммы зашифрованного файла.
Введение 5 1 АНАЛИТИЧЕСКИЙ РАЗДЕЛ 7 1.1 Обзор возможностей применения криптографии и шифрования 7 1.2 Анализ шифровальной машины «Enigma» 12 1.3 Обзор существующих аналогов для шифрования данных 14 1.4 Анализ существующих программных инструментов разработки 20 1.5 Постановка технического задания дипломного проекта 24 2 ОПИСАНИЕ ПРОЦЕССА РАЗРАБОТКИ СИСТЕМЫ 29 2.1 Разработка алгоритмов действия программы 29 2.2 Описание разработанных функциональных модулей программного кода 33 2.3 Описание интерфейсной части разработанной программы 40 3 ОХРАНА ТРУДА 60 ВЫВОДЫ 61 ПЕРЕЧЕНЬ ССЫЛОК 63
В данном дипломном проекте разработана программа имитации машины «Enigma». Энигма - портативная шифровальная машина, использовавшаяся для шифрования и дешифрования секретных сообщений. Разрабатываемая в рамках данной работы программа позволяет шифровать файлы произвольных типов и размеров. Система может быть использована в любой сфере деятельности для защиты файлов. В качестве средств разработки использован язык С ++ и среда разработки С ++ Builder 6.
При необходимости, работа может быть оперативно переделана и доработана под нужную область. В наличии презентация, файлы исходников реализации, отчет по преддипломной практике(за дополнительную плату).Имеется 2 варианта работы, на русском и украинском языках, по запросу вышлю нужную. Если есть вопросы по работе - задавайте, постараюсь всем ответить. Работа была защищена в 2016 году на оценку "Отлично" в одном из Украинских Вузов.
1. Алферов А.П. Основы криптографии: Учеб. Пособие / А.П. Алферов, А.Ю. Зубов. - М.: Гелиос АРВ, 2002. - 480 с. 2. Архангельский А.Я. Программирование в C++ Builder 6 / А.Я. Архангельский. – М.: БИНОМ, 2003. — 1152 с. 3. Белов С.В. Безопасность жизнедеятельности. Учебник для вузов / С.В. Белов, А.В. Ильницкая, А.Ф. Козьяков. - М.: Высшая школа, 2007. - 616 с. 4. Бобровский С. А. Самоучитель программирования на языке C++ в системе Borland C++ Builder 5.0 / С. А. Бобровский М.: ДЕСС КОМ, 2001. — 272 с. 5. Бужан В.В. Основы программирования в среде Borland C++ Builder / В.В. Бужан. — Краснодар: РИО ЮИМ, 2005 - 156 с. 6. Гондзюк М.Н. Основи охорони праці / М.Н. Гондзюк, О.П. Желібо, М.О. Халімовський. – К.: Каравелла, 2004. – 408 с. 7. Домашев А.В. Программирование алгоритмов защиты информации: Учебное пособие / А.В. Домашев, В.О. Попов, Д.И. Правиков. - М.: «Нолидж». 2000. - 288 с. 8. Житецький В.Д. Охорона праці користувачів ПК / В.Д. Житецький – Львів: Афіша, 2000. – 176 с. 9. Масленников М.Е. Практическая криптографія / М.Е. Масленников. - СПб.: БХВ- Петербург, 2003. - 464 с. 10. Петров А.А. Компьютерная безопасность. Криптографические методы защиты / А.А. Петров. - М.: ДМК, 2000. – 448 с.