Математики, шпионы и хакеры. Кодирование и криптография | страница 34



В результате каждый ротор имеет только три возможных позиции, а не 26, как в реальной машине.



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

В новой позиции буквам теперь соответствуют другие — не те, что в первом шифре.

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

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

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

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



Трехроторная машина «Энигма» с частично открытым корпусом, позволяющим видеть коммутационную панель (спереди).


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




Таким образом, буква А меняется местами с буквой С, буква В — с буквой А, а С — с буквой В. С добавлением коммутационной панели упрощенная трехбуквенная «Энигма» будет работать следующим образом:



На сколько больше шифров мы получим при, казалось бы, простом добавлении коммутационной панели? Сначала посчитаем количество способов соединения шести пар букв, выбранных из 26 возможных. Число способов выбрать пар букв из алфавита, содержащего символов, определяется по формуле:



В нашем примере N = 26 и n = 6, что дает нам 100391791500 комбинаций.

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