Циклометр

редактировать
Циклометр, разработанный в середине 1930-х годов Реевским для каталогизации структуры цикла элемента Enigma перестановки. 1: крышка ротора закрыта, 2: крышка ротора открыта, 3: реостат, 4: лампы накаливания, 5: переключатели, 6: буквы.

Циклометр был разработан криптологическим устройством., «вероятно, в 1934 или 1935 году» Мариан Реевски из немецкого отдела Польского бюро шифров (BS-4) для облегчения дешифрования немецкой Enigma зашифрованный текст.

Содержание

  • 1 История
    • 1.1 Пример сообщения
    • 1.2 Мариан Реевски
    • 1.3 Характеристика
    • 1.4 Метод гриля
    • 1.5 Продолжительность цикла
    • 1.6 Восстановление коммутационной панели
  • 2 Создание каталога
  • 3 См. Также
  • 4 Примечания
  • 5 Ссылки
  • 6 Внешние ссылки

История

Пример сообщения

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

Frode Weierud предоставляет процедуру, секретные настройки и результаты, которые использовались в немецком техническом руководстве 1930 года. 57>

Ежедневный ключ (общий секрет): Порядок колеса: II I III Звонок: 24 13 22 (XMV) Отражатель: A Plugboard: AM, FI, NV, PS, TU, WZ Grundstellung: FOL Выбранный оператором ключ сообщения: ABL Зашифрованное, начиная с FOL: PKPJXI Сообщение в открытом виде для отправки и результирующий открытый текст: Feindliche Infanteriekolonne beobachtet. Anfang Südausgang Bärwalde. Ende drei km ostwärts Neustadt. Feind LIQEI NFANT ERIEK OLONN EBEOB AQTET XANFA NGSUE DAUSG ANGBA ERWAL DEXEN DEDRE IKMOS TWAER TSNEU STADT Результирующее сообщение: 1035 - 90 - 341 - PKPJX IGCDS EAHUG WTQGR KVLFG XUCAL XVYMI GMMNM FDXTG NVHVR MMEVO UYFZS LRHDR RXFJW CFHUH Münze FRDIS IKBGP MYVXU Z

Первая строка сообщения не зашифрована. «1035» - это время, «90» - это количество символов, зашифрованных с помощью ключа сообщения, а «341» - это системный индикатор, который сообщает получателю, как было зашифровано сообщение (то есть с помощью Enigma с определенным ежедневным ключом). Первые шесть букв в теле («PKPJXI») представляют собой удвоенный ключ («ABLABL»), зашифрованный с использованием ежедневных настроек ключа и запускающий шифрование в наземной настройке / Grundstellung «FOL». Получатель расшифрует первые шесть букв, чтобы восстановить ключ сообщения («ABL»); Затем он устанавливал роторы машины на «ABL» и расшифровывал оставшиеся 90 символов. Обратите внимание, что в Enigma нет цифр, знаков препинания и умляутов. Числа были прописаны. Большинство пробелов игнорировалось; "X" использовался для периода. Умлауты использовали свое альтернативное написание с завершающей буквой «е». Были использованы некоторые сокращения: «Q» использовалось для «CH».

Мариан Реевский

Мариан Реевский, ок. 1932

Мариан Реевский был студентом математики в Познаньском университете. За это время Польское бюро шифров приняло на работу Реевского и некоторых других студентов-математиков, в том числе Ежи Ружицкого и Хенрика Зигальского, для прохождения спонсируемого Бюро курса по криптологии. Позже Бюро наняло некоторых студентов для работы на полставки в местном отделении Бюро. Реевский уехал из Познани, чтобы изучать математику в Геттингенском университете, но через год вернулся в Познань. В сентябре 1932 года Реевский, Ружицкий и Зигальский поехали в Варшаву и начали работать в Польском бюро шифров на полную ставку.

В декабре 1932 года Мариан Реевски получил задание от Бюро шифров поработать над немецкой загадкой. Несколько лет назад Бюро пыталось сломаться, но безуспешно. В течение нескольких недель Реевский обнаружил, как взломать немецкую шифровальную машину Enigma. В процедурах сообщения German Enigma в то время использовались общие, но секретные ежедневные настройки машины, но в процедурах также каждый клерк по кодам выбирал трехбуквенный ключ сообщения. Например, клерк может выбрать «ABL» в качестве ключа сообщения. Ключ сообщения использовался для установки начального положения роторов при шифровании (или дешифровании) тела сообщения. Выбор другого ключа сообщения был мерой безопасности: он позволял избежать отправки всех дневных сообщений с использованием одного и того же полиалфавитного ключа, что сделало бы сообщения уязвимыми для полиалфавитной атаки. Однако отправителю необходимо сообщить ключ сообщения получателю, чтобы получатель мог расшифровать сообщение. Ключ сообщения был сначала зашифрован с использованием дневного Grundstellung (секретное начальное положение роторов Enigma, например, «FOL»).

Связь иногда была искажена, и если ключ сообщения был искажен, то получатель не смог бы расшифровать сообщение. Следовательно, немцы приняли меры предосторожности и дважды отправили ключ сообщения; если произошла ошибка, получатель должен найти ключ сообщения. Здесь немцы совершили решающую ошибку. Вместо того, чтобы дважды посылать зашифрованный ключ сообщения (например, «PKP»), чтобы получить «PKP PKP», немцы удвоили ключ сообщения (например, «ABL ABL»), зашифровали удвоенный ключ, чтобы получить («PKP JXI»), и отправил зашифрованный двойной ключ. Эта ошибка позволила Реевски идентифицировать шесть последовательных перестановок Enigma и использовать знания, которые они зашифровали одним и тем же ключом сообщения.

С помощью коммерческой машины Enigma, некоторых немецких материалов, полученных французским шпионом Гансом Тило-Шмидтом и немецкими шифровальщиками, которые выбирали слабые ключи, Реевки смог реконструировать проводка роторов и отражателя Enigma. Затем Польское бюро шифров построило несколько двойников Polish Enigma, которые можно было использовать для расшифровки немецких сообщений.

Характеристика

Немецкая процедура, отправляющая зашифрованный двойной ключ, была ошибкой, которая дала Реевскому выход. Реевски рассматривал Enigma как перестановку букв открытого текста в зашифрованный текст. Для каждой позиции символа в сообщении машина использовала разные перестановки. Пусть A B C D E F - соответствующие перестановки для букв с первой по шестую. Реевский знал, что первая и четвертая буквы были одинаковыми, вторая и пятая буквы были одинаковыми, а третья и шестая буквы были одинаковыми. После этого Реевский мог исследовать дневной трафик сообщений; при достаточном трафике он мог собрать составленные перестановки.

Например, для ежедневного ключа в техническом руководстве 1930 года (с достаточным количеством сообщений) Реевский мог найти следующие характеристики:

AD = (pjxroquctwzsy) (kvgledmanhfib) BE = (kxtcoigweh) (zvfbsylrnp) (ujd) (mqa) CF = (yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z) {\ displaystyle {\ begin {align} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ BE = {\ texttt {(kxtcoigweh) (zvfbsylrnp) (ujd) (mqa)}} \\ CF = {\ texttt {(yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\\ end {align}}}{\ begin {выровнено} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ BE = {\ texttt { (kxtcoigweh) (zvfbsylrnp) (ujd) (mqa)}} \\ CF = {\ texttt {(yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\\ конец {выровнено}}

Обозначение - это обозначение цикла Коши . Изучая дневной трафик, Реевский заметил бы, что если бы «p» была первой буквой индикатора, то «j» была бы четвертой буквой. На другом индикаторе «j» будет первой буквой, а «x» - четвертой буквой. Реевский продолжал следить за письмами. В конце концов, будет сообщение, первая буква которого будет «y», а четвертая буква вернется к «p». То же самое будет сделано для второй и пятой букв; обычно бывает несколько циклов.

Метод гриля

Реевски мог использовать эту информацию о цикле и некоторые небрежные привычки клерков кода, чтобы выяснить индивидуальные перестановки ABCDEF, используя метод гриля, но этот метод был утомительным. После использования решетки полюса будут знать крайний правый ротор и его положение, соединения коммутационной панели и Q (перестановка отражателя и двух других роторов). Чтобы получить ежедневный ключ, полякам еще предстоит много работы, и эта работа может повлечь за собой проверку всех возможных порядков и положений для двух левых роторов, чтобы найти положение для Grundstellung. Поляки начали использовать Q-каталог, чтобы облегчить часть метода гриля; в этом каталоге было 4056 записей (26 × 26 × 6). Чтобы найти настройки кольца, метод гриля может потребовать 17 576 попыток.

Метод гриля хорошо работал до 1 октября 1936 года, дня, когда немцы перестали использовать шесть стакеров (разъемных соединителей) и начали использовать пять-восемь стакеров. Больше стекеров может помешать приготовлению на гриле.

Поляки искали еще одну атаку и остановились на другом методе каталогов. Поляки рассмотрели всего 105 456 индивидуальных перестановок (поляки проигнорировали случаи, когда два левых барабана двигались при шифровании индикатора). Если бы у поляков был каталог этих перестановок, то они могли бы посмотреть порядок и положение ротора. К сожалению, запись цикла Коши не подходит. Обозначение цикла для AD может быть расположено в каноническом алфавитном порядке, чтобы служить ключом, но этот ключ будет различным для каждого из 7 триллионов возможных настроек коммутационной панели.

Длина цикла

Вместо того, чтобы индексировать каталог по фактическим циклам, поляки прибегают к индексации каталога по длине циклов. Хотя коммутационная панель изменила идентичность букв в перестановке, она не изменила длины циклов.

Оказывается, существует 101 возможный шаблон для длин цикла перестановки индикатора. С тремя перестановками в характеристике существует около миллиона возможных комбинаций длин цикла (101 = 1 030 301). Следовательно, длины циклов могут использоваться как хэш-функция в хэш-таблице из 105 456 возможных комбинаций. Поляки смотрели на дневной трафик, восстанавливали характеристику индикатора, а затем смотрели в карточный каталог. Скорее всего, только одна (или несколько) карт будет иметь такую ​​длину цикла.

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

Восстановление коммутационной панели

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

Из некоторого ежедневного трафика., криптоаналитик вычислит характеристику.

AD = (pjxroquctwzsy) (kvgledmanhfib) BE = (kxtcoigweh) (zvfbsylrnp) (ujd) (mqa) CF = (yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z) {\ displaystyle { begin {align} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ BE = {\ texttt {(kxtcoigweh) (zvfbsylrnp) (ujd) (mqa)}} \\ CF = {\ texttt {(yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\\ конец {выровнено}}}{\ begin {выровнено} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ BE = {\ texttt { (kxtcoigweh) (zvfbsylrnp) (ujd) (mqa)}} \\ CF = {\ texttt {(yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\\ конец {выровнено}}

В методе гриля вышеупомянутая характеристика будет решена для отдельных перестановок ABCDEF, а затем трудоемкого поиск будет сделан. Вместо этого будут вычислены парные длины цикла характеристики:

AD: 13 BE: 10 3 CF: 10 2 1

Эти длины будут найдены в каталоге карточек, и запись будет будет найдено, что будет указывать порядок колес (II, I, III) и начальное положение каждого колеса.

Карточный каталог не включал действительную характеристику: циклометр только указывал на принадлежность к циклу; он не указывает порядок букв в цикле. Найдя запись в каталоге, криптоаналитик затем вычислит характеристику без стекеров (только настройки каталога). Криптоаналитик может определить каждую из индивидуальных перестановок A * B * C * D * E * F *, установив Enigma для данного порядка колес и начальных позиций. Затем криптоаналитик нажимает aи удерживает его; загорается соответствующая лампа и записывается; не выдавая первую букву, криптоаналитик нажимает b, а затем освобождает первую букву; который не позволяет машине продвигать роторы и зажигает лампу, соответствующую b. Составив карту всего A, криптоаналитик может перейти к B и другим перестановкам. Циптоаналитик восстанавливает неконтролируемую характеристику:

A ∗ D ∗ = (jxroqtcuzwpys) (kngledamvhifb) B ∗ E ∗ = (kxucofgzeh) (wnibpylrvs) (aqm) (dtj) C ∗ F ∗ = (colzpkgrxjb) (h vt) (mi) (e) (w) {\ displaystyle {\ begin {align} A ^ {*} D ^ {*} = {\ texttt {(jxroqtcuzwpys) (kngledamvhifb)}} \\ B ^ {* } E ^ {*} = {\ texttt {(kxucofgzeh) (wnibpylrvs) (aqm) (dtj)}} \\ C ^ {*} F ^ {*} = {\ texttt {(colzpkgrjb) (ynxqudhsfa) (vt) (mi) (e) (w)}} \\\ end {align}}}{\ begin {align} A ^ {*} D ^ {*} = {\ texttt { (jxroqtcuzwpys) (kngledamvhifb)}} \\ B ^ {*} E ^ {*} = {\ texttt {(kxucofgzeh) (wnibpylrvs) (aqm) (dtj)}} \\ C ^ {*} F ^ { *} = {\ texttt {(colzpkgrjb) (ynxqudhsfa) (vt) (mi) (e) (w)}} \\\ конец {выровнен}}

Эти две характеристики затем используются для решения перестановки Стекера S.

В этом примере шесть штекеров, и они затронут 12 персонажей. Если посмотреть на циклы CF, то циклы коммутационной панели (un) (fa)должны транспонироваться с циклами без объединения (vt) (mi). Ни одна из букв не совпадает, поэтому все эти восемь букв скруглены. Глядя на одноэлементные циклы CF и C * F *, видно, что не только «e» не склеивается, но также что «w» и «z» скрещиваются вместе. Таким образом, быстро идентифицируются десять из двенадцати расположенных в ряд букв. Большинство остальных 16 букв, таких как «b», «d», «g» и «l», вероятно, не скреплены. Обозначение цикла A * D *, B * E * и C * F * можно изменить, чтобы оно соответствовало вероятным незакрепленным символам. (Начальная буква обозначения цикла не имеет значения: внутри цикла буквы должны сохранять ту же последовательность, но они могут вращаться. Например, (dtj)то же самое, что и ( tjd), что совпадает с jdt.)

AD = (pjxroquctwzsy) (kvgledmanhfib) A ∗ D ∗ = (sjxroqtcuzwpy) (kngledamvhifb) BE = (kxtcoigweh) (zvfbsylr ujd) (mqa) B ∗ E ∗ = (kxucofgzeh) (wnibpylrvs) (tjd) (aqm) CF = (yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z) C ∗ F ∗ = (ynxqudhsfa) (pkgrjbcolz) (tv) (im) (e) (w) {\ displaystyle {\ begin {align} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ A ^ {*} D ^ {*} = {\ texttt {(sjxroqtcuzwpy) (kngledamvhifb)}} \\ BE = {\ texttt {(kxtcoigweh) (zvfbsylrnp) (ujd) (mqa)}} \\ B ^ {*} E ^ {*} = {\ texttt {(kxucofgzeh) (wnibpylrvs) (tjd) (aqm)}} \\ CF = {\ texttt {(yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\ C ^ {*} F ^ {*} = {\ texttt {(ynxqudhsfa) (pkgrjbcolz) (tv) (im) (e) (w)}} \\\ end {align}}}{\ begin {выровнен} AD = {\ texttt {(pjxroquctwzsy) (kvgledmanhfib)}} \\ A ^ {*} D ^ {*} = {\ texttt {(sjxroqtcuzwpy) (kngledamvhifb)}} \\ BE = {\ texttt {(kxtcoigweh) ( zvfbsylrnp) (ujd) (mqa)}} \\ B ^ {*} E ^ {*} = {\ texttt {(kxucofgzeh) (wnibpylrvs) (tjd) (aqm)}} \\ CF = {\ texttt { (yvxqtdhpim) (skgrjbcolw) (un) (fa) (e) (z)}} \\ C ^ {*} F ^ {*} = {\ texttt {(ynxqudhsfa) (pkgrjbcolz) (tv) (im) (e) (w)}} \\\ конец {выровнено}}

На этом этапе потенциальные штекеры можно определить по разнице в первых двух строках; они также могут быть проверены на согласованность обмена. Результат:

P-S T-U W-Z N-V A-M F-I

Эти штекеры соответствуют примеру Enigma 1930 года.

Единственный оставшийся секрет - это позиции колец (Ringstellung).

Создание каталога

Циклометр был использован для подготовки каталога длины и количества циклов в «характеристиках» для всех 17 576 позиций роторов для заданная последовательность роторов. Поскольку таких возможных последовательностей было шесть, итоговый «каталог характеристик» или «карточный каталог » содержал в общей сложности (6) (17 576) = 105 456 записей.

Утилита каталога карточек , пишет Реевский, не зависело от количества разъемов, используемых немцами на своих машинах Enigma (и от реконструкции ключей сообщений). Подготовка каталога «была трудоемкой и заняла больше года, но когда он был готов... ежедневные ключи [можно было получить] примерно за пятнадцать минут».

Однако 1 ноября 1937 года немцы поменял "реверсивный барабан" или "отражатель ". Это вынудило Бюро шифров начать заново с нового каталога карточек, «задача», - пишет Реевски, - «на которую, с учетом нашего большого опыта, ушло, вероятно, несколько меньше года».

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

Зыгальского См. Также

Notes

Ссылки

  • Владислав Козачук, Enigma : Как немецкая машина Шифр был взломан и как его прочитали союзники во Второй мировой войне, отредактировал и перевел Кристофер Каспарек, Фредерик, доктор медицины, Университетские публикации Америки, 1984, ISBN 0-89093-547-5.
  • Реевский, Мариан ( Июль 1981 г.), «Как польские математики разгадывали загадку», Annals of the History of Computing, IEEE, 3 (3): 213–234, doi : 10.1109 / MAHC.1981.10033
  • Мариан Реевский, «Краткое изложение наших методов реконструкции ENIGMA и восстановления ежедневных ключей, а также немецких усилий по разочарованию этих методов», Приложение C к Владислав Козачук, Enigma: How Немецкий машинный шифр был взломан и как он был прочитан союзниками во Второй мировой войне, 1984, стр. 241–45.
  • Мариан Реевски, «Математическое решение шифра загадки», Приложение E к Владислав Козачук, Enigma: Как был взломан немецкий машинный шифр и как его прочитали союзники во Второй мировой войне, 1984, стр. 272–91.

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

Последняя правка сделана 2021-05-16 12:40:04
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте