Найти тему
The Matrix has you . . .

ТОП 10 самых знаменитых кодов и шифров (ЧАСТЬ 2)

Оглавление

Продолжаем рассказ о самых значимых и знаменитых кодах и шифрах, заставивших поломать не одну учёную голову.

4 Шифр Вермана

-2

Шифр Вернама , в теории, совершенный шифр. Вместо одного ключа каждый символ открытого текста зашифровывается с использованием своего собственного ключа. Этот ключ - или ключевой поток - генерируется случайным образом или берется из одноразового блокнота , например, страницы книги. Ключ должен быть равен по длине текстовому сообщению. Тот факт, что каждый символ сообщения зашифрован с использованием другого ключа, предотвращает раскрытие любой полезной информации посредством частотного анализа зашифрованного текста.

Чтобы зашифровать сообщение, каждый символ открытого текста и ключ необходимо преобразовать в числовой код. К счастью, для этого уже существуют схемы кодирования, и мы можем использовать стандартные коды ASCII. Как вы уже знаете, в Системе кодирования ASCII, каждому символу присваивается числовой код. Например, буква «H» равна 72. Это число имеет двоичное представление 01001000 (с использованием 8 бит).

Чтобы использовать шифр Вернама, вам нужно будет использовать операцию XOR. Как вы, возможно, уже знаете, это таблица символов и истинности для XOR:

-3

Чтобы применить шифр Вернама, каждый бит двоичного кода символа для каждой буквы открытого текста подвергается операции XOR с соответствующим битом каждой буквы двоичного кода символа для соответствующего символа из ключевого потока - это создает зашифрованный текст .

В приведенном ниже примере сообщение «HELLO» будет зашифровано с использованием ключа «PLUTO».

Этап 1: шифрование

-4

Вывод представляет собой серию байтов, которую можно интерпретировать по-разному. Если они интерпретируются как ASCII, некоторые из них неизбежно будут символами, которые нельзя распечатать / отобразить.

Если вы попытаетесь закодировать шифр Вернама для шифрования или дешифрования сообщения, вам нужно будет найти решение проблемы печати / отображения. Один из вариантов - отобразить зашифрованный текст в виде десятичных или шестнадцатеричных значений. В приведенном выше примере зашифрованный текст может отображаться как 24, 28, 25, 24, 0 (в денарном формате) или как 18, 1C, 18, 19, 00 (в шестнадцатеричном формате).

Экзаменационные вопросы тщательно составлены. Вам будет предложено расшифровать сообщение в зашифрованном виде и предоставить ключ, который уже находится в двоичном или шестнадцатеричном формате, или вас попросят зашифровать сообщение и отобразить зашифрованный текст в двоичном или шестнадцатеричном формате.

Этап 2: расшифровка

-5

3 Энигма

-6

Код Enigma, представлявший собой очень сложный шифр, использовался немцами во время Второй мировой войны. В нем использовалась машина Enigma, похожая на пишущую машинку, где нажатие на букву заставляло зашифрованную букву загораться на экране. Машина Enigma включала несколько колес, которые соединяли буквы с проводами, определяя, какая буква шифра загорится. Все машины Enigma были идентичны, и знание первоначальной конфигурации колес внутри было ключом к шифрованию сообщений. Чтобы усложнить задачу, каждое колесо будет вращаться после набора определенного количества букв, поэтому шифр постоянно менялся в сообщении. У немецких командиров были машины Enigma, и им на каждый день выдавались списки начальной конфигурации колес, чтобы все немцы использовали одно и то же и могли расшифровать сообщения друг друга. Даже когда союзники приобрели копию машины Enigma, они не смогли ничего расшифровать, так как нужно было проверить более ста триллионов возможных конфигураций колес. Код Enigma был взломан польской изобретательностью и усовершенствован британцами с помощью гениев и компьютеров. Знание немецких коммуникаций дало союзникам жизненное преимущество в войне, а взлом кода Enigma родился предком современных компьютеров. Наверно, многие из вас могли видеть фильм "Игра в имитацию" с Базилик Киберскотчем в главной роли)

Увлекательное видео о принципе работы этой чудо машины вы можете посмотреть тут.

2 Настоящие коды

В настоящих кодах каждое слово заменяется на другое. Расшифровывается такое послание с помощью кодовой книги, где записано соответствие всех настоящих слов кодовым, прямо как в словаре.

Многие страны использовали коды, периодически их меняя, чтобы защититься от частотного анализа. Но есть минус: если кодовая книга будет украдена, то с ее помощью больше будет невозможно что-либо зашифровать, и придется придумывать новый код, что требует огромных усилий и затрат времени.

1 Квантовая криптография

-7

Использование квантовой механики может оказаться лучшим криптографическим методом. Одна схема использует поляризацию фотонов, чтобы скрыть информацию.

Свет можно поляризовать одним из двух способов: в одном случае вибрация является горизонтальной или вертикальной (так называемая прямолинейная), а в другом - диагональной. Мы можем использовать эти поляризации для представления двоичных цифр 0 и 1. Например, в горизонтальной поляризации (-) может представлять 0, а вертикальная поляризация (|) представляет 1. Или левая диагональная поляризация (\) может быть 0 и правый (/), 1.

Чтобы это работало для обмена сообщениями, и отправитель, и получатель должны знать, какая схема поляризации была использована, прямолинейная или диагональная. Только при использовании детектора правильного типа вы получите правильную двоичную цифру.

Посмотрим, что это значит. Алиса отправляет Бобу короткое (шестизначное) сообщение, используя фотоны, поляризованные случайным образом.

Икс = диагональная; + = прямолинейная
Икс = диагональная; + = прямолинейная

Затем Боб измеряет поляризацию фотонов, которые достигают его. Он случайным образом переключается между своими детекторами прямолинейной и диагональной поляризации, что означает, что иногда его выбор совпадает с выбором Алисы, а иногда нет.

-9

Случайный выбор Боба подошел для первого, четвертого и шестого фотонов, хотя он этого еще не знает. Алисе и Бобу просто нужно позвонить, чтобы она могла сказать ему, какую схему поляризации она использовала для каждого фотона, не раскрывая, был ли бит и 0 или 1. Затем Боб может подтвердить, что он правильно понял для фотонов один, четыре и шесть. Это позволяет Алисе и Бобу использовать эти три фотона в качестве ключа шифрования, безопасность которого гарантируется законами физики - это называется квантовым распределением ключей.

P.S. для самых пытливых умов прилагаю ссылку на лекцию по основам квантовой криптографии.

Спасибо за внимание