В статье автор доказывает возможность защиты информации с помощью криптографии. Он осуществляет шифрование открытого сообщения двумя разными алгоритмами, используя шифровальные устройства. Один алгоритм — известный, другой алгоритм — самостоятельно разработанный.
Ключевые слова: криптография, шифрование.
Моя работа посвящена защите информации. Это очень актуально в наше время, было актуально в прошлом и будет актуально всегда. «Кто владеет информацией, тот владеет и миром» — это известное высказывание Натана Ротшильда очень точно описывает важность информации и ее место в развитии человечества.
Успех предпринимателей, надежная работа банков, политическая деятельность, развитие науки, исходы военных конфликтов, электронные услуги — всё это и многое другое зависит от безопасной передачи информации. Ведь крайне важно, чтобы информация доходила от отправителя к получателю таким образом, чтобы никто посторонний не мог её заполучить и использовать с плохими намерениями. Но в то же время важно, чтобы информацию смог получить в целостности и понять адресат. Этим и занимается криптография.
Проблема
– информация может быть похищена и использована злоумышленниками
Гипотеза
– информацию можно защитить
Цель проекта
– доказать, что с помощью криптографии можно защитить информацию
Задачи проекта:
– изучить алгоритмы шифрования прошлого;
– произвести шифрование открытого текста известным алгоритмом шифрования с помощью шифровального инструмента;
– самостоятельно разработать алгоритм шифрования и собрать макет шифровального устройства для данного алгоритма;
– произвести шифрование открытого текста по разработанному алгоритму с помощью собранного устройства;
– проанализировать полученные результаты и сделать выводы о возможности защиты информации с помощью криптографии.
Понятия и принципы
Дословно термин «криптография» означает «тайнопись». Смысл этого термина выражает основное предназначение криптографии — защитить и сохранить в тайне необходимую информацию [4]. Криптография не «прячет» передаваемое сообщение, а преобразует его в форму, недоступную для понимания постороннего. Процесс такого обратимого преобразования открытой информации, при котором доступ к ней может быть только у определенных лиц — получателей информации — называется «шифрованием». Зашифрованная информация называется «шифрограмма, шифротекст». Процесс преобразования шифрограммы в открытый текст называется «расшифровка».
Таким образом процесс криптографической защиты (рис.1) состоит из:
– шифрования исходного сообщения с использованием ключа, то есть получение шифрограммы;
– расшифровка полученной шифрограммы с использованием ключа.
Рис. 1. Структура криптографической защиты. [6]
Ключ шифрования передается адресату или одновременно с самим сообщением или заранее. Также заранее адресату передается информация о выбранном шифре, то есть об алгоритме преобразования исходного сообщения.
Важно четко понимать значения понятий «шифр» и «ключ шифрования». Простым языком их можно выразить следующим образом:
Шифр — это какой-либо алгоритм преобразования исходного сообщения в шифрованное, то есть определенная последовательность действий для всех символов или слов.
Ключ шифрования — это изменяемый параметр в алгоритме, который позволяет получить разные результаты без изменения самого алгоритма, он является важным элементом защиты, обеспечивающем дополнительную стойкость шифра к взлому.
Быстрый взлом шифра возможен только при условии, что известен и сам алгоритм, и ключ шифрования. Например, в шифре Цезаря, который появился в период около 100 лет до н. э., алгоритмом является сдвиг алфавита на определенную величину. [1] А вот эта самая величина сдвига и есть ключ шифрования — в данном случае 3. (рис.2)
Рис. 2. Алгоритм шифра Цезаря. [7]
Взлом шифра — успешная попытка раскрытия шифрованного сообщения без знания алгоритма и ключа.
Шифрование, в котором используется один ключ для шифрования и расшифровки, называются симметричным, а сам ключ называется общим.
В асимметричном шифровании данные шифруются одним ключом, а расшифровываются другим. Первый ключ можно держать у всех на виду, а вот второй нужно прятать.
Ассиметричное шифрование более сложное и обычно осуществляется с применением компьютеров. В данной работе будет рассмотрено только симметричное шифрование.
История шифрования
Шифр Цезаря не был первым шифром в истории. История шифрования берет свое начало намного раньше. Нам известен папирус с измененными иероглифами времен фараона Аменемхета II (рис. 3), а это примерно 4000 тыс лет до н. э. В Древней Спарте использовалась скитала (рис.4). Также мы знаем о диске Энея (рис.5). А кардинал Ришелье использовал для шифрования решетку Кардано (рис.6). Пустые поля текста заполнялись другим текстом для маскировки сообщений под обычные послания — таким образом, применение решётки является одной из форм стеганографии. [2]
Рис. 3. Древнеегипетский папирус с измененными иероглифами [8]
Рис. 4. Скитала [9]
Рис. 5. Диск Энея [10]
Рис. 6. Решетка Кардана [11]
Промышленная революция не обошла вниманием и криптографию. Около 1790 года один из отцов — основателей США Томас Джефферсон создал дисковый шифр, прозванный позже цилиндром Джефферсона (рис.7). Этот прибор, основанный на роторной системе, позволил автоматизировать процесс шифрования и стал первым криптоустройством Нового времени. [3]
Рис. 7. Цилиндр Джефферсона. [12]
Говоря о шифровальных машинах, нельзя не упомянуть об Энигме (рис.8).
Рис. 8. Шифровальная машина «Энигма». [13]
Взлом шифра этой немецкой шифровальной машины способствовал победе над фашистской Германией.
Исследование: шифрование и дешифровка открытого сообщения.
Чтобы проверить, сможет ли криптографическая защита сделать открытую информацию недоступной для посторонних, я буду шифровать исходное сообщение «Знания — сила», используя один известный шифр и один, разработанный мной самостоятельно. Из этого исходного сообщения мы уберём пробелы и знаки препинания. Регистр букв не имеет значения при шифровании. Таким образом, исходным сообщением во всех шифрах будет «ЗНАНИЯСИЛА».
Шифры, которые мы будем использовать, следующие:
– шифр Виженера
– шифр упорядоченного смешения
После шифрования я проверю полученные шифрограммы на стойкость к взлому и сделаю вывод о надежности криптографической защиты информации.
Шифр Виженера
Зашифруем исходное сообщение «Знания — сила» с использованием ключевого слова «лицей» с помощью шифра Виженера.
Впервые этот метод описал Джовани Баттиста Белласо (итал. Giovan Battista Bellaso) в книге в 1553 году, однако в XIX веке шифр получил имя Блеза Виженера, французского дипломата. Несмотря на то, что метод прост для понимания и реализации, он является недоступным для простых методов криптоанализа, то есть является трудным для расшифровки. На протяжении трех столетий он противостоял всем попыткам его взломать, чем и заработал имя «неразгаданный шифр». [5]
Для шифрования и расшифровки используется таблица Виженера, известная также под названием tabula recta (лат.). (Приложение 1). Для работы с таблицей Виженера сначала необходимо преобразовать ключ. Для этого записываем ключ циклически до тех пор, пока его длина не будет соответствовать длине исходного текста, при этом ключ не обязательно должен быть записано полностью. Таким образом получаем преобразованный ключ «ЛИЦЕЙЛИЦЕЙ». Каждому символу исходного сообщения соответствует символ преобразованного ключа с тем же порядковым номером.
Порядок шифрования следующий:
-
Используя таблицу Виженера определяем символы зашифрованного сообщения. Для этого:
- Ищем в таблице Виженера строку, соответствующую символу преобразованного ключа.
- Ищем столбец, соответствующий символу исходного сообщения с тем же порядковым номером.
- Символ, находящийся на пересечении этих строки и столбца, является зашифрованным символом.
- Осуществляем такие замены для каждого символа исходного сообщения. В результате получается шифрованное сообщение, равное по длине и исходному сообщению и преобразованному ключу.
Пример:
Ищем в таблице Виженера строку, соответствующую первой букве преобразованного ключа («Л») и столбец, соответствующий первой букве исходного сообщения («З»). На пересечении этих строки и столбца находится символ «У». Это первый символ зашифрованного сообщения.
Ищем строку для символа «И» и столбец для символа «Н». На пересечении находится второй зашифрованный символ — «Ц».
Таким образом получается вот такое шифрованное сообщение:
Расшифровка производится следующим образом:
- Составляется преобразованный ключ тем же способом, как и при шифровании — путем циклической записи ключа под шифрованным сообщением.
-
Определяются символы исходного сообщения:
- В таблице Виженера находится строка, соответствующая символу преобразованного ключа;
- В данной строке находится символ зашифрованного текста с тем же порядковым номером.
- Столбец, в котором находится данный символ, соответствует соответствующему символу исходного сообщения.
- Такие замены производятся для каждого символа шифрованного сообщения.
Алгоритм шифра Виженера можно эффективно реализовать с помощью простого в использовании и изготовлении механического шифровального инструмента, который называется линейка Сен-Сира. [3] Образец данного устройства мы изготовили специально для моего исследования. (рис.9)
Рис. 9. Линейка Сен-Сира
Одну часть линейки — короткую, с нанесенным на ней алфавитом, называют неподвижной шкалой. Вторую часть линейки, представляющую из себя перемещающуюся длинную полосу с нанесенными на ней двумя алфавитами друг за другом — называют подвижной шкалой.
При работе с линейкой символы неподвижной шкалы не должны выходить за границы символов подвижной шкалы.
Для начала работы с линейкой необходимо получить преобразованный ключ, как мы это уже делали ранее:
Порядок шифрования следующий (рис.10):
- Длинной частью линейки выставляется символ ключа напротив символа А короткой части.
- Ищем зашифрованный символ, он тоже находится тоже на длинной части. Он расположен под исходным символом на короткой части.
- Проделываем данную замену для каждого символа исходного сообщения. В шаге 1 нужный символ преобразованного ключа всегда располагается напротив символа А неподвижной шкалы. В результате получается шифрованное сообщение, равное по длине и исходному сообщению и преобразованному ключу.
Рис. 10. Порядок шифрования линейкой Сен-Сира.
В результате также получаем шифрограмму:
Порядок расшифровки следующий:
- Длинной частью линейки выставляется символ ключа напротив символа А короткой части.
- Ищем на длинной части символ шифрограммы. Над ним, на короткой части, расположен символ исходного сообщения.
- Проделываем данную замену для каждого символа шифрограммы.
Шифр упорядоченного смешения
Я придумал этот шифр, изучив много других шифров и принципы их действия. Он основывается на перемешивании между собой строк и столбцов с исходным текстом в определенном порядке, определяемым ключом, а именно, упорядочивании по алфавиту символов слов ключа, которые являются заголовками строк и столбцов таблицы с вписанным в неё зашифрованным текстом. Алгоритм моего шифра следующий:
- Исходное сообщение дополняется некоторым количеством дополнительных символов в алфавитном порядке, так чтобы получившуюся фразу можно было полностью вписать в таблицу. Дополнительные символы нужны для увеличения сложности шифра. Вписывать надо по строкам .
В моем случае я добавил 10 символов алфавита к исходному сообщению ЗНАНИЯСИЛА и получил следующую таблицу (рис.11):
Рис. 11. Исходное сообщение, дополненное символами алфавита
- Устанавливается ключ шифрования. Ключ состоит из двух слов, длина каждого слова соответствует размеру таблицы. Первое слово — высота таблицы, т. е. количество строк; второе слово — ширина таблицы, т. е. количество столбцов. Важно, чтобы в каждом из слов не повторялись буквы . После этого ключи добавляются к таблице слева вертикально и сверху горизонтально, образую заголовки строк и столбцов. В моем случае я выбрал ключ .
Получается следующая таблица (рис.12):
Рис. 12. Исходное сообщение, дополненное ключом
- Переставляем строки таблицы вместе с заголовками таким образом, чтобы символы первого слова ключа выстроились по алфавиту (рис.13):
Рис. 13. Упорядочивание строк по алфавиту
- Переставляем столбцы таблицы вместе с заголовками таким образом, чтобы символы второго слова ключа выстроились по алфавиту(рис.14):
Рис. 14. Упорядочивание столбцов по алфавиту
Из получившейся таблицы выписываем символы по столбцам , не включая заголовки (измененные ключи). Эти символы и будут шифрограммой. В моем случае это ВИЁЗЛГЯЖНАЕИИНБДСЗАА.
Получатель, зная шифрограмму и ключ, может приступить к расшифровке. Делается это в следующем порядке:
- Зная ключ , получатель строит таблицу размером 5 строк х 4 столбца.
- В таблицу по столбцам вписывается шифрограмма ВИЁЗЛГЯЖНАЕИИНБДСЗАА.
- К таблице добавляются слева вертикально и сверху горизонтально заголовки, представляющие из себя слова ключа в алфавитном порядке — .
- Столбцы таблицы вместе с заголовками меняются таким образом, чтобы символы второго слова ключа выстроились из алфавитного порядка в слово.
- Строки таблицы вместе с заголовками меняются таким образом, чтобы символы первого слова ключа выстроились из алфавитного порядка в слово.
- Из получившейся таблицы выписываются символы по строкам , не включая ключи.
- Символы, представляющие себя алфавит по порядку, отбрасываются.
Оставшиеся символы являются исходным сообщением — ЗНАНИЯСИЛА.
При разработке моего алгоритма целью было не только осуществление шифрования, но и возможность реализации алгоритма на несложном шифровальном устройстве. Устройство должно иметь следующие возможности:
– составление таблицы с произвольным набором символов (возможность замены букв);
– свободное перемещение столбцов и строк этой таблицы.
Я придумал такое устройство, которое удовлетворяет данным требованиям, а папа помог мне его изготовить. (рис.15–17).
Рис. 15. Изготовление кубиков
Рис. 16. Нанесение символов на сменные стикеры
Рис. 17. Мое шифровальное устройство
Оно состоит из кубиков, в каждом из которых проделаны сквозные перпендикулярные отверстия, короба для них и длинных палочек. Если кубики сложить в виде таблицы в короб, то, благодаря отверстиям, возможно палочками перемещать как строки таблицы, так и столбцы. Клеящееся сменные стикеры с нарисованными буквами позволяют использовать данное приспособление для разных фраз и ключей. Шифрование длинных сообщений требует увеличения самой таблицы или изготовление других таких же наборов.
Результат шифрования
Используя два разных алгоритма шифрования, я получил следующие варианты зашифрованного исходного сообщения: «Знания — сила»:
– УЦЦТТКЬЯРЙ
– ВИЁЗЛГЯЖНАЕИИНБДСЗАА
После получения шифрограмм я решил проверить их на стойкость к взлому — я попросил нескольких людей разгадать две эти шифрограммы, не раскрывая им алгоритм и ключи шифрования. За несколько дней, которые я отвел на испытание, шифры не были разгаданы. Более того, расшифровка не удалась даже после того, как я раскрыл ключи. Получение двух шифрограмм двумя способами не заняло у меня много времени, а вот их расшифровка без знания алгоритма, с помощью которого они получены, а также без знания ключей шифрования, представляет из себя трудоемкий процесс и может занять длительное время.
Заключение
Проведя исследование, я получил следующие результаты:
– я понял, как строится криптографическая защита;
– я разработал шифр и собрал шифровальное устройство, реализующее алгоритм данного шифра;
– я самостоятельно зашифровал исходное сообщение с использованием двух разных шифров с помощью шифровальных устройств.
А после испытание шифрограмм на устойчивость к взлому я сделал вывод от том, что криптография позволяет защитить информации.
Развитие компьютерных технологий революционно изменило принципы построения криптосистем. Криптография ушла далеко вперед от примитивных шифров к сложным алгоритмам шифрования, но будет развиваться и дальше, становясь все более совершенным инструментом на страже информации.
Приложение 1
Литература:
- Роман Душкин: Математика и криптография. Тайны шифров и логическое мышление. 2017г., Издательство АСТ, г. Москва, 190 стр.
- Ирина Русецкая: История криптографии в Западной Европе в раннее Новое время. 2014г, Центр гуманитарных инициатив, Университетская книга — СПб, 144 стр.
- Шифры из прошлого: тайнопись и загадки докомпьютерной эпохи [Электронный ресурс]: 3D News. — Режим доступа: https://3dnews.ru/916293/shifri-iz-proshlogo-taynopis-i-zagadki-dokompyuternoy-epohi (дата обращения: 12.12.2021)
- Криптография и защищённая связь: история первых шифров [Электронный ресурс]: Хабр. — Режим доступа: https://habr.com/ru/post/321338/ (дата обращения: 12.12.2021)
- Шифр Виженера [Электронный ресурс]: Википедия. — Режим доступа: https://ru.wikipedia.org/wiki/ %D0 %A8 %D0 %B8 %D1 %84 %D1 %80_ %D0 %92 %D0 %B8 %D0 %B6 %D0 %B5 %D0 %BD %D0 %B5 %D1 %80 %D0 %B0 (дата обращения: 12.12.2021).
- Структура криптографической защиты https://cdn.otus.ru/media/public/f6/7d/symmetric_encryption_graphic_ru-20219-f67d82.png
- Шифр Цезаря https://ru.wikipedia.org/wiki/ %D0 %A8 %D0 %B8 %D1 %84 %D1 %80_ %D0 %A6 %D0 %B5 %D0 %B7 %D0 %B0 %D1 %80 %D1 %8F#/media/ %D0 %A4 %D0 %B0 %D0 %B9 %D0 %BB:Caesar3.svg
- Древнеегипетский папирус с измененными иероглифами https://rostec.ru/upload/medialibrary/018/0187e7c1d1c5fa5f548a9bf432eea4a0.jpg
- Скитала https://3dnews.ru/assets/external/illustrations/2015/06/27/916293/2.png
- Диск Энея https://avatars.mds.yandex.net/get-zen_doc/4395091/pub_60d1e1225fc3481f3f417d9a_60d1ebe6d4596758d59a3b09/scale_1200
- Решетка Кардано https://3dnews.ru/assets/external/illustrations/2015/06/27/916293/13.png
- Цилиндр Джефферсона. https://spy-museum.s3.amazonaws.com/files/callouts/classic-lrg-jefferson-cipher-3.jpg
- Энигма http://vichivisam.ru/wp-content/uploads/2019/02/d96c00eab0f265cdfe882f8edb07f183–1068x712.jpg