Книга шифров .Тайная история шифров и их расшифровки - Саймон Сингх
Шрифт:
Интервал:
Закладка:
Шифратор, толстое колесо из резины, пронизанное проводами, является важнейшей частью машины. Провода с клавиатуры входят в шифратор в шести точках, затем несколько раз изгибаются и выходят в шести точках на другой стороне. То, как провода идут внутри шифратора, и определяет, как будут зашифровываться буквы открытого текста. Например, при таком расположении проводов, которое показано на рисунке 33:
при наборе а будет высвечиваться буква В, которая означает, что а зашифрована как В,
при наборе b будет высвечиваться буква А, которая означает, что b зашифрована как А,
при наборе с будет высвечиваться буква D, которая означает, что с зашифрована как D,
при наборе d будет высвечиваться буква F, которая означает, что d зашифрована как F,
при наборе е будет высвечиваться буква Е, которая означает, что е зашифрована как Е,
при наборе f будет высвечиваться буква С, которая означает, что f зашифрована как С.
Сообщение cafe будет зашифровано как DBCE. По сути, при данной базовой схеме шифратор определяет шифралфавит, и в машине применяется простой одноалфавитный шифр замены.
Однако идея Шербиуса заключалась в том, чтобы после того, как очередная буква будет зашифрована, шифрующий диск автоматически поворачивался на 1/6 (или на 1/26, в случае, если используется алфавит из 26 букв). На рисунке 34 (а) показано то же самое устройство, что и на рисунке 33; и точно так же при наборе буквы b будет высвечиваться буква А. Однако на сей раз, сразу же после того, как будет набрана буква и загорится лампочка на панели, шифратор сделает 1/6 оборота и перейдет в положение, показанное на рисунке 34 (b). Здесь, если еще раз ввести букву b, загорится уже другая буква — С. Тотчас же шифратор повернется снова и окажется в положении, показанном на рисунке 34 (с). Теперь уже, если снова набрать букву b, высветится буква Е. Вводя букву b шесть раз подряд, мы получим шифртекст ACEBDC. Другими словами, шифралфавит меняется после каждого зашифровывания, и способ зашифровывания буквы b постоянно меняется. Вращающееся шифрующее устройство фактически задает шесть шифралфавитов, и в машине реализуется использование многоалфавитного шифра.
Рис. 34 Каждый раз после того, как на клавиатуре будет набрана и зашифрована буква, шифратор поворачивается на одну позицию, изменяя, тем самым способ, которым может быть зашифрована каждая буква. В (а) шифратор зашифровывает b как А, в (b) шифратор в новом положении зашифровывает b как С. В (с), после поворота на следующую позицию, шифратор зашифровывает b как Е. После того как будут зашифрованы еще четыре буквы и шифратор повернется еще на четыре позиции, он окажется в своем исходном положении.
Вращение шифратора является самым важным в конструкции Шербиуса. Однако у машины в данной ситуации есть заведомо слабое место. Если набрать b шесть раз, то шифратор окажется в исходном положении; при дальнейшем вводе букв b комбинации символов будут повторяться. Вообще говоря, криптографы всеми силами стремятся избегать повторений, поскольку они приводят к появлению упорядоченности и структуры в шифртексте, что является признаком слабости шифра. Эта проблема может быть частично разрешена за счет использования второго шифрующего диска.
На рисунке 35 дано схематическое изображение шифровальной машины с двумя шифраторами. Поскольку показать трехмерный вид шифратора с трехмерной внутренней разводкой сложно, на рисунке 35 дано только двумерное представление. Всякий раз после зашифровывания буквы первый шифратор поворачивается на одну позицию, то есть на двумерной диаграмме каждая распайка перемещается вниз на одну позицию. В отличии от первого, второй шифрующий диск почти все время остается неподвижным. Он приходит в движение только после того, как первый шифратор совершит полный оборот. У первого шифратора имеется зубец и только когда этот зубец доходит до определенной точки, он поворачивает второй шифратор на одну позицию.
На рисунке 35 (а) первый шифратор находится в положении, когда он готов повернуть второй шифратор. При наборе и зашифровывании очередной буквы первый шифратор поворачивается на одну позицию, заставляя при этом повернуться на одну позицию и второй шифратор (рис. 35 (b). После набора и зашифровывания следующей буквы первый шифратор снова поворачивается на одну позицию (рис. 35 (с), но на сей раз второй шифратор остается неподвижным. Второй шифратор не будет двигаться, пока первый шифратор не совершит полный оборот, что произойдет после набора и зашифровывания еще пяти букв. Такая конструкция напоминает одометр автомобиля — быстрее всего вращается барабанчик, который показывает километры, и когда этот барабанчик сделает полный оборот, достигнув цифры «9», он переведет на одно деление барабанчик, показывающий десятки километров.
Рис. 35 При добавлении второго шифратора комбинации зашифрованных символов не будут повторяться до тех пор, пока не будут зашифрованы все 36 букв, то есть пока оба шифратора не вернутся в исходное положение. Для простоты шифраторы представлены на диаграмме в двухмерном виде: здесь, вместо поворота на один шаг шифратора, на одну позицию вниз смещается распайка. Хотя создается впечатление, что провод (или провода) сверху или снизу шифратора обрывается, но на самом деле его продолжением служит соответствующий провод снизу или сверху этого шифратора. В (а) b зашифровывается как D. После зашифровывания первый шифратор поворачивается на одну позицию, заставляя при этом повернуться на одну позицию и второй шифратор; это происходит только раз за один полный оборот первого ротора. Это новое положение показано на (b), где b зашифровывается как F. После зашифровывания первый шифратор поворачивается на один шаг, но второй шифратор при этом остается неподвижным. Это новое положение показано на (с), где b зашифровывается как В.
Преимущество добавления второго шифратора заключается в том, что комбинации символов не будут повторяться до тех пор, пока второй шифратор не вернется в начальное положение, что потребует шести полных оборотов первого шифратора, то есть зашифровывания 6x6, или 36 букв. Другими словами, существует 36 различных положений шифратора, которые эквивалентны переходам между 36 шифралфавитами. Если же взять полный алфавит, состоящий из 26 букв, то шифровальная машина будет переключаться между 26 х 26, или 676 шифралфавитами. Поэтому объединяя несколько шифраторов (которые иногда называются роторами), можно создать шифровальную машину, которая будет постоянно выполнять переход между различными шифралфавитами.
Оператор набирает определенную букву и, в зависимости от положения шифратора, она может быть зашифрована с помощью любого из сотен шифралфавитов. После этого положение шифратора меняется, так что когда в машину вводится следующая буква, она зашифровывается уже с помощью другого шифралфавита. К тому же все это производится исключительно эффективно и точно благодаря автоматическому перемещению шифраторов и высокой скорости электричества.
Прежде чем приступить к подробному объяснению, как Шербиус предполагал применять свою шифровальную машину, необходимо рассказать еще о двух элементах «Энигмы», которые показаны на рисунке 36. Во-первых, в стандартной шифровальной машине Шербиуса в целях увеличения стойкости использовался третий шифратор; для полного алфавита из 26 букв эти три шифратора дают 26 х 26 х 26, или 17 576 различных положений шифраторов. Во вторых, Шербиус добавил отражатель. Отражатель, как и шифратор, также представляет собой резиновый диск с проводами внутри, но его отличие от шифратора состоит в том, что он не вращается, а провода входят с одной стороны и затем выходят с той же стороны. Когда отражатель установлен, оператор вводит букву, посылая электрический сигнал через три шифратора. Поступающий в отражатель сигнал отражается и идет обратно через те же три шифратора, но уже по другому пути. Например, для приведенной на рисунке 36 схемы, при вводе с клавиатуры буквы b сигнал пройдет через три шифратора, попадет в отражатель, отразится и вернется назад к букве D. На самом деле сигнал попадает не в клавиатуру, как это могло бы показаться из рисунка 36, а поступает на панель с лампочками.
Рис. 36 Конструкция «Энигмы» Шербиуса с третьим шифратором и отражателем, который направляет ток обратно через шифраторы. Для данного расположения ввод с клавиатуры буквы b приведет к загоранию D на панели с лампочками, которая показана рядом с клавиатурой.