- Мемуары о будущем - http://bda-expert.com -

Шифровальные машины Вермахта

Автор Дмитрий Беляев дата: 4 июня 2011 @ 7:46 в Информационная безопасность, Лекции | 2 Comments

В 20—х годах ХХ века были изобретены электромеханические устройства шифрования, автоматизирующие процесс шифрования. Принцип таких машин основан на многоалфавитной замене символов исходного текста по длинному ключу согласно версии шифра Вижинера.

Главной деталью роторной машины является ротор с проволочными перемычками внутри. Ротор имеет форму диска. На каждой стороне диска расположены равномерно по окружности m электрических контактов, где m — число букв алфавита.

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

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

Для закона движения ротора желательны следующие характеристики:

  • период должен быть большим;
  • после шифрования каждого знака все роторы или большая их часть должны повернуться друг относительно друга.

Роторная машина может быть настроена по ключу изменяемых любых её переменных:

  • роторов;
  • порядка расположения роторов;
  • числа мест остановки на колесо и т. д.

Также роторные машины имели устройства ввода и вывода: устройство считывания с перфоленты и печатающее устройство.

Lorenz SZ40 (SZ/42)

С началом Второй мировой войны резко возрос объем сообщений, передаваемых по радиотелеграфу в зашифрованном виде.

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

Заказ был выполнен, на вооружение поступила шифровальная машина Lorenz SZ40 (позже SZ/42), совмещенная с телетайпом Siemens und Halske T52.

Она обеспечивала передачу в эфир или в проводные каналы закодированной информации в стандартном коде Baudot teleprinter code.

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

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

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

Этот метод, предложенный в 1918 году американцем Гилбертом Вернамом, на первый взгляд очень прост.

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

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

И усердие было вознаграждено. Случилось это 30 августа 1941 года.

Когда из Афин в Вену передавалось длинное сообщение, принимающая сторона не смогла его принять полностью и условным, но понятным англичанам сигналом, сообщила: «Прошу повторить».

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

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

Возможность не упустили, в ошибку вцепились с упорством бульдога — любимой английской собаки. Немедленно в начале 1942 года в Исследовательской лаборатории почтового ведомства начались основные работы.

Математическая теория декодирования создана В. Д. Тутте в компании Bill Tutte Co. Методика шифрования и математические основы декодирования подробно описаны в статье «Рыба и я».

На основе работ Тутте небольшому коллективу лаборатории довольно быстро удалось создать технические средства для победы над немецкой шифровальной машиной. Для этой цели сначала были сконструированы две дополняющие друг друга механические машины, первая — аналог SZ/42, названная Tunny («Тунец»), ее использовали для декодирования.

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

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

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

Казалось бы, задача решена, но тут выяснилось печальное обстоятельство — поиск начальных установок методом перебора занимал несколько недель, к этому моменту расшифрованная информация теряла свою актуальность.

Математическая идея машин оказалась вполне продуктивной и подтвердилась экспериментом, к тому же механический принцип Heath Robinson исключал надежную синхронизацию двух лент. Для перехода в штатный эксплуатационный режим нужна была какая-то радикальная замена для механики и перфолент.

Enigma

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

Идея, лежащая в основе машины, совсем не сложна. Она восходит к шифрам Юлия Цезаря, где выполняется простая парная замена символов входного текста по таблице соответствия.

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

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

Существовал специальный механизм для синхронизации случайной выборки.

Enigma — название одной из моделей большого класса машин, которая стала известна благодаря истории с ее расшифровкой. Такого типа устройств было немало, есть косвенные сведения, что подобные шифровальные средства использовались и в армиях многих других стран, в том числе и в советской. Не все, что связано с Enigma, стало предметом гласности.

Простейшее из движения ротора — это движение по принципу однометра; оно использовалось в машине Enigma.

При шифровании одного знака правое крайнее колесо проворачивается на одну позицию. Когда это (или любое другое) колесо переместится на m позиций и совершит полный оборот, колесо, расположенное слева от него, передвинется на одну позицию, и процесс будет повторяться. Этот процесс проведёт банк роторов сквозь все его возможные положения, прежде чем цикл повториться. Поскольку все роторы перемещаются с разными скоростями, период n-роторной машины составляет 26*n (при m = 26).

Улучшение по принципу движения однометра получается путём поворота каждого ротора более чем на одну позицию. Если смещения каждого ротора не имеют общих множителей с объёмом алфавита m, то период останется максимальным.

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

В популярной литературе славу расшифровки Enigma приписывают английской контрразведке и лично Алану Тьюрингу, привлеченному к решению этой задачи.

Бесспорно, у британцев немало заслуг, но история вопроса гораздо интереснее и драматичнее.

Своими корнями она уходит в 20-е годы, когда развернулась дуэль двух разведок: немецкой и польской. Даже в специальных книгах об Enigma роль польских ученых сведена до минимума, иногда говорят, будто поляки где-то выкрали экземпляр. На самом деле теоретические работы начались в 20-е годы в Познаньском университете, лидером здесь был Мариан Режевский. Уже в середине 30-х польские военные с успехом декодировали огромное количество германских радиоперехватов. Режевским была изобретена машина bomba kryptologiczna — криптологическая бомба.

Немцы постоянно усложняли алгоритм Enigma, что привело к развязыванию технической войны разведок. На завершающем этапе инициатива действительно перешла к англичанам. Алан Тьюринг и Гордон Велчман построили машину, названную ими в знак уважения к польским коллегам Bomba. Она представляла собой зеркальное отражение Enigma — те же роторы, но, условно говоря, вращающиеся в обратном направлении.

Шифры сложной замены

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

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

Степень обеспечиваемой защиты теоретически пропорциональна длине периода в последовательности используемых алфавитов.

Многоалфавитные шифры замены предложил и ввёл в практику криптографии Леон Батист Альберти, который также был известным архитектором и теоретиком искусства.

Его книга «Трактат о шифре», написанная в 1566 г., представляла собой первый в Европе научный труд о криптологии. Кроме шифра многоалфавитной замены, Альберти также подробно описал устройства из вращающихся колёс и его реализации.

Роторные машины были самыми важными криптографическими устройствами во время второй мировой войны и доминировали по крайней мере до конца 50-х годов.

Литература:

  1. Жельников В. «Криптография от папируса до компьютера», ABF, Москва, 1997 г. — 336 с.
  2. Черняк Л. «Античный компьютер без сенсаций», Computerworld, #45/2000
    Шаньгин В. Ф. «Защита информации в компьютерных системах и сетях», «Радио и связь», Москва 1999 г.
  3. Музей военной техники Кита Мэлтона.
  4. Трактат о шифре Леона Батиста Альберти.

2 Comments (Открыть | Закрыть)

2 Comments на "Шифровальные машины Вермахта"

#1 Комментарий от Алексей дата: 4 июня 2011 @ 8:55

Слава компьютерам) сейчас все так просто реализовать)
А наверно лет 60 назад, нас вместо реализации ГОСТа, заставляли бы собирать энигму)

#2 Комментарий от Anton Maiden дата: 4 июня 2011 @ 13:50

Эм, реализация ГОСТа проста, когда делаешь с расчетом на гигагерцы и гигабайты. Сложность наступит при реализации под Z80 со 128кбайтами рамы. Все относительно. Тем более криптографические алгоритмы – не паханое поле для оптимизации.


Статья распечатана с Мемуары о будущем: http://bda-expert.com

URL статьи: http://bda-expert.com/2011/06/shifrovalnye-mashiny-vermaxta/

Копирайт © 2010-2022 Дмитрий Беляев, bda-expert.com - "Мемуары о будущем". Все права сохранены.