|
Оглавление1. Понятие информационной безопасности 2. Основные классификации угроз информационной безопасности 3. Программы с потенциально опасными последствиями 5. Элементарные методы цифрового шифрования 6. Симметричные системы защиты информации 7. Криптография с открытым ключом. 8. Аутентификация 9. Методы криптоанализа классических шифров Методические указания к лабораторным работам Контрольно-измерительные материалы Методические рекомендации по разработке курсовых работ Для бесплатного чтения доступна только часть главы! Для чтения полной версии необходимо приобрести книгу5. ЭЛЕМЕНТАРНЫЕ МЕТОДЫ ЦИФРОВОГО ШИФРОВАНИЯСреди всего спектра методов защиты данных от нежелательного доступа особое место занимают криптографические алгоритмы. В отличие от других методов, они опираются лишь на свойства самой информации и не используют свойства ее материальных носителей, особенности узлов ее обработки, передачи и хранения. Образно говоря, криптографические методы строят барьер между защищаемой информацией и реальным или потенциальным злоумышленником из самой информации. Криптографические методы защиты информации в автоматизированных системах могут применяться как для защиты информации, обрабатываемой в ЭВМ или хранящейся в различного типа ЗУ, так и для закрытия информации, передаваемой между различными элементами системы по линиям связи. Криптографическое преобразование как метод предупреждения несанкционированного доступа к информации имеет многовековую историю. В настоящее время разработано большое количество различных методов шифрования, созданы теоретические и практические основы их применения. Подавляющее число этих методов может быть успешно использовано и для закрытия информации. Основные направления использования криптографических алгоритмов – передача конфиденциальной информации по каналам связи (например, электронная почта), установление подлинности передаваемых сообщений, хранение информации (документов, баз данных) на носителях в зашифрованном виде. Проблема использования криптографических методов в информационных системах (ИС) стала в настоящий момент особо актуальна. С одной стороны, расширилось использование компьютерных сетей, в частности глобальной сети Интернет, по которым передаются большие объемы информации государственного, военного, коммерческого и частного характера, не допускающего возможность доступа к ней посторонних лиц. С другой стороны, появление новых мощных компьютеров, технологий сетевых и нейронных вычислений сделало возможным дискредитацию криптографических систем еще недавно считавшихся практически не раскрываемыми. 5.1. Применение подстановокПри подстановке отдельные буквы открытого текста заменяются другими буквами или числами либо какими-то иными символами. Если открытый текст рассматривается как последовательность битов, то подстановка сводится к замене заданных последовательностей битов открытого текста заданными последовательностями битов шифрованного текста. 5.1.1. Шифр ЦезаряСамым древним и самым простым из известных подстановочных шифров является шифр, использовавшийся Юлием Цезарем. В шифре Цезаря каждая буква алфавита заменяется буквой, которая находится на три позиции дальше в этом же алфавите. Проще всего увидеть это на примере. Открытый текст: meet me after the toga party Шифрованный текст: PHHW PH DIWHU WKH WRJD SDUMB Обратите внимание на то, что алфавит считается “циклическим”, поэтому после Z идет А. Определить преобразование можно, перечислив все варианты, как показано ниже. Открытый текст: abcdefghijklmnopqrstuvwxyz Шифрованный текст: DEFGHIJKLMNOPQRSTUVWXYZABC Если каждой букве назначить числовой эквивалент (а = 1, b = 2 и т.д.), то алгоритм можно выразить следующими формулами. Каждая буква открытого текста р заменяется буквой шифрованного текста С: С = Е(р) = (р + 3)mod(26). В общем случае сдвиг может быть любым, поэтому обобщенный алгоритм Цезаря записывается формулой С = Е(р) = (р + k)mod(26), где k принимает значения в диапазоне от 1 до 25. Алгоритм дешифрования также прост: р = D(С) = (С - k)mоd(26). Если известно, что определенный текст был шифрован с помощью шифра Цезаря, то с помощью простого перебора всех вариантов раскрыть шифр очень просто – для этого достаточно проверить 25 возможных вариантов ключей. На рис. 5.1 показаны результаты применения этой стратегии к указанному выше сообщению. В данном случае открытый текст распознается в третьей строке. Рис. 5.1. Криптоанализ шифра Цезаря методом перебора всех вариантов ключей Применение метода последовательного перебора всех возможных вариантов оправдано следующими тремя важными характеристиками данного шифра. 1. Известны алгоритмы шифрования и дешифрования. 2. Необходимо перебрать всего 25 вариантов. 3. Язык открытого текста известен и легко узнаваем. В большинстве случаев, когда речь идет о защите сетей, можно предполагать, что алгоритм известен. Единственное, что делает криптоанализ на основе метода последовательного перебора практически бесполезным – это применение алгоритма, для которого требуется перебрать слишком много ключей. Например, алгоритм DES, использующий 56-битовые ключи, требует при последовательном переборе рассмотреть пространство из 256, или более чем 7х1016 ключей. Третья характеристика также важна. Если язык, на котором написан открытый текст, неизвестен, то расшифрованный текст можно не распознать. Более того, исходный текст может состоять из сокращений или быть каким-либо образом сжат – это также затрудняет распознавание. 5.2. Моноалфавитные шифрыПри наличии всего 25 возможных вариантов ключей шифр Цезаря далек от того, чтобы считаться надежно защищенным. Существенного расширения пространства ключей можно добиться, разрешив использование произвольных подстановок. Давайте еще раз вспомним шифр Цезаря. Открытый текст: abcdefghijklmnopqrstuvwxyz Шифрованный текст: DEFGHI JKLMNOPQRSTUVWXYZABC Если в строке “Шифрованный текст” допустить использование любой из перестановок 26 символов алфавита, то мы получим 26!, или более чем 4х1026 возможных ключей. Это на 10 порядков больше, чем размер пространства ключей DES, и это кажется достаточным для того, чтобы сделать невозможным успешное применение криптоанализа на основе метода последовательного перебора. Однако для криптоаналитика существует и другая линия атаки. Если криптоаналитик имеет представление о природе открытого текста (например, о том, что это несжатый текст на английском языке), можно использовать известную информацию о характерных признаках, присущих текстам на соответствующем языке. Чтобы показать, как этот подход применяется на практике, рассмотрим небольшой пример. Допустим, нам требуется расшифровать следующий шифрованный текст: UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ На первом этапе можно определить относительную частоту появления в тексте различных букв и сравнить их со среднестатистическими данными для букв английского языка (рис. 5.2). Если сообщение достаточно длинное, этой методики уже может быть достаточно для распознавания текста, но в нашем случае, когда сообщение небольшое, точного соответствия ожидать не приходится. В нашем случае относительная частота вхождения букв в шифрованном тексте (в процентах) оказывается следующей: Сравнивая эти результаты с данными, показанными на рис. 5.2, можно заключить, что, скорее всего, буквы Р и Z шифрованного текста являются эквивалентами букв е и t открытого текста, хотя трудно сказать, какой именно букве – Р или Z – соответствует е, а какой – t. Буквы S, U, О, М и Н, обладающие относительно высокой частотой появления в тексте, скорее всего, соответствуют буквам из множества {г, n, i, о, а, s}. Буквы с низкой частотой появления (а именно А, В, G, Y, I, J), по-видимому, соответствуют буквам множества w, v, b, k, x, q, j, z}. Дальше можно пойти несколькими путями. Можно, например, принять какие-то предположения о соответствиях и на их основе попытаться восстановить открытый текст, чтобы увидеть, выглядит ли такой текст похожим на что-либо осмысленное. Более систематизированный подход заключается в продолжении поиска в тексте новых характерных закономерностей. Например, может быть известно, что в рассматриваемом тексте обязательно должны присутствовать некоторые слова. Или же можно искать повторяющиеся последовательности букв шифрованного текста и пытаться определить их эквиваленты в открытом тексте. Один из очень эффективных методов заключается в подсчете частоты использования комбинаций, состоящих из двух букв. Такие комбинации называют биграммами. Для значений относительной частоты появления в тексте биграмм тоже можно построить гистограмму, подобную показанной на рис. 5.2. Известно, что в английском языке самой распространенной является биграмма th. В нашем шифрованном тексте чаще всего (три раза) встречается комбинация ZW. Поэтому можно предположить, что Z соответствует t а W – h. Тогда из ранее сформулированной гипотезы вытекает, что Р соответствует е. Заметим, что в шифрованном тексте буквосочетание ZWP имеется, и теперь мы можем представить его как the. В английском языке the является самой распространенной триграммой (т.е. комбинацией из трех букв), поэтому можно надеяться, что мы движемся в правильном направлении. Рис. 5.2. Относительная частота появления букв в английском тексте Теперь обратите внимание на комбинацию ZWSZ в первой строке. Конечно, мы не можем сказать с полной уверенностью, что эти буквы принадлежат одному и тому же слову, но, если предположить, что это так, они соответствуют слову thSt. Отсюда заключаем, что букве S соответствует а. Внимание! Авторские права на книгу "Современные технологии информационной безопасности. Учебно-методический комплекс" ( Шаханова М.В. ) охраняются законодательством! |