7. Первые шифраторы

Вадим Гребенников
В истории научных открытий и изобретений много совпадений. Так, в одно время два математика и астронома в разных странах: британец John Couch Adams и француз Urbain Jean Joseph Le Verrier рассчитали существование планеты Нептун. Точно так же трое учёных из разных государств изобрели радиосвязь: немец Heinrich Rudolf Hertz, россиянин Александр Степанович Попов и итальянец Guglielmo Marchese Marconi. Один из основных методов превращения аналоговых сигналов в цифровые - дельта-модуляцию - изобрёл сразу целый ряд учёных: французы E.M.& Deloraine, S.V. Mierlo, B. Derjavitch в 1946-м, русский учёный Л.А. Коробков в 1949-м, а также американцы C. Chapin Cutler и F. De Jager в 1952-м.

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

Такими талантливыми изобретателями и конструкторами были:
- Edward Hugh Hebern в США;
- Hugo Alexander Koch, Arthur Scherbius и Alexander von Kryha в Германии;
- Arvid Gerhard Damm и Boris Caesar Wilhelm Hagelin в Швеции.

Они изобрели и создали криптоалгоритм с применением дискового механизма. Шифродиск состоял из толстой круглой пластины, изготовленной из непроводящего ток материала (например, твёрдая резина). На обоих его сторонах по кругу равномерно крепились электроконтакты (как правило, латунные). Все контакты одной стороны диска запаивались с контактами на другой в определённом порядке. Так создавались внутридисковые электрические цепи, которые начинались с одной стороны диска и заканчивались на противоположной.

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

Эти манипуляции осуществлялись путём установки шифродиска (ротора) между 2-мя дисками (статорами), которые не двигались и изготавливались из изоляционных материалов. Эти статоры содержали электроконтакты, крепившиеся равномерно по окружности и соответствовавшие электроконтактам ротора. Каждый контакт входного статора соединялся с определённой клавишей вводного устройства (например, печатная машинка), с которого вводилось открытое сообщение. А контакты выходного статора выходили на другое устройство, обеспечивавшее вывод зашифрованного сообщения (например, сигнальные лампы).

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

Но «фишка» была в том, что ротор изначально был придуман как постоянно вращающийся элемент шифромашины. Его поворот на один шаг приведёт к появлению уже другой электро-цепи, которая засветит другой шифрознак. А полный оборот ротора вокруг своей оси и возвращения в первоначальное положение приводит к получению уже другого шифроалфавита. В результате получаем многоалфавитное шифрование с периодом, равным количеству букв в алфавите (например, 26).

Тем не менее такое криптоустройство всё равно не обеспечивает необходимый уровень стойкости шифра. Но если рядом с ротором установить ещё один и вращать его на один шаг после завершения полного оборота первого ротора, то это значительно повысит стойкость шифра. Каждый поворот второго ротора создаёт ещё один шифровальный алфавит. Таким образом, двухроторная машина может реализовать многоалфавитный шифр, имеющий гораздо больший период по сравнению с однороторной (=676).

Использование 3-го ротора умножает 676 на 26, поскольку все 3 ротора вернутся в своё первоначальное состояние лишь после 17,5 тысяч циклов шифрования. Использование 4-х и 5-и роторов приводит к периодам, равным 457 тысячам и 12 миллионам циклов шифрования.

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

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

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

Составляющие компоненты шифродискаПри вскрытии дискового шифратора криптоаналитик, как правило, применял высшую математику, ведь именно она давала решение многих неизвестных, связанных с дисковым шифрованием. Эти неизвестные создавались проводными переходами внутри каждого шифродиска (с одной стороны на другую). Криптоаналитики математическими инструментами разграничивали их, путём измерения сдвига между входным и выходным контактом.

Так, переход между входным контактом 4 и выходным контактом 9 означал длину сдвига, равной 5. Кроме того, криптоаналитики обозначали все буквы числовыми значениями (как правило: А = 0, В = 1, С = 2,… Z = 25). С помощью числовых значений имеющего-ся или вероятного исходного сообщения криптоаналитики состав-ляли уравнение, в котором длина сдвига в роторах принималась за неизвестную величину, и затем решали это уравнение.

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

Особенностью было также и то, что длину сдвига можно было вычислить как сумму других длин сдвигов. Длина сдвига на 2-м роторе могла равняться сумме длин на 1-м и 3-м роторах, а длина на 3-м роторе могла быть известна лишь как сумма длин на 2-м и 4-м роторах. То есть одна неизвестная величина могла выражаться несколькими величинами. Теория групп в высшей математике описывала решение уравнения подобного типа, но даже в этом случае могли возникнуть ошибки.

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

Чтобы прочитать книгу полностью, напишите автору.