Шифруемся!

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

Пятиминутка Кнорозова

19 ноября 2022 года исполнилось 100 лет со дня рождения Юрия Кнорозова, всемирно известного советского и российского лингвиста и историка. Кнорозов первым в мире расшифровал древний язык майя, опираясь только на фотографии надписей, математику и логику. Сам учёный жил скромно, письменность майя он увидел только в глубокой старости, спустя 30 лет после расшифровки. А ещё он старательно вписывал кошку Аспид в соавторы своих научных работ. Хороший рассказ про жизнь и труд Юрия Кнорозова есть у «Редакции».

image3

Шифр Цезаря

Самый простой шифр подстановки, авторство которого приписывают Юлию Цезарю. В нём каждая буква слова смещается на несколько символов, превращая сообщение в нечитаемый текст.

К примеру, если в словах Академия Яндекса мы сместим все буквы по алфавиту на пять символов вправо, то получим Епеийснд Дтийпце.

На деле этот шифр толком не использовался даже во времена Цезаря: слишком легко его «сломать». Кроме того, зашифрованное сообщение выглядит странно и привлекает внимание. А значит, его точно стоит расшифровать, ведь внутри наверняка что-то важное!

Скитала

Аналог шифра Цезаря, но из физического мира. Скитала — это шифр, в котором ключом выступает предмет, обычно в виде шестигранной палочки.

На палочку наматывали кожаный ремень, а после писали сообщения по ребру. После того как ремень снимали, на нём оставался лишь набор символов.

image4

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

Полководец Эней изменил шифр. Он использовал диск, на котором по кругу были нанесены отверстия, соответствующие буквам. Достаточно было продеть нитку через отверстия, кодируя сообщение посимвольно. После получатель вытягивал нитку из отверстий последовательно, читая сообщение с конца к началу. У диска Энея было важное качество: сообщение можно было быстро уничтожить, просто сломав диск или выдернув все ниточки сразу.

Решётка Кардано

Первый в мире шифр с открытым ключом. И очень сложный!

В основе шифра — трафарет, обычно в виде карточки с отверстиями. Трафарет накладывают на страничку текста, выделяя кодированное сообщение.

Один из героев фильма «Воздушная тюрьма» использует шифр Кардано. Трафаретом выступает упаковка для свечей с прорезанными в «Тайной вечере» да Винчи отверстиями, а основой для сообщения — его собственный приговор в суде

Взломать шифр Кардано непросто. Во-первых, его трудно обнаружить, ведь основой может быть что угодно: письмо, страница в книге, реклама. Подобрать такой шифр практически невозможно, нужно получить и исходный текст, и трафарет к нему. Поэтому метод Кардано любил использовать знаменитый кардинал Ришельё.

Уильям Гибсон в фантастическом романе «Джонни Мнемоник» также описал кодирование сообщений открытым ключом. Только вместо «трафарета» использовали кадры из телепрограммы, которую смотрели одновременно и получатель, и отправитель. А сообщение нёс прямо в уме герой (которого после сыграл Киану Ривз в провальной экранизации).

image1

Бонус-трек: «свинский латинский»

Это «тайный язык», который любят английские школьники. «Свинский латинский», или «поросячья латынь», помогает общаться на английском так, чтобы другие носители языка не могли с ходу вас понять. При этом он заточен именно под быструю речь.

Вот как говорить «по-свински»:

— Согласные из начала слова перемещают в конец, к ним добавляют -ay: Yandex → Andexyay.

— К слову, начинающемуся с гласной, добавляют -ay в конце: Academy → Cademay (или Academyyay в некоторых диалектах).

Таким образом, фраза I really like that article about cryptography превращается в «мешанину букв»: Iyay eallyray ikelay atthay articleyay aboutyay ographycryptay. Послушайте, как забавно это звучит.

При этом «свинский латинский» действительно работает. Школьники в Великобритании и США и сегодня могут общаться так, что их не понимают родители, учителя и другие дети.

⌘ ⌘ ⌘

В следующий раз поговорим про полиалфавитную замену, RSA Cipher, машину «Энигма» и современные шифры с открытым и закрытым ключом. И узнаем, как браузеры на лету определяют опечатку в указанном номере банковской карты (спойлер — благодаря алгоритму Луна).

Краткий пересказ от YandexGPT