лаб 15. Лаб раб 15. Лабораторные работы
Скачать 0.6 Mb.
|
Лабораторные работыЛабораторная работа №1 Программная реализация шифров простой замены. Классическая техника шифрования. Применение подстановокПри подстановке отдельные буквы открытого текста заменяются другими буквами или числами, либо какими-то иными символами. Если открытый текст рассматривается как последовательность битов, то постановка сводится к замене заданных последовательностей битов открытого текста заданными последовательностями битов шифрованного текста. Шифр ЦезаряСамым древним и самым простым из известных подстановочных шифров является шифр, использовавшийся Юлием Цезарем. В шифре цезаря каждая буква алфавита заменяется буквой, которая находится на три позиции дальше в этом же алфавите. При этом алфавит считается «циклическим», т.е. за буквой Я следует буква А. Например, для алфавита А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я шифрование происходит следующим образом: Открытый текст: К Р И П Т О Г Р А Ф И Я Шифрованный текст: Н У Л Т Х С Ж У Г Ч Л В Определить преобразование можно, перечислив все варианты, как показано ниже. Открытый текст: А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я Шифрованный Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В текст: Если каждой букве назначить числовой эквивалент (А = 1, Б = 2 и т.д.), то алгоритм шифрования можно выразить следующими формулами. Каждая буква открытого текста P заменяется буквой шифрованного текста C: C = E(P) = (P+3) mod (26). В общем случае сдвиг может быть любым, поэтому общий алгоритм Цезаря записывается формулой C = E(P) = (P+k) mod (26), где k принимает значения в диапазоне от 1 до 31 (для рассмотренного алфавита). Алгоритм дешифрования также прост: P = D(C) = (C-k) mod (26). Если известно, что определенный текст был зашифрован с помощью шифра Цезаря, то с помощью простого перебора всех вариантов раскрыть шифр очень просто – для этого достаточно проверить 31 возможный вариант ключа. Применение метода последовательного перебора всех возможных вариантов оправдано следующими тремя важными характеристиками данного шифра. Известны алгоритмы шифрования и дешифрования. Необходимо перебрать всего 31 вариант. Язык открытого текста известен и легко узнаваем. В большинстве случаев, когда речь идет о защите компьютерной информации, можно предполагать, что алгоритм известен. Единственное, что делает криптоанализ на основе метода последовательного перебора практически бесполезным – это применение алгоритма, для которого требуется перебрать слишком много ключей. |