ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 07.06.2019

Просмотров: 443

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

ДОНБАССКАЯ ГОСУДАРСТВЕННАЯ МАШИНОСТРОИТЕЛЬНАЯ

АКАДЕМИЯ


КАФЕДРА

КОМПЬЮТЕРНЫХ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ



курсовая работа


по дисциплине

«Теория алгоритмов»

ТЕМА:"Разработать программу для шифрования с использованием двойного квадрата Уитстона"

Вариант:

Выполнил:

студент группы ИТ 14 -1

Красовский Абхай Владленович ______________

(подпись)

Руководитель:

Богдан Михаил Петрович ________________

(подпись)



Дата защиты работы

Оценка

Подписи преподавателей














К раматорск 2015

г. Краматорск 2015 г.



«





С О Д Е Р Ж А Н И Е

Стр.

Аннотация………………………………………… …………………………………...4

Алгоритмы обработки понятий нечеткой логики….……………………………….. 5

1 Шифры сложной замены …………………………………………………………… 9

1.1 Шифр Гронсфельда ………………………………………………………...…….. 9

1.2 Шифр Вижинера …………………………………………………………………. 10

1.3 Шифр «двойной квадрат» Уитстона ……………………………………………. 13

1.4 Оценка секретности шифра ……………………………………………………….14

1.5 Шифр Вернама …………………………………………………………………… 14

2 Разработка программного продукта ….………………………………………………15

2.1 Современные требования к программным продуктам …...…………………….15

2.2 Предполагаемая структура разрабатываемого ПП …………….……………….15

2.3 Обоснование выбора средств реализации ……………………………………....16

2.4 Функциональная схема ( блок-схема ) ……..…………………………………...16

2.5 Алгоритм реализации основной функции ПП………….……………………..16

3 Руководство пользователя, инструкция по инсталляции……………………………17

3.1 Требования к аппаратным средствам…….……………………………………...17

3.2 Особенности запуска и работы с программой …………………………………..17

Выводы ………………………………...………………………………………………...19

Список литературы..…………………………………………………………………….20

Приложение А …………………………………………………………...………………21

Теория алгоритмов»

Группа ИТ 14-1 Красовский Абхай

п/п

Ф. И. О.

Номер основной темы

Номер темы реферата

Руково-дитель

9

Красовський А. В.

2

11

Богдан М.П.

Вариант основной темы

Разработать программу для шифрования с использованием шифра Гронсфельда.

Тема реферата - Коды Хаффмана

Литература

1.Мао В. Современная криптография: теория и практика.: Пер. с англ. – М.: изд. дом «Вильямс», 2005. –768с.:ил.

2.Масленников М. Практическая криптография. –СПб.: БХВ-Петербург, 2003.—464с.:ил.

3 Нечаев В. Элементы криптографии. Основы теории защиты информации: Учеб. пособие для вузов / Под ред. В.А. Садовничего.– 2-е изд стер. – М.: Высш.шк., 2004. – 424с.


4 Яблонский С. Введение в дискретную математику: Учеб. пособие для вузов / Под ред. В.А. Садовничего.– 3-е изд стер. – М.: Высш.шк., 2002. –384с.

5.Андерсон Д. Дискретная математика и комбинаторика. : Пер. с англ. – М.: изд. дом «Вильямс», 2004. –960с.:ил.































































АННОТАЦИЯ



Курсовая работа по дисциплине «Теория алгоритмов» на тему: "(Разработать программу для шифрования с использованием двойного квадрата Уитстона." студента группы ИТ14–1 Красовского А.В. содержит 21 страницу машинописного текста, 12 рисунков, 8 таблиц, 3 страницы приложения.

В работе рассмотрен алгоритм шифрования и дешифрования сообщений шифром сложной замены – двойной квадрат Уитстона.

Ключевые слова: теория алгоритмов, криптография, шифрование/ дешифрование информации, двойной квадрат Уитстона.


































Алгоритмы обработки понятий нечеткой логики

Нечеткая логика - новая мощная технология

Нечеткая логика возникла как наиболее удобный способ построения систем управления метрополитенами и сложными технологическими процессами, а также нашла применение в бытовой электронике, диагностических и других экспертных системах. Несмотря на то, что математический аппарат нечеткой логики впервые был разработан в США, активное развитие данного метода началось в Японии, и новая волна вновь достигла США и Европы.

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

Термин fuzzy (англ. нечеткий, размытый - произносится [фаззи] ) стал ключевым словом на рынке. Статьи по электронике без нечетких компонент постепенно исчезали и пропали совсем, как будто кто-то закрыл кран.

В Японии исследования в области нечеткой логики получили широкую финансовую поддержку. В Европе и США усилия были направлены на то, чтобы сократить огромный отрыв от японцев. Так например, агенство космических исследований NASA стало использовать нечеткую логику в маневрах стыковки.

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

Нечеткая логика появилась в 1965 в работах Лотфи А. Задэ (Lotfi A. Zadeh),  профессора технических наук Калифорнийского университета в Беркли.

Что такое нечеткое множество?

Самым главным понятием систем, основанных на нечеткой логике, является понятие нечеткого (под)множества.

Из классической математики известно понятие четких (определенных)  множеств.

Пример:

Рассмотрим множество X всех чисел от 0 до 10, которое назовем универсумом рассуждения. Определим подмножество A множества X всех действительных чисел от 5 до 8.


        A = [5,8]

Покажем характеристическую функцию множества A, эта функция ставит в соответсвие число 1 или 0 каждому элементу в X, в зависимости от того принадлежит данный элемент подмножеству A или нет. Результат представлен на рисунке 1:

Рисунок 1 - Характеристическую функцию множества A


Можно интерпретировать элементы, которым поставлена в соответствие 1, как элементы, находящиеся во множестве A,  а элементы, которым поставлен в соответствие 0, как элементы, не находящиеся во множестве A.

Эта концепция используется во многих областях приложений. Но можно легко обнаружить ситуации, в которых данной концепции будет недоставать гибкости.

В данном примере опишем множество молодых людей. Более формально можно записать так

B = {множество молодых людей}

Так как, вообще, возраст начинается с 0, то нижний предел этого множества должен быть нулем. Верхний предел определить немного сложнее. На первый раз установим верхний предел, скажем, равным 20 годам. Таким образом, получаем B как четко ограниченный интервал, буквально:

B = [0,20]

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

Более естественный путь получения множества B состоит в ослаблении строгого разделения на молодых и не  молодых. Сделаем это, вынося не только (четкие) суждения Да, он|она принадлежит множеству молодых людей или Нет, он|она не принадлежит множеству молодых люей, но и более гибкие формулировки  ДА, он|она принадлежит к достаточно молодым людям или Нет, он|она не очень молод|молода.

Теперь рассмотрим как с помощью нечеткого множества определить такое выражение, как он|она еще молоды. 
 

Как было сказано ранее мы используем нечеткие множества, чтобы сделать компьютер более умным. Представим эту мысль более формализовано. В первом примере мы кодировали все элементы универсума рассуждения с помощью 0 или 1. Простой способ обобщить данную концепцию - ввести значения между 0 и 1. Реально можно даже допустить бесконечное число значений между 0 и 1, называемое единичным интервалом I = [0, 1].

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

Для наглядности приведем характеристическую функцию множества молодых людей, как и в первом примере на рисунке 2:

Рисунок 2 - Характеристическую функцию множества молодых людей

То есть 25-летние все еще молоды со степенью 50 процентов.


Теперь вы поняли что такое нечеткое множество. Но что с ним можно делать?

Операции с нечеткими множествами

Сейчас, когда мы уже знаем, что такое нечеткие множества, попытаемся определить базовые операции (действия) над нечеткими множествами. Аналогично действиям с обычными множествами нам потребуется определить пересечение, объединение и отрицаниенечетких множеств. В своей самой первой работе по нечетким множествам Л. А. Задэ предложил оператор минимума  для пересечения иоператор максимума для объединения двух нечетких множеств. Легко видеть, что эти операторы совпадают с обычными (четкими) объединением и пересечением, только рассматриваются степени принадлежности 0 и 1. 
  
 

Чтобы пояснить это, приведем несколько примеров. Пусть  нечеткий интервал от 5 до 8 и B нечеткое число около 4, как показано на рисунке.

 

Рисунок 3 -  Нечеткий интервал A от 5 до 8 Рисунок 4 - Нечеткое число B около 4

Следующий пример иллюстрирует нечеткое множество между 5 и 8 И(AND)  около 4 (синяя линия).

Рисунок 5 – Нечеткое множество между 5 и 8 И(AND)

Нечеткое множество между 5 и 8 ИЛИ (OR)  около 4 показано на следующем рисунке (снова синяя линия).

Рисунок 6 – Нечеткое множество между 5 и 8 ИЛИ(OR)

Следующий рисунок иллюстрирует операцию отрицания. Синяя линия - это ОТРИЦАНИЕ нечеткого множества A.

Рисунок 7 – Отрицание нечеткого множества А

Нечеткое управление

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




1 Шифры сложной замены

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

При r-алфавитной подстановке символ x0 исходного сообщения заменяется символом y0 из алфавита В0, символ x1 -символомy1 из алфавита B1, и так далее, символ xr-1 заменяется символом yr-1 из алфавита Br-1, символ xr заменяется символом yr снова из алфавита Во, и т.д.

Общая схема многоалфавитной подстановки для случая г = 4 показана на рис. 9.

Входной символ:

X0

X1

X2

X3

X4

X5

X6

X7

X8

X9

Алфавит подстановки:

В0

B1

B2

В3

В0

B1

B2

В3

В0

B1

Рис. 9. Схема г-алфавитной подстановки для случая г = 4

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


Многоалфавитные шифры замены предложил и ввел в практику криптографии Леон Батист Альберти, который также был известным архитектором и теоретиком искусства. Его книга "Трактат о шифре", написанная в 1566 г., представляла собой первый в Европе научный труд по криптологии. Кроме шифра многоалфавитной замены, Альберти также подробно описал устройства из вращающихся колес для его реализации. Криптологи всего мира почитают Л.Альберти основоположником криптологии.

1.1 Шифр Гронсфельда

Этот шифр сложной замены, называемый шифром Гронсфельда, представляет собой модификацию шифра Цезаря числовым ключом. Для этого под буквами исходного сообщения записывают цифры числового ключа. Если ключ короче сообщения, то его запись циклически повторяют. Шифртекст получают примерно, как в шифре Цезаря, но отсчитывают по алфавиту не третью букву (как это делается в шифре Цезаря), а выбирают ту букву, которая смещена по алфавиту на соответствующую цифру ключа. Например, применяя в качестве ключа группу из четырех начальных цифр числа e (основания натуральных логарифмов), а именно 2718, получаем для исходного сообщения ВОСТОЧНЫЙ ЭКСПРЕСС следующий шифртекст:

Сообщение

 

В

О

С

Т

О

Ч

Н

Ы

Й

 

Э

К

С

П

Р

Е

С

С

Ключ

 

2

7

1

8

2

7

1

8

2

 

7

1

8

2

7

1

8

2

Шифртекст

 

Д

Х

Т

Ь

Р

Ю

О

Г

Л

 

Д

Л

Щ

С

Ч

Ж

Щ

У

Чтобы зашифровать первую букву сообщения В, используя первую цифру ключа 2 , нужно отсчитать вторую по порядку букву от В в алфавите

В

Г

Д

 

1

2

получается первая буква шифр-текста Д.

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

Шифр Гронсфельда представляет собой по существу частный случай системы шифрования Вижинера.

1.2 Шифр Вижинера

Шифр Вижинера впервые был опубликован в 1586 г. и является одним из старейших и наиболее известных многоалфавитных систем. Свое название он получил по имени французского дипломата XVI века Блеза Вижинера, который развивал и совершенствовал криптографические системы.

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


Смотрите также файлы