Классический шифр
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( Ноябрь 2010 г. ) |
В криптографии классический шифр — это тип шифра , который использовался исторически, но по большей части вышел из употребления. В отличие от современных криптографических алгоритмов, большинство классических шифров практически можно вычислить и решить вручную. Однако их также обычно очень легко сломать с помощью современных технологий. Этот термин включает в себя простые системы, использовавшиеся со времен Греции и Рима, сложные шифры эпохи Возрождения, криптографию времен Второй мировой войны, такую как машина «Энигма» , и многое другое.
Напротив, современная сильная криптография опирается на новые алгоритмы и компьютеры, разработанные с 1970-х годов.
Виды классических шифров
[ редактировать ]Классические шифры часто делят на шифры перестановки и шифры замены , но существуют также шифры сокрытия .
Шифры замены
[ редактировать ]В шифре замены буквы или группы букв систематически заменяются по всему сообщению другими буквами, группами букв или символов.
Хорошо известным примером шифра замены является шифр Цезаря . Чтобы зашифровать сообщение с помощью шифра Цезаря, каждая буква сообщения заменяется буквой, расположенной на три позиции позже в алфавите. Следовательно, A заменяется на D, B на E, C на F и т. д. Наконец, X, Y и Z заменяются на A, B и C соответственно. Так, например, «ВИКИПЕДИЯ» шифруется как «ЗЛНЛШГЛД». Цезарь перевернул алфавит на три буквы, но подойдет любое число.
Другой метод шифра замены основан на ключевом слове. Из слова или фразы удаляются все пробелы и повторяющиеся буквы, которые затем используются кодировщиком в качестве начала шифралфавита. Конец шифралфавита — это остальная часть алфавита по порядку, без повторения букв в ключевом слове. Например, если ключевое слово CIPHER, шифралфавит будет выглядеть так:
обычный алфавит | abcdefghijklmnopqrstu vwxyz |
---|---|
шифрованный алфавит | cipherabdfgjklmnoqstu vwxyz |
Все предыдущие примеры представляли собой примеры одноалфавитных шифров замены, в которых используется только один шифралфавит. Также возможно иметь полиалфавитный шифр замены , в котором используется несколько шифралфавитов. Кодировщик должен составить два или более шифралфавита, используя любые методы по своему выбору, а затем закодировать сообщение, чередуя шифралфавит, используемый с каждой буквой или словом. Это значительно усложняет декодирование сообщения, поскольку взломщику кода придется распознавать оба шифралфавита.
Еще одним примером полиалфавитного шифра замены, который гораздо сложнее расшифровать, является квадрат Виженера , инновационный метод кодирования. В квадрате имеется 26 различных шифралфавитов, которые используются для шифрования текста. Каждый шифралфавит — это всего лишь еще один сдвиг Цезаря вправо исходного алфавита. Вот как выглядит квадрат Виженера:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
Чтобы использовать квадрат Виженера для шифрования сообщения, кодировщик сначала выбирает ключевое слово, а затем повторяет его до тех пор, пока оно не станет той же длины, что и кодируемое сообщение. Если ЛИМОН — это ключевое слово, каждая буква повторяющегося ключевого слова будет указывать, какой шифр (какую строку) использовать для каждой буквы кодируемого сообщения. В шифралфавите во второй строке используется B вместо A, C вместо B и т. д. Это шифралфавит «B». Каждый шифралфавит назван по первой букве в нем. Например, если ключевое слово LEMON и сообщение для кодирования ATTACKATDAWN , тогда кодировка:
Открытый текст | АТАКА РАССВЕТА |
---|---|
Ключ | ЛИМОНЛИМОНЛЕ |
Зашифрованный текст | LXFOPVEFRNHR |
Некоторые шифры замены предполагают использование цифр вместо букв. Примером этого является Великий Шифр , где числа использовались для обозначения слогов. Существует еще один шифр подстановки чисел. [ который? ] это предполагает наличие четырех различных вариантов пар чисел для буквенного обозначенияпо ключевому слову.
Вместо цифр также можно использовать символы для замены букв или слогов. Одним из примеров этого является зодиакальный алфавит, где знаки зодиака использовались для обозначения различных букв, например, символы Солнца обозначали А, Юпитер обозначал B, а Сатурн обозначал C. Могут быть точки, линии или тире. также можно использовать, одним из примеров этого является азбука Морзе , которая не является шифром, но, тем не менее, в качестве букв использует точки и тире. Шифр свинарника использует сетку или линии и точки для создания символов для букв. Существуют и другие методы, предполагающие замену букв алфавита символами или точками и тире.
Шифры транспонирования
[ редактировать ]В транспозиционном шифре сами буквы остаются неизменными, но их порядок в сообщении шифруется по некоторой четко определенной схеме. Многие шифры транспонирования выполняются по геометрическому рисунку. Простое (и опять-таки легко взломанное) шифрование состоит в том, чтобы записать каждое слово задом наперед. Например: «Привет, меня зовут Алиса». теперь будет «olleH ymeman si ecilA». Scytale — это машина , которая помогает транспонировать методы.
В столбчатом шифре исходное сообщение располагается в прямоугольнике слева направо и сверху вниз. Затем выбирается ключ, который используется для присвоения номера каждому столбцу в прямоугольнике для определения порядка перестановки. Число, соответствующее буквам в ключе, определяется их местом в алфавите, т.е. А — 1, В — 2, С — 3 и т. д. Например, если ключевое слово — КОШКА, а сообщение — НЕБО ГОЛУБОЕ. , сообщение будет организовано следующим образом:
C A T 3 1 20 T H E S K Y I S B L U E
Далее буквы берутся в числовом порядке и так транспонируется сообщение. Сначала берется столбец под А, затем столбец под С, затем столбец под Т, в результате получается сообщение "Небо голубое" стало: HKSUTSILEYBE
В методе транспонирования китайского шифра буквы сообщения записываются справа налево, вниз и вверх по столбцам, чтобы зашифровать буквы. Затем, начиная с первой строки, буквы берутся, чтобы получить новый зашифрованный текст . Например, если сообщение, которое нужно зашифровать, было «СОБАКА БЕГАЛА ДАЛЬШЕ», китайский шифр будет выглядеть так:
R R G T A A O H F N D E
Затем зашифрованный текст гласит: RRGT AAOH FNDE.
Многие шифры транспонирования аналогичны этим двум примерам и обычно включают перестановку букв в строки или столбцы, а затем их систематическое использование для транспонирования букв. Другие примеры включают вертикальную параллель и шифр двойной транспозиции.
Более сложные алгоритмы могут быть сформированы путем смешивания замены и транспонирования в шифре произведения ; современные блочные шифры, такие как DES, проходят несколько этапов замены и транспонирования.
Шифры сокрытия
[ редактировать ]Проще говоря, сокрытие или нулевой шифр — это любой шифр, который включает в себя несколько нулей или букв-ловушек. Нулевой шифр может представлять собой слова открытого текста с нулями, помещенными в определенные области, или даже сообщение открытого текста, разбитое на разные позиции с нулем в конце каждого слова. [1] [2] Однако сообщение, содержащее всего пару нулей (например, один в начале и один в конце), не является нулевым шифром.
Например, во время гражданской войны в Англии помогло роялисту сэру Джону Треваниану в побеге из пуританского замка в Колчестере следующее сообщение: [3]
ДОСТОЙНЫЙ СЭР ДЖОН, НАДЕЮСЬ, ЭТО ЛУЧШЕЕ УТЕШЕНИЕ ДЛЯ страдающих, НИЧЕГО НЕ МОГУ, Я БОЮСЬ МЕНЯ, ПОМОЧЬ ВАМ СЕЙЧАС. Я БЫ СКАЗАЛ ВАМ ТОЛЬКО ЭТО: ЕСЛИ Я КОГДА-ЛИБО МОГУ СТАТЬ СПОСОБНЫМ ПОТРЕБОВАТЬ ТО, ЧТО Я ДОЛЖЕН ВАМ, НЕ СТОИТ СПРОСИТЬ МЕНЯ. ЭТО НЕ МНОГО, ЧТО Я МОГУ СДЕЛАТЬ; НО ТО, ЧТО Я МОГУ СДЕЛАТЬ, ТЫ ОЧЕНЬ УВЕРЕН, Я СДЕЛАЮ. Я ЗНАЮ, ЧТО ЕСЛИ ПРИДЕТ СМЕРТЬ, ЕСЛИ ОБЫКНОВЕННЫЕ ЛЮДИ БОЯТСЯ ЕЕ, ТО НЕ ТЕБЯ СТРАШАЕТСЯ, СЧИТАЯ ВЫСОКОЙ ЧЕСТЬЮ, ПОЛУЧИТЬ ТАКОЕ НАГРАЖДЕНИЕ ЗА ВАШУ ВЕРНОСТЬ. МОЛИТЕСЬ, ЧТО ВЫ МОЖЕТЕ ИЗБЕЖАТЬ ЭТУ ГОРЬКУЮ ЧАШУ. Я НЕ БОЮСЬ, ЧТО ВЫ БУДЕТЕ ЖАЛОВАТЬ НА ЛЮБЫЕ СТРАДАНИЯ; ТОЛЬКО ЕСЛИ ВЫ МОЖЕТЕ ОТПРАВИТЬ ОТПРАВЛЕНИЯ BIE, ЭТО ЧАСТЬ МУДРОГО ЧЕЛОВЕКА. СКАЖИТЕ МНЕ, ЕСЛИ МОЖЕТЕ, СДЕЛАТЬ ДЛЯ ВАС ВСЁ, ЧТО ВЫ СДЕЛАЛИ. ГЕНЕРАЛ ВОЗВРАЩАЕТСЯ В СРЕДУ. ОТДЕРЖИТЕ ВАШЕГО СЛУЖАТЕЛЯ КОМАНДИРОВАТЬ.
Третья буква после каждого знака препинания означает «Панель в восточном конце слайдов часовни».
Нулевой шифр с точкой или булавочным уколом — это распространенный классический метод шифрования, при котором точка или булавочный укол размещаются над или под определенными буквами в тексте. [4] Первое упоминание об этом было, когда Эней Тактик писал об этом в своей книге «О защите укреплений». [5]
Криптоанализ классических шифров
[ редактировать ]Классические шифры обычно довольно легко взломать. Многие классические шифры могут быть взломаны, даже если злоумышленник знает только достаточный зашифрованный текст, и, следовательно, они восприимчивы к атаке только с использованием зашифрованного текста . Некоторые классические шифры (например, шифр Цезаря ) имеют небольшое ключевое пространство. Эти шифры можно взломать с помощью грубой силы , то есть просто перепробовав все ключи. Шифры замены могут иметь большое ключевое пространство, но часто поддаются частотному анализу , поскольку, например, частые буквы в языке открытого текста соответствуют частым буквам в зашифрованном тексте. Многоалфавитные шифры, такие как шифр Виженера, не позволяют провести простой частотный анализ за счет использования множественных замен. Однако более продвинутые методы, такие как экзамен Касиски для взлома этих шифров все еще можно использовать .
С другой стороны, современные шифры рассчитаны на то, чтобы противостоять гораздо более сильным атакам, чем атаки с использованием только зашифрованного текста. Хороший современный шифр должен быть защищен от широкого спектра потенциальных атак, включая атаки с известным открытым текстом и атаки с выбранным открытым текстом, а также атаки с выбранным зашифрованным текстом . Для этих шифров злоумышленник не сможет найти ключ, даже если он знает какое-либо количество открытого текста и соответствующего зашифрованного текста и даже если он может сам выбрать открытый текст или зашифрованный текст. Классические шифры не удовлетворяют этим гораздо более строгим критериям и, следовательно, больше не представляют интереса для серьезных приложений.
Некоторые методы классических шифров можно использовать для усиления современных шифров. Например, шаг MixColumns в AES — это шифр Хилла . [6]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Трэвис, Сокол; Хиндли, Джуди; Томсон, Рут; Эмери, Хизер; Роусон, Кристофер; Харпер, Анита (1978). Путеводитель шпиона . Карманные книжки Усборна.
- ^ Мур, Гарет (2019). Приключенческое занятие по взлому кодов в Академии исследователей . Национальные географические книги. ISBN 9781426333071 .
- ^ Янечко, Пол Б. (2004). Совершенно секретно: Справочник кодов, шифров и секретной письменности . Кэндлвик Пресс. ISBN 9780763629724 .
- ^ Янечко, Пол Б. (2004). Совершенно секретно: Справочник кодов, шифров и секретной письменности . Кэндлвик Пресс. ISBN 9780763629724 .
- ^ «Эней Тактик • Осадная оборона, XXI‑XXXI» . penelope.uchicago.edu . Проверено 28 мая 2022 г.
- ^ Синьтун, Кит Чой. «Понимание расчета преобразования смешанных столбцов AES» (PDF) . Проверено 26 октября 2016 г.
- Ручные шифры. Карандашно-бумажные шифры в шифровальных машинах и криптологии.
- Факультет компьютерных наук Тринити-колледжа: историческая криптография. Информация о многих различных типах алгоритмов шифрования, включая шифры замены и транспонирования.
- Сингх, Саймон . Кодовая книга: наука о секретности от Древнего Египта до квантовой криптографии . Нью-Йорк: Якорь, 2000.
- Д'Агапеев, Александр. Коды и шифры. Оксфордский университет, 1939 год.
- Уильям Фридман . Полевые кодексы американской армии в американских экспедиционных войсках во время Первой мировой войны , Военное министерство США, июнь 1942 г.
- Лаффин, Джон. Коды и шифры: тайное письмо на протяжении веков. Абеляр-Шуман, 1964 год.
- Риксон, Фред Б. Коды, шифры и секретные языки. Нью-Йорк: Bonanza Books, 1989.