«Загадка»
Роторы «Энигмы» имели 26 положений — по числу букв латинского алфавита. Три ротора, каждый с уникальной проводкой контактов и различной скоростью вращения, к примеру, третий ротор после каждого хода (закодированной буквы) проворачивался сразу на 2 шага вперед. Вместо простой одноалфавитной замены А→В шифр «Энигмы» выглядел бессмысленным набором букв, где одна буква шифротекста могла означать разные буквы настоящего текста. Первый раз «А» могла кодироваться, как «Т», в следующий раз машина заменяла «А» на «E» и т. д.
Для чтения такого сообщения принимающая сторона должна была установить роторы в такое же начальное положение. Начальное положение роторов (ключ дня, к примеру QSY) являлся секретом, известным только немецким операторам «Энигмы». Тем, кто не имел ключа, но хотел прочесть сообщения, требовалось перебирать все возможные комбинации.
Таких комбинаций набиралось 263 = 17576. При должном усердии и мотивации группа дешифровщиков могла перебрать и найти нужный ключ всего сутки.
Повышение стойкости шифра за счет большего числа роторов грозило недопустимым ростом массогабаритов машины. Но тут Артур Шербиус, создатель «Энигмы», пошел на хитрость. Он сделал роторы съемными и взаимозаменяемыми, что сразу увеличило число комбинаций в 6 раз!
А чтобы у вражеских дешифровщиков окончательно закипели мозги, Шербиус между клавиатурой и роторами установил штепсельную панель, на которой производилась замена букв. К примеру, буква «А» с помощью панели превращалась в «E», а роторы производили дальнейшую замену E → W. В комплекте «Энигмы» имелись шесть кабелей, которыми оператор соединял в оговоренном порядке 6 пар букв. Каждый день по-разному.
Количество вариантов соединений 6 пар букв на панели из 26 символов составляло 100391791500.
Общее число возможных ключей «Энигмы», при использовании трех меняющихся местами роторов и коммутационной панели, составило 17576 * 6 * 100391791500 = число, для проверки которого методом перебора могло потребоваться время, превышающее возраст Вселенной!
Зачем нужны роторы?
Коммутационная панель давала на 7 порядков больше ключей, чем громоздкие роторы, однако в одиночку она не могла обеспечить достаточную стойкость шифра. Зная, какие буквы в немецком языке используются чаще, а какие реже, противник методом частотного анализа мог определить, как происходит подмена и расшифровать сообщение. Роторы же из-за непрерывного вращения относительно друг друга обеспечивали более «качественное» шифрование.
Вместе роторы и коммутационная панель давали огромное число ключей, одновременно лишая противника всякой возможности использовать частотный анализ при попытке расшифровать сообщения.
«Энигма» считалась абсолютно неприступной.
Шифр «Энигмы» раскрыли за время, значительно меньшее возраста Вселенной
Молодому математику Мариану Реевскому потребовалась одна блестящая идея и год для сбора статистических данных. После чего немецкие шифровки стали читать как утренние газеты.
Вкратце: Реевский использовал уязвимость, неизбежную при использовании любой аппаратуры. При всей криптостойкости «Энигмы» было слишком неосмотрительным использовать один и тот же код (положение роторов) на протяжении 24 часов — у противников накапливалось опасное количество статистических данных.
В результате применялись разовые коды. Каждый раз перед началом основного сообщения отправитель передавал дублированный текст (к примеру, DXYDXY, в зашифрованном виде SGHNZK) — положение роторов для приема основного сообщения. Дублирование было обязательным из-за радиопомех.
Зная, что 1-я и 4-я буква — всегда одна и та же буква, которая в первом случае зашифрована как «S», а потом как «N», Реевский кропотливо выстраивал таблицы соответствий, анализируя длинные цепочки перестроений и пытаясь понять, как были установлены роторы. На штепсельную панель он поначалу не обращал внимания — она монотонно переставляла местами одни и те же пары букв.
Через год у Реевского накопилось достаточно данных, чтобы быстро по таблицам определять ключ для каждого дня.
Шифровки приобретали смутные очертания немецкого текста с орфографическими ошибками — следствие замены букв на коммутационной панели. Но для Реевского, выпускника Познанского университета — местности, которая до 1918 была частью Германии, не составляло труда интуитивно уловить смысл и настроить панель, соединив нужные пары букв.
Простым делом это кажется теперь, когда была дана подсказка и объяснена идея с разделением работы роторов и штепсельной панели. Взлом «Энигмы» был настоящим мозговым штурмом, потребовавшим кропотливых усилий и математических талантов.
Немцы пробовали повысить стойкость шифра
К концу 1930-х немцы усовершенствовали «Энигму», введя в комплект два дополнительных ротора (№4 и №5, увеличивших число комбинаций с 6 до 60) и увеличили число кабелей, но взлом «Энигмы» уже превратился в рутину. В годы войны английский математик Алан Тюринг нашел собственное красивое решение, пользуясь стереотипным содержанием сообщений (слово wetter в ежедневной сводке погоды) и сконструировал аналоговые компьютеры, поставив дешифровку сообщений «Энигмы» на поток.
В истории со взломом «Энигмы» сыграл роль и пресловутый «человеческий фактор» — предательство одного из сотрудников германской службы связи. Еще задолго до войны и захвата трофейных «Энигм», противники Германии узнали схему проводки в роторах шифрмашины для вермахта. К слову, в 1920-е гг. данное устройство имелось в свободном доступе на гражданском рынке, для нужд корпоративной связи, однако её проводка отличалась от «Энигмы» военного назначения. Среди переданных документов попалась инструкция по эксплуатации — так стало понятно, что означают первые шесть букв любого сообщения (разовый код).
Однако из-за принципа работы доступ к самой «Энигме» еще не значил ничего. Требовались шифрокниги с указанием конкретных установок для каждого дня текущего месяца (порядок роторов II-I-III, положение роторов QCM, буквы на панели соединены A/F, R/L и т.д.).
Но дешифровщики «Энигмы» обходились без шифрокниг, вручную анализируя число с 16 нулями.
Цифровая крепость
Компьютерные методы шифрования реализуют те же традиционные принципы замены и перестановки символов по заданному алгоритму, что и электромеханическая «Энигма».
Компьютерные алгоритмы отличаются запредельной сложностью. Будучи собранной в виде механической машины, такая система имела бы невероятные габариты с огромным числом роторов, вращающихся с переменными скоростями и ежесекундно меняющими направление вращения.
Второе отличие — двоичный машинный код. Любые символы превращаются в последовательность единиц и нулей, благодаря чему существует возможность менять местами биты одной буквы с битами другой буквы. Все это обеспечивает очень высокую стойкость компьютерных шифров.
Однако, как показала история с «Энигмой», взлом подобных алгоритмов — это лишь вопрос вычислительных мощностей. Самый сложный шифр, основанный на традиционных принципах перестановки и замены, будет достаточно скоро «раскрыт» другим суперкомпьютером.
Для обеспечения криптостойкости требуются иные шифры.
Шифр, для взлома которого требуются миллионы лет
Последние десятилетия самым стойким и надежным способом шифрования считается шифрование с «открытым ключом». Без необходимости обмена тайными ключами и алгоритмами, с помощью которых были зашифрованы сообщения. Необратимая функция подобна английскому замку — чтобы закрыть дверь, ключ не требуется. Ключ требуется, чтобы её открыть, и он есть только у хозяина (принимающей стороны).
Ключи — это результат деления с остатком гигантских простых чисел.
Функция необратима не в силу каких-либо фундаментальных запретов, а из-за трудностей разложения больших чисел на множители за сколь-нибудь разумный срок. Масштабы «необратимости» демонстрируют системы межбанковских переводов, где при вычислениях используются числа, состоящие из 10300 цифр.
Асимметричное шифрование повсеместно используется в работе банковских сервисов, мессенджеров, криптовалют и далее везде, где необходимо скрыть информацию от посторонних глаз. Надежнее этой схемы пока не придумали ничего.
Теоретически всё, что создано одним человеком, может быть сломано другим. Однако, как свидетельствуют последние события, государственные контролирующие органы вынуждены добиваться ключей от разработчиков мессенджеров путем уговоров и угроз. Стойкость шифров с «открытым ключом» пока выходит за рамки возможностей современного криптоанализа.
Квантовый телефон за 30 миллионов
Триггером для написания статьи стал размещенный на Youtube видеосюжет, случайно всплывший в списке «рекомендаций» для просмотра. Автор не является подписчиком подобных каналов виду их стереотипности и никчемной содержательности.
Не является рекламой. Не является антирекламой. Личное мнение.
Один блоггер разбивает доводы другого, утверждающего о «коррупционной афере» с созданием отечественного квантового телефона.
Скептик-оппозиционер рассказывает о найденной копии «квантового телефона» ViPNet QSS Phone, продающейся в интернете за 200 долларов. Его оппонент возражает: сами «трубки» здесь ни при чем — создатели использовали любые аппараты, которые нашлись под рукой. Ключевая особенность ViPNet QSS Phone — в «коробке» сервера, внутри которой формируются фотоны. Именно «сервер» оправдывает ценник в 30 млн. рублей.
Оба блоггера демонстрируют полное незнание вопроса и неспособность мыслить и анализировать информацию. Разговор о квантовом телефоне надо начинать не с «трубок» и «сервера», а с принципа работы, о котором сказано все в официальном релизе.
С помощью фотонов передается только секретный ключ, которым зашифровано основное сообщение. Тем самым, по мнению разработчика, обеспечивается высшая степень защиты ключа. Само сообщение передается в зашифрованном виде по обычному каналу.
«Фотоны нужны только для того, чтобы согласовать совместный ключ, сами переговоры происходят любым привычным нам способом».
(Момент на видео 6:09.)
Оба блоггера не обратили на это никакого внимания. Но если бы автор был потенциальным покупателем, он бы задал разработчикам пару вопросов:
1. Криптография — это наука о том, как читать шифровки, не имея ключа. Иначе говоря, отсутствие ключа не гарантирует, что сообщение не сможет быть расшифровано и прочитано. Яркий пример — история «Энигмы».
2. Если речь идет о передаче какого-либо «секретного ключа», это означает шифрование традиционными алгоритмами замены/перестановки. Что делает шифр еще менее криптостойким перед современными средствами взлома.
Как известно, самым надежным является шифрование с «открытым ключом», где никакой ключ никуда передавать не требуется. Каковы ценность и значение квантового канала?
Мистика микромира
Обычные аппараты с необычными возможностями? Будем рассуждать в логическом ключе. Создатели ViPNet QSS Phone явно поторопились с представлением «квантового телефона» на рынке устройств связи. При имеющейся ширине канала, не позволяющей передавать сообщение целиком и достигнутой дальности в 50 км, такая система прикладной ценности не имеет.
В то же время история с криптотелефоном показала, что в России ведутся исследования на передних рубежах современной науки и техники, в области квантовой связи.
Квантовая связь выходит за рамки привычной криптографии (сокрытия смысла сообщения) и стеганографии (сокрытия самого факта передачи сообщения). Биты информации, зашифрованные в виде фотонов, получают дополнительный уровень защиты. Однако к шифрованию это отношения не имеет.
Фундаментальные законы природы не позволяют произвести перехват сообщения, не измерив (а значит, не изменив) параметры фотонов. Иными словами, лица, ведущие конфиденциальный разговор, немедленно узнают о том, что кто-то пытался их прослушать. Алло…
- Автор:
- Олег Капцов
Свежие комментарии