Шифр Цезаря или как просто зашифровать текст
Шифр Цезаря
1. Введение
С быстрым развитием обмена цифровыми данными в электронном виде, информационная безопасность приобретает все большее значение при хранении и передаче данных. Поэтому для обмена данными необходимо обеспечить их шифрование. Шифрование — это процесс кодирования сообщения таким образом, чтобы его мог прочитать только предполагаемый получатель. Шифр Цезаря — моноалфавитный шифр. Это тип шифра подстановочного типа, где каждая буква в открытом тексте заменяется на другую букву, смещенную на некоторое фиксированное количество позиций в алфавите. Шифрование представлено с использованием модульной арифметики.
С развитием интернет-технологий возникает множество проблем с безопасностью. Безопасность — это большая проблема, и защита конфиденциальных данных очень важна, чтобы данные не могли быть изменены или использованы в незаконных целях. Например, в Интернет-банкинге, в системе электронного бронирования, в СМИ, безопасность данных является очень важным вопросом. В большинстве случаев провайдер должен обеспечить безопасность своей инфраструктуры и защиту личных данных и приложений своего клиента, в то время как клиент должен убедиться, что облачный провайдер принял надлежащие меры безопасности для защиты своей информации. Чтобы избежать такой ситуации необходимо преобразовать данные в нечитаемую форму на стороне отправителя, а затем снова преобразовать эти данные в читаемую форму на стороне получателя. Таким образом, проблема сохранения данных в конфиденциальности является актуальной, как для больших компаний, так и для каждого человека. Техника и наука создания нечитаемых данных или шифров, таких что только уполномоченное лицо сможет прочитать данные, называется криптографией.
2. Криптография
Криптография — это наука защиты информации от нежелательных лиц путем преобразования ее в форму, не распознаваемую злоумышленниками при хранении и передаче. Криптология не нова, она существует более 2000 лет. Слово криптология происходит от двух греческих слов: kryptos, что означает «скрытый или секретный» и graphein что означает писать. Криптология — наука позволяющая делать общение непонятным для всех, кроме предполагаемых получателей. На языке криптографии сообщение, которое человек намеревается отправить, называется открытым текстом, в то время как фактически отправленное сообщение называется зашифрованным текстом. Существует две основные категории криптографии (асимметричные и симметричные методы шифрования) в зависимости от типа ключей безопасности, используемых для зашифровывания /расшифровывания данных.
Рис. 2 Схема шифрования и дешифрования
3. Симметричное шифрование
Когда один и тот же ключ используется для шифрования и дешифрования сообщения, это называется криптографией с симметричным ключом. Это также известно как криптография с закрытым ключом; пользователи могут обновлять ключи и использовать их для получения дополнительных ключей. Это гораздо более эффективный и быстрый подход по сравнению с криптографией с асимметричным ключом. В криптографии с симметричным ключом, ключ был сгенерирован алгоритмом шифрования и затем отправлен в секцию получателя, где и происходит дешифрование. В этом методе есть несколько проблем:
Ключ должен быть передан по защищенному каналу от отправителя к получателю. Дело в том, что если защищенный канал уже существует, то данные передаются по тому же каналу, тогда зачем в таком случае шифрование.
Защищенного канала практически не существует, поэтому ключ должен быть передан вместе с данными, что увеличивает накладные расходы и снижает эффективную полосу пропускания.
В-третьих, шум канала наносит вред ключу и данным во время передачи.
Рис. 3 Симметричное шифрование
4. Асимметричное шифрование
Это также называется криптографией с открытым ключом. Он использует два ключа: открытый ключ, который известен широкой публике, используемый для шифрования, и закрытый ключ, который известен только пользователю этого ключа, используемый для дешифрования. Открытый и закрытый ключи связаны друг с другом математическими вычислениями. Другими словами, данные, зашифрованные одним открытым ключом, могут быть расшифрованы только соответствующим закрытым ключом. Эта возможность решает проблему симметричного шифрования управления секретными ключами. Но с другой стороны, эта уникальная особенность шифрования с открытым ключом делает его математически более уязвимым для атак. Более того, методы асимметричного шифрования почти в 1000 раз медленнее, чем методы симметричного шифрования, поскольку они требуют большей вычислительной мощности.
Есть два метода преобразования данных в нечитаемую форму:
1. Метод перестановки
2. Метод замены
Процедура шифрования и дешифрования, показана ниже на рисунке 5:
Рис. 4 Шифрование и дешифрование с открытым ключом
Шифр Цезаря является примером метода подстановки. Дальнейшее усовершенствование оригинального сдвига символа на три позиции в шифре Цезаря состоит в использовании арифметики по модулю двадцать шесть для ключа шифрования, который больше двадцати шести.
? n (?) = (? + ?) ??? 26,
где x — значение открытого текста, n — номер сдвига.
Большим существенным недостатком этого шифра является простота его алгоритмов шифрования и дешифрования. Система может быть расшифрована без знания ключа шифрования. Его легко взломать, изменив порядок шифрования и просто изменив порядок алфавита.
? n (?) = (? − ?) ??? 26
Если известно, что данный зашифрованный текст является шифром Цезаря, то криптоанализ методом грубой силы выполняется легко: попробуем все 25 ключей. У шифра Цезаря есть некоторые слабые места, которые позволяют нам использовать атаку методом грубой силы.
1. Алгоритм шифрования и дешифрования известен.
2. Всего 25 ключей.
3. Язык открытого текста известен и легко узнаваем.
Еще одна проблема безопасности заключается в том, что если одна буква уже известна, то смещение можно определить и расшифровать все сообщение. Лучшим подходом было бы использование статистических данных о частотности английских букв.
Рассмотрим более подробно «Частотный анализ» (один из методов в криптоанализе). Частотный анализ предполагает, что частота появления заданной буквы алфавита в достаточно длинных текстах одна и та же для разных текстов одного языка. В моноалфавитном шифровании, если в шифротексте будет символ с аналогичной вероятностью появления, то можно предположить, что он и является указанной зашифрованной буквой.
Метод частотного криптоанализа наиболее известен при дешифровке египетских иероглифов Ж.-Ф. Шампольоном в 1822 году.
Начиная с середины XX века большинство используемых алгоритмов шифрования разрабатываются устойчивыми к частотному криптоанализу, поэтому он применяется в основном в процессе обучения будущих криптографов.
Рис. 6 Классификация методов шифрования
Вывод
Шифр Цезаря — это простейший тип шифра, который используется чаще всего. Метод перестановки чаще всего сочетается с другими техниками. Шифрование как методом замены, так и методом перестановки легко выполняется с помощью компьютеров. Комбинация этих двух классических методов обеспечивает более безопасный и надежный шифр.
Окончательный зашифрованный текст настолько силен, что его очень сложно взломать. Вышеописанный второй метод (алгоритм) представляет собой комбинацию методов перестановки и замены, которая обеспечивает гораздо более безопасный шифр.