Шифрование информации
Ознакомление с различными способами шифрования информации. Рассмотрение кодов Цезаря, Гронсфельда, Тритемиуса, азбуки Морзе, цифровые, табличные и шифров перестановки. Книжный, компьютерный коды и шифр Масонов. Изучение алгоритма сложных протоколов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 14.05.2014 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Муниципальное образовательное учреждение
Средняя общеобразовательная школа №1
Реферат
Шифрование информации
Выполнил: Омелин Николай
Кулебаки, 2014
Содержание
шифрование информация код морзе
1. Простейшие шифры
1.1 Шифр Цезаря (шифр сдвига, код Цезаря или сдвиг Цезаря)
1.2 Шифр Гронсфельда
1.3 Шифр Тритемиуса
1.4 Азбука Морзе (Код Морзе)
2. Цифровые, табличные шифры и шифры перестановки
2.1 Цифровые шифры
2.2 Квадрат Полибия
2.3 Шифр Атбаша
2.4 Шифры с использованием кодового слова
2.5 Шифры перестановки
2.6 Шифр Бэкона
2.7 Шифр Виженера
3. Другие виды шифров
3.1 Книжный шифр
3.2 Шифр Масонов
3.3 Компьютерные шифры
4. Сложные протоколы (шифр Диффи-Хеллмана)
1. Простейшие шифры
1.1 Шифр Цезаря (шифр сдвига, код Цезаря или сдвиг Цезаря)
Один из самых известных и в то же время простых шифров. Относится шифрам моноалфавитной замены (каждой букве исходного текста ставится в соответствие единственная буква зашифрованного текста).
В данном шифре каждая буква в слове или тексте заменяется другой, которая находится на некоторое постоянное число позицией левее или правее от неё в алфавите. Для расшифровки нужно только знать сдвиг (или ключ) в шифре. Например, если ключ k=3, то формула у нас получится такая x=y-3. Здесь х - номер исходного (шифруемого) символа в алфавите, у - номер символа шифрованного текста в алфавите.
Пример:
Исходное слово: Наука
Ключ (сдвиг) 4
Шифрованное слово: Сдчод
Существуют различные вариации этого шифра, например: ROT1, ROT13. ROT образовано от английского слово rotate, что в данном случае означает "сдвинуть". То есть сдвинуть на 1 позицию, сдвинуть на 13 позиций.
1.2 Шифр Гронсфельда
Представляет собой модификацию шифра Цезаря. Относится к шифрам сложной (многоалфавитной) замены. В шифрах сложной замены для шифрования каждого символа исходного текста применяется свой шифр простой (моноалфавитной) замены. Используемые алфавиты применяются циклически и последовательно.
Например, пусть у нас имеется некоторое сообщение x1 , x2 , x3 , ….. xn , …… x2n , ….., которое надо зашифровать. При использовании полиалфавитного шифра имеется несколько моноалфавитных шифров (например, n штук). И в нашем случае к первой букве применяется первый моноалфавитный шифр, ко второй букве -- второй, к третьей -- третий….. к n-ой букве -- n-й, а к n+1 опять первый, ну и так далее.
Теперь конкретно о шифре Гронсфельда. Для шифрования здесь используется числовой ключ. Но каждая буква смещается не на постоянное число позиций, а на то число, которое соответствует ключу. Ключ соответственно состоит не из одной цифры, а из группы цифр. Ключ не обязательно должен быть таким же длинным как шифруемое сообщение. Если ключ короче сообщения, то его просто повторяют по циклу. Так, например, если в тексте 10 символов, а длина ключа 5 символов, то для шифрования ключ будет использоваться 2 раза.
Пример:
Исходный текст: "шифр гронсфельда"
Ключ 15382
Зашифрованный текст: "щнчш есуръцёрялв"
1.3 Шифр Тритемиуса
Усовершенствованный шифр Цезаря.
Формула для шифра:
L = (m+k) mod N
L-номер зашифрованной буквы в алфавите, m-порядковый номер буквы шифруемого текста в алфавите, k-число сдвига, N-количество букв в алфавите.
Число сдвига (шаг смещения) в данном случае переменная величина, функционально зависящая от позиции символа в сообщении. Зависимость может быть разной, например, линейной или квадратичной.
k = A*p + B (линейная зависимость).
A, B - ключи. p - позиция буквы в сообщении.
1.4 Азбука Морзе (Код Морзе)
Тоже очень известный шифр. Как и шифр Цезаря, относится к моноалфавитной замене. Назван в честь Сэмюэля Морзе. Код усовершенствовал сначала Альфред Вейл (добавил буквенные коды), а затем Фридрих Герке. И в таком виде код используется и в наши дни. В этом шифре каждый символ (буквы алфавита, цифры от 0 до 9 и некоторые символы пунктуации) заменяется последовательностью коротких и длинных звуковых сигналов. Короткий сигнал на бумаге записывается как точка, длинный сигнал как тире. Ниже представлены графические изображения кодов для русских и латинских символов.
А также в виде таблицы:
Снова зашифруем слово "наука".
" _. ._ .._ _._ ._"
Второй - с помощью "напева", соответствующего каждому знаку кода Морзе.
Также существует множество программ, помогающих в изучении этой азбуки (например, АДКМ, CW Master, Morse Code Trainer).
2. Цифровые, табличные шифры и шифры перестановки
2.1 Цифровые шифры
1) Алфавит разбивается на группы с равным числом букв, затем каждой группе присваивается свой номер. Так формируется первая цифра для шифровки символа. Вторая цифра - это порядковый номер буквы в группе.
Таблица не обязательно должна выглядеть таким образом. Количество групп может быть другим. Также буквы из алфавита могут идти в таблице не по порядку.
Пример:
Зашифруем таким способом слово "цифра"
Зашифрованный текст: 63 31 61 51 11
Возможно много вариаций этого вида шифра. Например, алфавит разбивается на 5 групп, а каждая буква будет изображаться дробью таким образом, что в числителе будет номер ее группы, а в знаменателе - порядковый номер в группе. Еще один вариант, как я уже говорил, буквы могут идти не по порядку (например, ажмтшю бзнущя виофъ гйпхы дкрць елсчэ).
2) Цифровая таблица.
Пример:
Зашифруем с помощью этой таблицы слово "наука".
Каждый символ будет шифроваться опять двумя цифрами, при чем первой может быть как номер столбца, так и номер строки. То есть буква К может быть зашифрована, как 32 или 23.
Зашифрованный текст: 62 11 33 32 11
Здесь первой цифрой записан номер столбца, второй - номер строки.
3) Шифрование с заменой каждой буквы ее номером в алфавите. Очень простой вид шифра. Его, думаю, можно тоже отнести к цифровым. Но между тем, он часто применяется в различных вариациях и комбинациях с другими видами шифров. Про некоторые комбинации шифров расскажу чуть позже.
Вариация этого шифра: буквы в алфавите отсчитываются не с начала, а с конца. То есть порядковым номер буквы "А" будет 33, "Б" - 32 и так далее.
2.2 Квадрат Полибия
Похож на цифровую таблицу.
Здесь также составляется таблица, обычно число строк и столбцов берется одинаковое, но все зависит от алфавита. При нехватке клеток, можно списать в одну клетку сразу две буквы.
Пример квадрата Полибия для русского алфавита:
Далее шифрование с помощью таблицы может быть осуществлено тремя методами.
1 метод.
Вместо каждой буквы в шифруемом тексте используется соответствующая ей буква снизу (в таблице). Если буква находится в нижней строке, то она заменяется верхней буквой того же столбца. То есть, А => Е, Ю => Г, И => О и так далее.
Пример:
Исходное слово: квадрат.
Зашифрованный текст: пзекчеш.
2 метод.
Вместо буквы записываются соответствующие ей цифры из таблицы. Первая цифра - номер столбца, вторая - номер строки. Первая цифра будет горизонтальной координатой буквы, вторая - вертикальной.
В результате у нас получится запись координаты для каждой буквы в виде дроби. Таким образом сформируются две строчки, на первой горизонтальные координаты всех букв, на второй - вертикальные. Затем координаты считываются по строчкам, а не по столбцам. И потом вновь заменяются буквами согласно таблице.
Пример:
Исходное слово: квадрат.
Запишем координаты всех букв.
Считываем координаты по строкам: 53 15 11 22 11 14 14.
Заменяем буквы, пользуясь таблицей (квадратом). Получаем новую таблицу с координатами.
В итоге после шифрования у нас получается: пчаеарр
3 метод.
Снова записываются координаты букв, считываются по строчкам, но уже без пробелов, то есть записываются сплошным текстом. Получаем последовательность цифр, сдвигаем ее влево на один шаг. Например, было 134526, стало 345261 (то есть цифра из начала идет в конце последовательности). Затем разбиваем последовательность на пары: 34 52 61.
То есть, в случае шифрования слова "квадрат" (см. пример во 2 методе), у нас получится последовательность цифр: 53151122111414
Сдвигаем влево на один шаг: 31511221114145
Разбиваем на пары цифр: 31 51 12 21 11 41 45.
Заменяем цифры буквам согласно квадрату.
После шифрования у нас получается: вдебагю.
Также следует добавить, что возможны вариации квадрата Полибия. Буквы алфавита могут идти не по порядку, размер квадрата может быть другим, в третьем методе может быть выбрано другое смещение.
2.3 Шифр Атбаш
Еще один шифр простой (моноалфавитной) замены.
Шифрование осуществляется путем замены первой буквы алфавита на последнюю, второй на предпоследнюю и так далее.
Этот шифр использовался для еврейского алфавита и отсюда получил свое название. Первая буква - алеф, заменяется на тау (последнюю), вторая буква - бет, заменяется на шин (предпоследнюю). Из этих букв и сформировалось название.
Шифр Атбаш для русского алфавита.
А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Я Ю Э Ь Ы Ъ Щ Ш Ч Ц Х Ф У Т С Р П О Н М Л К Й И З Ж Ё Е Д Г В Б А.
Пример:
Исходное слово: замена
Зашифрованное слово: чятъся
2.4 Шифр с использованием кодового слова
Тоже простой шифр, особой сложности, как в составлении, так и в разгадывании не вызывает.
Сначала выбирается кодовое слово, которое пишется впереди, а затем пишут все остальные буквы алфавита (за исключением тех, что использовались в кодовом слове).
Пример с использованием слова "шифр":
Ш И Ф Р А Б В Г Д Е Ё Ж З Й К Л М Н О П С Т У Х Ц Ч Щ Ъ Ы Ь Э Ю Я
2.5 Шифры перестановки
При таком способе шифрования изменяется только порядок следования символов в исходном тексте, но не изменяются сами символы.
Существует несколько разновидностей шифров перестановки. Приведу некоторые из них.
Шифр Сцитала.
Использовался еще во времена Древней Спарты. Для шифровки использовался жезл ("Сцитала") - цилиндр, на который наматывалась узкая пергаментная лента. На этой ленте вдоль оси цилиндра записывался шифруемый текст. Чтобы прочитать зашифрованный текст использовались цилиндры такого же диаметра. Шифр вертикальной перестановки. Для шифрования используется прямоугольник, в него вписывается текст (слева направо). Каждый столбец прямоугольника нумеруется и затем буквы по вертикали (сверху вниз) выписывается согласно нумерации (ключу).
Пример:
Исходный текст: "шифрвертикальнойперестановки"
Ключ у нас пусть будет 3, 2, 5, 1, 4
Выпишем последовательно буквы из каждого столбца согласно ключу. У нас получится вот такой зашифрованный текст:
Ринрн-ирлптк-шеайсв-вкоео-фтьеаи
Анаграммы.
Перестановка букв или звуков в исходном слове или словосочетании, что в результате дает другое слово или словосочетание.
Будет не очень верно назвать их именно шифром, так как здесь обычно нет никакой последовательности в шифровке, нет ключа. Но для полноты картины и для общего развития можно сказать и о них.
И еще можно добавить, что часто говорят об анаграммах и в тех случаях, когда в результате перестановки получаются не новые слова, а просто, скажем так, набор букв. То есть буквы перемешаны в произвольном порядке.
Примеры:
Шифр - фриш;
австралопитек -- ватерполистка;
покраснение -- пенсионерка.
Шифр Ришелье.
Открытый текст разбивается на отрезки, а внутри отрезков буквы переставляются в соответствии с фиксированной перестановкой (ключом).
Пример:
Исходный текст: "шифр ришелье"
Ключ: (231) (4132) (3142)
Зашифрованный текст: фши ршир лееь
То есть в ключе указываем, на какие отрезки разбивается исходный текст, а также на какую позицию переставляется каждая буква в отрезке.
2.6 Шифр Бэкона
В этом шифре каждая буква текста заменяется группой из пяти букв "А" или "В" (двоичный шифр). Замена осуществляется с помощью специального алфавита шифра Бэкона.
Шифр Бэкона, использующий современный английский алфавит.
Существует несколько способов передачи этого шифра.
1 способ.
Используется 2 шрифта, один для буквы "А", другой для буквы "В". Например, печатаем курсивные буквы вместо "А", а прямые - вместо "В".
Пример:
Magic
Заменяем курсивные и прям буквы на А и В.
Получается ВААВА. Что соответствует букве S
2 способ.
В зашифрованном тексте заглавные буквы будут заменяться на "В", строчные на "А". То есть специально нужные буквы делаются заглавными или строчными. Текст делится на группы по 5 букв, а затем исходные буквы уже заменяются на А и В. И с помощью алфавита Бэкона уже получаем исходное слово.
3 способ.
Определяются параметры (например, "А" - от A до L, "В" - от L до Z). Таким образом, BAABAAAAABAAAABABABB означает TheScience of Deduction.
4 способ.
Пусть у нас имеется цепочка из 32 символов:
aaaaabbbbbabbbaabbababbaaababaab
Будем рассматривать ее как циклическую, то есть соединим начало с концом. Для наглядности изобразим эту цепочку в виде кольца символов. Напротив каждого символа изобразим букву английского алфавита. Для символов, оставшихся без букв, добавим цифры от 1 до 6. Используем эту цепочку в качестве ключа для шифрования букв английского алфавита. Циклическими перестановками цепочки из 32 символов мы можем получить
32 Ч 32 Ч 2 = 2048 ключей.
Будем шифровать каждую букву цепочкой из 5 символов начиная с этой буквы (по или против часовой стрелки). Например для буквы "R" получаем цепочку: babab.
2.7 Шифр Виженера
Состоит из нескольких (точнее для латинского алфавита - 26) шифров Цезаря с различными значениями сдвига. Для шифрования может использоваться tabula recta или квадрат Виженера.
Выбирается ключевое слово и исходный текст. Ключевое слово записывается циклически, пока не заполнит всю длину исходного текста. Далее по таблице буквы ключа и исходного текста пересекаются в таблице и образуют зашифрованный текст.
Пример:
Зашифруем фразу mindgames.
Ключевое слово let.
Записываем ключевое слово циклически, пока его длина не будет соответствовать длине исходного текста. Letletlet.
Символы шифрованного текста будут находится на пересечении столбцов mindgames и строк letletlet.
То есть, первый символ получится таким образом: берем столбец M и строку L, на их пересечении буква X. Значит первой буквой в нашем шифре будет X. И так далее до конца текста.
В результате зашифрованный текст у нас получится такой: xmgoktxil.
3. Другие виды шифров
3.1 Книжный шифр
В этом шифре элементы исходного текста заменяются номерами страниц, строк или столбцов в какой-либо книге, журнале, может быть просто в тексте (тогда может использоваться указатель на номер слова в строке, или даже на определенные буквы). То есть существует какой-то текст-ключ.
Для верной реализации и у отправителя, и у получателя, должны содержаться идентичные тексты-ключи.
Пример:
Возьмем стихотворение А.С. Пушкина "К Чаадаеву"
Любви, надежды, тихой славы
Недолго нежил нас обман,
Исчезли юные забавы,
Как сон, как утренний туман;
Но в нас горит еще желанье;
Под гнетом власти роковой
Нетерпеливою душой
Отчизны внемлем призыванье.
Мы ждем с томленьем упованья
Минуты вольности святой,
Как ждет любовник молодой
Минуты верного свиданья.
Пока свободою горим,
Пока сердца для чести живы,
Мой друг, отчизне посвятим
Души прекрасные порывы!
Товарищ, верь: взойдет она,
Звезда пленительного счастья,
Россия вспрянет ото сна,
И на обломках самовластья
Напишут наши имена!
Как я уже говорил, можно сделать указатель либо на отдельную букву, либо на слово.
Сделаем указатели на буквы. Зашифруем слово "книга".
Зашифрованный текст: 4/1, 1/6, 1/5, 2/6, 1/7.
Числитель дроби - номер строки (начиная отсчет сверху), знаменатель - номер буквы в строке (слева направо).
3.2 Шифр Масонов
Шифр Королевской арки.
Состоит из комбинаций прямых углов с точкам или без них.
Эти две фигуры, расчлененные, образуют 13 знаков. А после добавления в них точек получается 26 знаков.
3.3 Компьютерные шифры
1) Шифр, который представляет собой большой набор различных символов, среди которых какой-то один образует очертание слова или буквы. Понятнее будет на примере.
В таких случаях нужно "подсветить" нужный символ, чтобы увидеть слово.
Для этого в ворде нужно нажать Ctrl+F , ввести нужный символ (в данном случае это U), затем "Выделение при чтении" -> "Выделить все"
2) Шифрование с помощью ASCII- кода.
ASCII представляет собой 8-битную кодировку для представления десятичных цифр, латинского и национального алфавитов, знаков препинания и управляющих символов.
То есть, вместо символов исходного текста записываются их ASCII-коды.
4. Сложные протоколы (шифр Диффи-Хеллмана)
Протокол Димффи -- Хемллмана (англ. Diffie-Hellman, DH) -- криптографический протокол, позволяющий двум и более сторонам получить общий секретный ключ, используя незащищенный от прослушивания канал связи. Полученный ключ используется для шифрования дальнейшего обмена с помощью алгоритмов симметричного шифрования.
Схема открытого распределения ключей, предложенная Диффи и Хеллманом, произвела настоящую революцию в мире шифрования, так как снимала основную проблему классической криптографии -- проблему распределения ключей.
В чистом виде, алгоритм Диффи -- Хеллмана уязвим для модификации данных в канале связи, в том числе для атаки "Человек посередине", поэтому схемы с его использованием применяют дополнительные методы односторонней или двусторонней аутентификации.
Предположим, существует два абонента: Алиса и Боб. Обоим абонентам известны некоторые два числа g и p, которые не являются секретными и могут быть известны также другим заинтересованным лицам. Для того, чтобы создать неизвестный более никому секретный ключ, оба абонента генерируют большие случайные числа: Алиса -- число a, Боб-- число b. Затем Алиса вычисляет значение[5] (1):
(1)
и пересылает его Бобу, а Боб вычисляет (2):
(2)
и передаёт Алисе. Предполагается, что злоумышленник может получить оба этих значения, но не модифицировать их (то есть у него нет возможности вмешаться в процесс передачи).
На втором этапе Алиса на основе имеющегося у нее a и полученного по сети B вычисляет значение (3):
(3)
Боб на основе имеющегося у него b и полученного по сети A вычисляет значение (4):
(4)
Как нетрудно видеть, у Алисы и Боба получилось одно и то же число (5):
(5)
Его они и могут использовать в качестве секретного ключа, поскольку здесь злоумышленник встретится с практически неразрешимой (за разумное время) проблемой вычисления (3) или (4) по перехваченным и , если числа p, a, b выбраны достаточно большими. Наглядная работа алгоритма показана на рисунке[6].
При работе алгоритма каждая сторона:
1. генерирует случайное натуральное число a -- закрытый ключ
2. совместно с удалённой стороной устанавливает открытые параметры p и g (обычно значения p и g генерируются на одной стороне и передаются другой), где p является случайным простым числом (p-1)/2 также должно быть случайным простым числом (для повышения безопасности)[7] g является первообразным корнем по модулю p
3. вычисляет открытый ключ A, используя преобразование над закрытым ключом
A = ga mod p
4. обменивается открытыми ключами с удалённой стороной
5. вычисляет общий секретный ключ K, используя открытый ключ удаленной стороны B и свой закрытый ключ a
K = Ba mod p
К получается равным с обеих сторон, потому что:
Ba mod p = (gb mod p)a mod p = gab mod p = (ga mod p)b mod p = Ab mod p
В практических реализациях для a и b используются числа порядка 10100 и p порядка 10300. Число g не обязано быть большим и обычно имеет значение в пределах первого десятка.
Размещено на Allbest.ru
Подобные документы
Выбор шифров перестановки для проведения анализа. Анализ алгоритма двух различных шифров, построение блок-схемы алгоритма и программы, разработка общего интерфейса. Сравнение шифров перестановки по результатам шифрования и криптоанализа текстов.
курсовая работа [2,8 M], добавлен 14.01.2014Основные инструменты и приемы для аутентификации клиента и шифрования информации. Шифрование и дешифрование методом одиночной и двойной перестановки, методом Кордано и Гронсфельда. Маловероятные сочетания букв и истинная последовательность столбцов.
курсовая работа [50,3 K], добавлен 23.12.2010Понятие и цель применения текстовых данных. Принцип кодирования азбуки Морзе. Основные методы языка высокого уровня C#. Алгоритм работы, листинг, тестирование программы для перевода текста в последовательность кодов азбуки Морзе. Руководство пользователя.
курсовая работа [1,4 M], добавлен 15.01.2013Изучение, освоение на примере симметричных шифров элементы практической криптографии. Использование расширенного алгоритма Евклида для нахождения обратного по модулю числа. Ознакомление с демо-версией программы симметричного шифрования с секретным ключом.
лабораторная работа [97,5 K], добавлен 18.04.2015Основные методы криптографической защиты информации. Система шифрования Цезаря числовым ключом. Алгоритмы двойных перестановок и магические квадраты. Схема шифрования Эль Гамаля. Метод одиночной перестановки по ключу. Криптосистема шифрования данных RSA.
лабораторная работа [24,3 K], добавлен 20.02.2014Криптографические методы обеспечения конфиденциальности, невозможности прочтения информации посторонним. Современные методы шифрования информации как обратимого преобразования открытого текста в шифрованный на основе секретного алгоритма или ключа.
презентация [514,3 K], добавлен 06.02.2016Процесс шифрования. Процесс расшифрования. Функция шифрования. Функция расширения Е". Функции преобразования S(i). Функция перестановки P. Функция перестановки и выбора последовательности B.
реферат [89,5 K], добавлен 12.06.2007История появления и развития шифрования текста. Проблема шифрования и дешифрования текстовых сообщений в современности. Создание программы для зашифровки и расшифровки вводимого текста пятью методами: Атбаш, Цезаря, Полибия, Гронсфельда и Винжера.
курсовая работа [923,6 K], добавлен 26.12.2011Криптография — наука о методах обеспечения конфиденциальности и аутентичности информации. Реализация криптографии на примере трех программных продуктов: PGP, Tor, I2P. Понятие криптографических примитивов и протоколов, симметричных и асимметричных шифров.
учебное пособие [180,4 K], добавлен 17.06.2011Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.
курсовая работа [101,1 K], добавлен 09.03.2009