Книга шифров. Тайная история шифров и их расшифровки
Шрифт:
На рисунке 35 (а) первый шифратор находится в положении, когда он готов повернуть второй шифратор. При наборе и зашифровывании очередной буквы первый шифратор поворачивается на одну позицию, заставляя при этом повернуться на одну позицию и второй шифратор (рис. 35 (b). После набора и зашифровывания следующей буквы первый шифратор снова поворачивается на одну позицию (рис. 35 (с), но на сей раз второй шифратор остается неподвижным. Второй шифратор не будет двигаться, пока первый шифратор не совершит полный оборот, что произойдет после набора и зашифровывания еще пяти букв. Такая конструкция напоминает одометр автомобиля — быстрее всего вращается барабанчик, который показывает километры, и когда этот барабанчик сделает полный оборот, достигнув цифры «9», он переведет на одно деление барабанчик, показывающий десятки километров.
Рис. 35
Преимущество добавления второго шифратора заключается в том, что комбинации символов не будут повторяться до тех пор, пока второй шифратор не вернется в начальное положение, что потребует шести полных оборотов первого шифратора, то есть зашифровывания 6x6, или 36 букв. Другими словами, существует 36 различных положений шифратора, которые эквивалентны переходам между 36 шифралфавитами. Если же взять полный алфавит, состоящий из 26 букв, то шифровальная машина будет переключаться между 26 х 26, или 676 шифралфавитами. Поэтому объединяя несколько шифраторов (которые иногда называются роторами), можно создать шифровальную машину, которая будет постоянно выполнять переход между различными шифралфавитами.
Оператор набирает определенную букву и, в зависимости от положения шифратора, она может быть зашифрована с помощью любого из сотен шифралфавитов. После этого положение шифратора меняется, так что когда в машину вводится следующая буква, она зашифровывается уже с помощью другого шифралфавита. К тому же все это производится исключительно эффективно и точно благодаря автоматическому перемещению шифраторов и высокой скорости электричества.
Прежде чем приступить к подробному объяснению, как Шербиус предполагал применять свою шифровальную машину, необходимо рассказать еще о двух элементах «Энигмы», которые показаны на рисунке 36. Во-первых, в стандартной шифровальной машине Шербиуса в целях увеличения стойкости использовался третий шифратор; для полного алфавита из 26 букв эти три шифратора дают 26 х 26 х 26, или 17 576 различных положений шифраторов. Во вторых, Шербиус добавил отражатель. Отражатель, как и шифратор, также представляет собой резиновый диск с проводами внутри, но его отличие от шифратора состоит в том, что он не вращается, а провода входят с одной стороны и затем выходят с той же стороны. Когда отражатель установлен, оператор вводит букву, посылая электрический сигнал через три шифратора. Поступающий в отражатель сигнал отражается и идет обратно через те же три шифратора, но уже по другому пути. Например, для приведенной на рисунке 36 схемы, при вводе с клавиатуры буквы b сигнал пройдет через три шифратора, попадет в отражатель, отразится и вернется назад к букве D. На самом деле сигнал попадает не в клавиатуру, как это могло бы показаться из рисунка 36, а поступает на панель с лампочками.
Рис. 36 Конструкция «Энигмы» Шербиуса с третьим шифратором и отражателем, который направляет ток обратно через шифраторы. Для данного расположения ввод с клавиатуры буквы b приведет к загоранию D на панели с лампочками, которая показана рядом с клавиатурой.
На первый взгляд кажется бессмысленным добавлять к машине неподвижный отражатель, который не приводит к увеличению количества шифралфавитов. Однако польза от него станет ясна, когда мы будем рассматривать, как же в действительности используется эта машина для шифрования и расшифрования сообщения.
Допустим, оператор хочет отправить криптограмму. Прежде чем приступить к шифрованию, оператор должен вначале повернуть шифраторы, установив их в определенное начальное положение. Существует 17 576 возможных расположений и, соответственно, 17 576 возможных начальных установок. Начальные положения шифраторов будут определять, каким образом зашифровывается сообщение. Мы можем рассматривать «Энигму» как обобщенную шифрсистему, в которой способ зашифровывания определяется начальными установками. Другими словами, начальные установки обуславливают ключ. Начальные установки обычно задаются в шифровальной книге, в которой указаны ключи на каждый день и которая имеется у всех в коммуникационной сети. Для распространения шифровальных книг требуется время и усилия, но поскольку в день нужен только один ключ, то можно, например, предусмотреть рассылку шифровальных книг, содержащих 28 ключей, только один раз в четыре недели. Для сравнения, если бы в войсках пришлось бы применять одноразовые шифрблокноты, то для каждого сообщения требовался бы новый ключ, и задача распределения ключей оказалась бы несоизмеримо сложнее. Как только шифраторы будут установлены в положения, задаваемые ключом текущего дня из шифровальной книги, отправитель может начинать зашифровывание. Он вводит с клавиатуры первую букву сообщения, смотрит, какая буква высвечивается на панели с лампочками, и записывает ее как первую букву шифртекста. Затем, как только первый шифратор автоматически повернется на одну позицию, отправитель вводит вторую букву сообщения и так далее. После того как шифртекст будет полностью подготовлен, он вручается радисту, который передает его получателю сообщения.
Чтобы расшифровать сообщение, получателю необходимо иметь другую «Энигму» и копию шифровальной книги, в которой указаны начальные положения шифраторов на текущий день. Получатель устанавливает машину в соответствии с книгой, набирает букву за буквой шифртекст, и на панели с лампочками считывает открытый текст. Другими словами, отправитель набирал открытый текст, чтобы получить шифртекст, а здесь получатель набирает шифртекст, чтобы получить открытый текст, то есть зашифровывание и расшифровывание являются зеркальными процессами. Простота расшифровывания обеспечивается благодаря отражателю. Из рисунка 36 можно видеть, что вводя с клавиатуры Ь и двигаясь далее по электрической цепи, мы окажемся у В. Но точно так же, вводя с клавиатуры d двигаясь далее по электрической цепи, мы вернемся к В.
Машина зашифровывает букву открытого текста в букву шифртекста, и до тех пор, пока машина находится в этом же положении, она будет преобразовывать в процессе расшифровывания эту букву шифртекста в первоначальную букву открытого текста.
Ясно, что ни ключ, ни шифровальная книга, в которой он содержится, ни при каких обстоятельствах не должны попасть в руки противника. Вполне может случиться, что противник сумеет заполучить «Энигму», но не зная начальных установок, используемых для зашифровывания, он не сможет дешифровать перехваченное сообщение. Без шифровальной книги криптоаналитик противника должен проверять все возможные ключи, что означает перебор всех 17 576 возможных начальных установок шифраторов. Доведенный до отчаяния криптоаналитик должен будет установить шифраторы на захваченной «Энигме» в некотором положении, ввести короткий фрагмент шифртекста, и посмотреть, будет ли на выходе какой-нибудь осмысленный текст. Если нет, то он должен изменить положение шифраторов и повторить попытку еще раз. Если криптоаналитик смог бы проверять одно положение шифраторов в минуту и работать круглосуточно, то ему потребовалось бы почти две недели, чтобы проверить все установки. Это — средний уровень стойкости. Но если бы противник усадил за проверку дюжину людей, то все положения шифраторов можно было бы проверить за день. Поэтому Шербиус решил повысить стойкость своего изобретения, увеличив число начальных установок и, тем самым, количество возможных ключей.
Он мог бы повысить стойкость, добавив еще шифраторов (каждый новый шифратор увеличивает число ключей в 26 раз), но это привело бы к увеличению размеров «Энигмы». Вместо этого он поступил следующим образом. Прежде всего он просто сделал шифраторы съемными и взаимозаменяемыми. Так, к примеру, первый шифрующий диск мог бы быть установлен на место третьего диска, а третий шифрующий диск — на место первого. Расположение шифраторов влияет на процесс шифрования, поэтому точное расположение важно для зашифровывания и расшифровывания. Имеется шесть различных способов, которыми можно разместить три шифратора, так что число ключей, или количество возможных начальных установок, возрастает в шесть раз.
Кроме того между клавиатурой и первым шифратором он установил штепсельную коммутационную панель. Штепсельная коммутационная панель дает возможность отправителю вставлять кабели, благодаря которым отдельные буквы, перед тем как попасть в шифратор, меняются местами. Например, кабелем можно было соединить гнезда а и b штепсельной коммутационной панели, так что когда криптограф хочет зашифровать букву b, то электрический сигнал в действительности проходит через шифраторы по пути, по которому прежде шел сигнал от буквы а, и наоборот.