stringtranslate.com

Роторная машина

Серия из трех роторов машины «Энигма», использовавшейся Германией во время Второй мировой войны.
Разобранный вид ротора машины Enigma: 1-зубчатое кольцо, 2-точка, обозначающая положение контакта «A», 3-буквенная «шина» или кольцо, 4-электрические пластинчатые контакты, 5-проводные соединения, 6-пружинные штыревые контакты, 7-регулировочный штифт подпружиненного кольца, 8-ступица, через которую проходит центральная ось, 9-пальцевое колесо, 10-храповой механизм.

В криптографии роторная машина — это электромеханическое потоковое шифровальное устройство, используемое для шифрования и дешифрования сообщений. Роторные машины были криптографическим достижением на протяжении большей части 20-го века; они широко использовались в 1920-х–1970-х годах. Самым известным примером является немецкая машина Enigma , выходные данные которой были расшифрованы союзниками во время Второй мировой войны, создав разведданные под кодовым названием Ultra .

Описание

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

Фон

40-точечные роторы из машины, созданной Татьяной ван Варк

В классической криптографии одним из самых ранних методов шифрования был простой шифр замены , в котором буквы в сообщении систематически заменялись с использованием некоторой секретной схемы. Моноалфавитные шифры замены использовали только одну схему замены — иногда называемую «алфавитом»; ее можно было легко взломать, например, с помощью частотного анализа . Несколько более безопасными были схемы, включающие несколько алфавитов, полиалфавитные шифры . Поскольку такие схемы реализовывались вручную, можно было использовать только несколько различных алфавитов; что-либо более сложное было бы непрактичным. Однако использование только нескольких алфавитов делало шифры уязвимыми для атак. Изобретение роторных машин механизировало полиалфавитное шифрование, предоставив практический способ использовать гораздо большее количество алфавитов.

Самым ранним криптоаналитическим методом был частотный анализ , в котором шаблоны букв, уникальные для каждого языка, могли использоваться для обнаружения информации об алфавите(ах) замены, используемых в моноалфавитном шифре замены . Например, в английском языке буквы открытого текста E, T, A, O, I, N и S, как правило, легко идентифицировать в шифротексте на основании того, что, поскольку они очень часты, соответствующие им буквы шифротекста также будут столь же частыми. Кроме того, комбинации биграмм, такие как NG, ST и другие, также очень часты, в то время как другие действительно редки (например, Q, за которой следует что-либо, кроме U). Простейший частотный анализ основан на том, что одна буква шифротекста всегда заменяется буквой открытого текста в шифре: если это не так, расшифровка сообщения становится более сложной. В течение многих лет криптографы пытались скрыть контрольные частоты, используя несколько различных замен для обычных букв, но этот метод не мог полностью скрыть шаблоны в заменах для букв открытого текста. К XVI веку подобные схемы стали повсеместно разрушаться.

В середине XV века Альберти изобрел новую технику , теперь известную как полиалфавитные шифры , которая признавала преимущество использования более одного алфавита замены; он также изобрел простую технику для «создания» множества шаблонов замены для использования в сообщении. Две стороны обменивались небольшим количеством информации (называемой ключом ) и использовали ее для создания множества алфавитов замены и множества различных замен для каждой буквы открытого текста в течение одного открытого текста. Идея проста и эффективна, но оказалась более сложной в использовании, чем можно было ожидать. Многие шифры были лишь частичными реализациями Альберти, и поэтому их было легче взломать, чем они могли бы быть (например, шифр Виженера ).

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

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

Механизация

Создать машину для выполнения простой замены несложно. В электрической системе с 26 переключателями, подключенными к 26 лампочкам, любой из переключателей зажжет одну из лампочек. Если каждый переключатель управляется клавишей на пишущей машинке , а лампочки помечены буквами, то такую ​​систему можно использовать для шифрования, выбрав проводку между клавишами и лампочкой: например, при вводе буквы A загорится лампочка с надписью Q. Однако проводка фиксирована, что обеспечивает небольшую безопасность.

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

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

Но это легко исправить. Просто поставьте больше роторов рядом друг с другом и соедините их вместе. После того, как первый ротор провернется «до конца», заставьте ротор рядом с ним провернуться на одну позицию. Теперь вам придется набрать 26 × 26 = 676 букв (для латинского алфавита ), прежде чем ключ повторится, и все же вам по-прежнему требуется сообщить ключ из двух букв/цифр, чтобы настроить все. Если ключ длиной 676 недостаточно длинный, можно добавить еще один ротор, что приведет к периоду длиной 17 576 букв.

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

История

Изобретение

[ необходима ссылка ]

Идея создания роторной машины возникла у ряда изобретателей независимо друг от друга в одно и то же время.

В 2003 году выяснилось, что первыми изобретателями были два голландских морских офицера , Тео А. ван Хенгель (1875–1939) и Р. П. К. Шпенглер (1875–1955) в 1915 году (De Leeuw, 2003). Ранее изобретение приписывалось четырем изобретателям, работавшим независимо и почти в одно и то же время: Эдварду Хеберну , Арвиду Дамму , Хуго Коху и Артуру Шербиусу .

В Соединенных Штатах Эдвард Хью Хеберн построил роторную машину, используя один ротор в 1917 году. Он был убежден, что разбогатеет, продавая такую ​​систему военным, роторную машину Хеберна , и выпустил серию различных машин с одним-пятью роторами. Однако его успех был ограничен, и он обанкротился в 1920-х годах. Он продал небольшое количество машин ВМС США в 1931 году.

В машинах Хеберна роторы можно было открыть и заменить проводку за несколько минут, так что единую систему массового производства можно было продать нескольким пользователям, которые затем производили бы свой собственный роторный ключ. Расшифровка состояла в извлечении ротора(ов) и повороте их для реверсирования схемы. Неизвестный Хеберну Уильям Ф. Фридман из SIS армии США быстро продемонстрировал изъян в системе, который позволял взломать шифры из нее и из любой машины с похожими конструктивными особенностями, приложив достаточно усилий.

Другим ранним изобретателем роторной машины был голландец Хуго Кох , который подал патент на роторную машину в 1919 году . Примерно в то же время в Швеции Арвид Герхард Дамм изобрел и запатентовал другую конструкцию ротора. Однако роторная машина в конечном итоге стала знаменитой благодаря Артуру Шербиусу , который подал патент на роторную машину в 1918 году. Позже Шербиус спроектировал и продал машину Enigma .

Машина «Энигма»

Немецкая машина «Энигма»

Наиболее известным роторным шифровальным устройством является немецкая машина «Энигма» , использовавшаяся во время Второй мировой войны и имевшая ряд модификаций.

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

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

Рефлектор Энигмы гарантировал, что ни одна буква не может быть зашифрована как сама себя, поэтому буква A никогда не может превратиться обратно в A. Это помогло полякам, а позднее и британцам взломать шифр. ( См. Криптоанализ Энигмы .)

Шербиус объединил усилия с инженером-механиком по имени Риттер и основал Chiffriermaschinen AG в Берлине, прежде чем продемонстрировать Enigma публике в Берне в 1923 году, а затем в 1924 году на Всемирном почтовом конгрессе в Стокгольме . В 1927 году Шербиус купил патенты Коха, и в 1928 году они добавили коммутационную панель , по сути, невращающийся вручную переставляемый четвертый ротор, на передней части машины. После смерти Шербиуса в 1929 году Вилли Корн отвечал за дальнейшее техническое развитие Enigma.

Как и другие ранние попытки роторных машин, Scherbius имел ограниченный коммерческий успех. Однако немецкие вооруженные силы, отчасти отвечая на разоблачения того, что их коды были взломаны во время Первой мировой войны, приняли Enigma для защиты своих коммуникаций. Рейхсмарине принял Enigma в 1926 году, а немецкая армия начала использовать другой вариант около 1928 года.

«Энигма» (в нескольких вариантах) представляла собой роторную машину, которую компания Шербиуса и ее преемница, Heimsoth & Reinke, поставляли немецким военным и таким агентствам, как нацистская партийная служба безопасности СД .

Поляки взломали немецкую армейскую «Энигму» в декабре 1932 года, вскоре после того, как она была введена в эксплуатацию. 25 июля 1939 года, всего за пять недель до вторжения Гитлера в Польшу, Бюро шифров польского Генерального штаба поделилось своими методами и оборудованием для расшифровки «Энигмы» с французами и британцами в качестве вклада поляков в общую оборону против нацистской Германии. Дилли Нокс уже взломал сообщения испанских националистов на коммерческой машине «Энигма» в 1937 году во время гражданской войны в Испании .

Несколько месяцев спустя, используя польские методы, британцы начали читать шифры Enigma в сотрудничестве с криптологами Польской службы шифров , которые бежали из Польши, захваченной немцами, чтобы добраться до Парижа . Поляки продолжали взламывать немецкую армейскую Enigma — вместе с трафиком Enigma Люфтваффе — пока работа на станции PC Bruno во Франции не была остановлена ​​немецким вторжением в мае-июне 1940 года.

Британцы продолжили взламывать «Энигму» и, в конечном итоге, при содействии Соединенных Штатов, распространили работу на германские военно-морские сообщения «Энигмы» (которые поляки считывали до войны), особенно входящие и исходящие от подводных лодок во время битвы за Атлантику .

Различные машины

Стек ротора роторной машины Enigma. Роторы этой машины содержат 26 контактов.

Во время Второй мировой войны (WWII) и немцы, и союзники разработали дополнительные роторные машины. Немцы использовали машины Lorenz SZ 40/42 и Siemens и Halske T52 для шифрования телетайпного трафика, который использовал код Бодо ; этот трафик был известен союзникам как Fish . Союзники разработали Typex (британский) и SIGABA (американский). Во время войны швейцарцы начали разработку усовершенствования Enigma, которое стало машиной NEMA , введенной в эксплуатацию после Второй мировой войны. Был даже разработанный японцами вариант Enigma, в котором роторы располагались горизонтально; по-видимому, он так и не был введен в эксплуатацию. Японская машина PURPLE не была роторной машиной, а была построена на основе электрических шаговых переключателей , но была концептуально похожа.

Роторные машины продолжали использоваться даже в компьютерную эпоху. KL-7 (ADONIS), шифровальная машина с 8 роторами, широко использовалась США и их союзниками с 1950-х по 1980-е годы. Последнее канадское сообщение, зашифрованное с помощью KL-7, было отправлено 30 июня 1983 года. Советский Союз и его союзники использовали 10-роторную машину под названием Fialka вплоть до 1970-х годов.

Typex — роторная печатная машина, использовавшаяся в Великобритании и странах Содружества и основанная на патентах Enigma.
Американская система SIGCUM представляла собой пятироторную систему, использовавшуюся для шифрования телетайпного трафика.

Уникальная роторная машина под названием Cryptograph была построена в 2002 году голландкой Татьяной ван Варк. Это необычное устройство вдохновлено Enigma, но использует 40-точечные роторы, что позволяет вводить буквы, цифры и некоторые знаки препинания; каждый ротор содержит 509 деталей.

Программная реализация роторной машины использовалась в команде crypt , которая была частью ранних операционных систем UNIX . Это была одна из первых программ, которая нарушила экспортные правила США , классифицировавшие криптографические реализации как боеприпасы.

Список роторных машин

Ссылки

Внешние ссылки