Конструкция шифрмашины «Хагелин»
В "Хагелине" последовательность знаков гаммы вырабатывалась с помощью шести штифтовых колес и барабана с выступами. Эти шесть штифтовых колес были собраны параллельно на общей оси и могли вращаться как независимо (что было необходимо в процессе выполнения начальных установок), так и вместе (что происходило каждый раз при зашифровании или расшифровании очередной буквы). Каждое колесо имело по окружности набор штифтов. Любой штифт можно было сдвинуть так, чтобы он выступал либо с левой, либо с правой стороны колеса. Число штифтов у каждого колеса было разным: если смотреть спереди, то количество штифтов на этих шести колесах, слева направо, равнялось соответственно 26, 25, 23, 21, 19 и 17. При шифровании очередной буквы каждое колесо сдвигалось на один шаг. Поскольку "длины" этих шести колес не имели общих делителей, то все вместе они возвращались в исходное положение только после зашифрования
262523211917=101405850
знаков. По ободу каждого из колес были нанесены буквы алфавита, чтобы оператор мог выставить колеса в исходные положения. На колесе с 26 штифтами был нанесен весь латинский алфавит, но для других колес, очевидно, требовалось меньше букв. Так, для колеса с 17 штифтами хватало букв от А до Q.
Барабан с выступами состоял из 27 горизонтальных реек, собранных в виде цилиндра. Концы всех реек удерживались двумя круглыми дисками. Барабан мог вращаться вокруг оси, которая была параллельна общей оси штифтовых колес. Барабан располагался непосредственно позади них. На каждой рейке барабана было по 2 "выступа" - небольших кусочка металла, которые могли сдвигаться вдоль рейки и фиксироваться в любом из восьми возможных положений. Шесть из этих восьми положений располагались прямо напротив шести колес, а оставшиеся два "нейтральных" положения помещались не напротив конкретного колеса, а между первым и вторым, а также между пятым и шестым колесами. Если на каждой из реек напротив колес находилось не более одного выступа, то говорили, что машина находится в режиме "без перекрытий"; если же на какой-нибудь рейке оба выступа стояли напротив колес, то говорили, что машина находится в режиме "с перекрытиями". Значение этих терминов станет ясно позже.
В барабане без перекрытий на каждой из реек один из выступов обычно ставился напротив колеса. Устанавливать таким образом все 27 выступов было не обязательно, но использование меньшего их числа не давало никаких криптографических преимуществ. Например, 27 выступов могли бы располагаться напротив шести колес следующим образом:
áá26 25 23 21 19 17
ááá4 á1 á9 á6 á5 á2
Число выступов напротив конкретного колеса иногда называли "зацеплением" этого колеса. Так, в приведенном выше примере для 26‑штифтового колеса "зацепление равно 4", и т.д. Порядок здесь имеет значение: барабан из данного примера с набором зацеплений (4,1,9,6,5,2) даст другую последовательность знаков гаммы, чем, скажем, (9,1,4,2,6,5), хотя эти последовательности будут в некотором роде статистически похожи.
С левой стороны машина имела маленькое колесо с нанесенными на нем знаками алфавита: оно использовалось для набора букв открытого текста. Еще в ней было печатающее колесо для печати букв шифрованного текста на тонкой полоске бумажной ленты. На обратную сторону этой ленты был нанесен слой клея, чтобы дать оператору возможность наклеивать шифрованный или открытый текст на листы бумаги. Рулон такой клейкой ленты располагался с тыльной стороны машины. К ней также прилагалась отвертка специального профиля, чтобы оператор мог устанавливать положения штифтов и выступов.
С правой стороны машины располагалась ручка, при вращении которой проворачивался барабан, и таким образом происходило зашифрование или расшифрование текста; при этом каждое из шести колес также сдвигалось вперед на одну позицию.
Чтобы зашифровать букву, оператор вращал наборное колесо до тех пор, пока нужная буква не совмещалась со стрелкой, а затем вращал ручку. При этом часть выступов на барабане смещалась, заставляя и наборное, и печатающее колеса провернуться на некоторое число шагов, которое могло быть любым - от 0 до 27. Буква шифрованного текста отпечатывалась, и все шесть колес сдвигались на одну позицию. Зашифрование следующей буквы происходило только в том случае, если оператор проворачивал наборное колесо. Если случалось так, что оно уже стояло в таком положении, когда нужная буква располагалась напротив стрелки, то необходимо было провернуть его на несколько позиций вперед, а затем на такое же число позиций назад. Например, если последняя буква шифрованного текста была равна T, а следующая буква открытого текста тоже была T, то шифровальщик сдвигал наборное колесо на несколько шагов вперед, а затем возвращал его назад к букве T, и только потом можно было вращать барабан с помощью ручки. На иллюстрациях 10.1 и 10.2 представлены фотографии шифрмашины "Хагелин" с закрытой и с открытой крышкой*) .
- Глава 1. Введение 10
- Глава 9. Шифрмашина "Энигма" 130
- Глава 10. Шифрмашина "Хагелин" 152
- Глава 11. После "Энигмы" 172
- Глава 12. Криптография с открытым ключом 179
- Глава 13. Шифрование и Интернет 188
- Предисловие
- Глава 1. Введение Некоторые аспекты безопасности связи
- Шифр Юлия Цезаря
- Несколько основных определений
- Три этапа дешифрования: идентификация, взлом системы и вскрытие ключей.
- Коды и шифры
- Оценка стойкости системы шифрования
- Коды, обнаруживающие и исправляющие ошибки
- Другие методы сокрытия содержания сообщений
- Модульная арифметика
- Модульное сложение и вычитание букв
- Заключение
- Глава 2. От Юлия Цезаря до простой замены Шифры Юлия Цезаря и их вскрытие
- Шифры простой замены
- Вскрытие шифра простой замены
- Частоты встречаемости букв в других языках, кроме английского
- Сколько знаков необходимо для дешифрования простой замены?
- Глава 3. Многоалфавитные системы Усиление системы Юлия Цезаря: шифры Вижанэра
- Вскрытие шифра Вижанэра
- Индикаторы
- Одноключевые сообщения
- Распознавание одноключевых сообщений
- Какой объем текста необходим для дешифрования шифра Вижанэра?
- Цилиндр Джефферсона
- Глава 4. Шифры-головоломки
- Перестановки
- Простая перестановка
- Двойная перестановка
- Другие виды перестановок
- Регулярные перестановочные таблицы
- Нерегулярные перестановочные таблицы
- Оценка стойкости шифров перестановки
- Общая концепция двойного шифрования
- Глава 5. Двухбуквенные шифры
- Замена "монограф-диграф"
- Мдпм-шифры
- Система "диграф-диграф"
- Шифр Плейфера*)
- Расшифрование в системе Плейфера
- Криптоаналитические аспекты системы Плейфера
- Двойной шифр Плейфера
- Глава 6. Коды Характеристики кодов
- Одночастевые и двухчастевые коды
- Код плюс аддитивное шифрование
- Глава 7. Шифры для шпионов
- Шифры-решетки
- Книжные шифры
- Использование книжного шифра
- Частоты встречаемости букв в книжных шифрах
- Вскрытие книжного шифра
- Индикаторы
- Катастрофические ошибки при использовании книжного шифра
- Шифры "агента Гарбо"
- Первый шифр "агента Гарбо"
- Второй шифр "агента Гарбо"
- Одноразовый блокнот
- Глава 8. Получение случайных чисел и букв Случайные последовательности
- Получение случайных последовательностей
- Бросание монеты
- Бросание костей
- Извлечение из урны (по типу лотереи)
- Космические лучи
- Шум от усилителей
- Псевдослучайные последовательности
- Линейные рекурренты
- Использование последовательности двоичных знаков гаммы для шифрования
- Двоичные линейные последовательности как генераторы гаммы
- Криптоанализ линейной рекурренты
- Повышение стойкости двоичной гаммы
- Генераторы псевдослучайных чисел
- Метод срединных квадратов
- Линейные конгруэнтные генераторы
- Глава 9. Шифрмашина "Энигма" Историческая справка
- Первая "Энигма"
- Шифрование с использованием контактных колес
- Шифрование в "Энигме"
- Коммутатор "Энигмы"
- Ахиллесова пята "Энигмы"
- Цепочки индикаторов в "Энигме"
- Выравнивание цепочек
- Идентификация колеса r1 и его угловой установки
- Двойное шифрование в "Энигме"
- "Энигма" Абвера
- Глава 10. Шифрмашина "Хагелин" Историческая справка
- Конструкция шифрмашины «Хагелин»
- Шифрование при помощи шифрмашины "Хагелин"
- Выбор установок барабана в шифрмашине "Хагелин"
- Теоретический объем перебора для шифрмашины "Хагелин"
- Вскрытие установок "Хагелина" по отрезку гаммы
- Дополнительные возможности шифрмашины "Хагелин"
- Смещение
- Определение смещения по шифрованному тексту
- Перекрытия
- Вскрытие шифрмашины "Хагелин" только по шифрованному тексту
- Глава 11. После "Энигмы" sz42 - предтеча электронных машин
- Описание шифрмашины sz42
- Шифрование в машине sz42
- Вскрытие шифрмашины sz42 и определение ее угловых установок
- Модификации шифрмашины sz42
- Глава 12. Криптография с открытым ключом Историческая справка
- Вопросы безопасности
- Защита программ и данных
- Шифрование программ, данных и сообщений
- Задача распределения ключей
- Система ключевого обмена Диффи-Хеллмана
- Стойкость системы Диффи-Хеллмана
- Глава 13. Шифрование и Интернет Обобщение шифра простой замены
- Факторизация больших целых чисел
- Стандартный метод факторизации
- Малая теорема Ферма
- Теорема Ферма-Эйлера (для случая системы rsa)
- Ключи зашифрования и расшифрования в системе rsa
- Процессы зашифрования и расшифрования в системе rsa
- Каким образом хозяин ключей отвечает корреспондентам?
- Американский Стандарт Шифрования Данных (des)*)
- Общие сведения
- Процедура зашифрования
- Процедура расшифрования
- Стойкость des-алгоритма
- Зацепление
- Реализации des-алгоритма
- Совместное использование алгоритмов rsa и des
- Полезное замечание
- После des-алгоритма
- Проверка подлинности сообщения и удостоверение подлинности подписи
- Криптография эллиптической кривой
- Приложение. Математические вопросы Глава 2 м1. Совпадения знаков в алфавитах замены
- М2. Снижение стойкости при использовании взаимно-обратных алфавитов
- M3. Парадокс дней рождения
- Глава 3 м4. Евклидово доказательство бесконечности множества простых чисел
- Глава 6 м5. Последовательность чисел Фибоначчи
- Глава 7 м6. Частота встречаемости букв для книжного шифра
- М7. Одноразовый блокнот дешифровать невозможно
- Глава 8 м8. Частота появления случайных чисел на странице
- М9. Комбинирование двух последовательностей двоичных знаков гаммы, имеющих отклонения
- М10. Последовательность типа Фибоначчи
- М11. Двоичные линейные рекурренты
- M12. Восстановление двоичной линейной рекурренты по отрезку гаммы
- М13. Получение псевдослучайных чисел
- Глава 9 м14. Распайка колёс шифрмашины "Энигма"
- М15. Число возможных отражателей шифрмашины "Энигма"
- М16. Вероятность одноключевых сообщений для "Энигмы"
- М17. Среднее число индикаторов, необходимое для построения полных цепочек
- Глава 10 м18. Число возможных барабанов шифрмашины "Хагелин"
- М19. Максимальная кратность значения зацепления, которая может встретиться при вычислении разности гаммы шифрмашины "Хагелин"
- M20. Определение смещения шифрмашины "Хагелин" с помощью коэффициента корреляции
- Глава 13 m21. (Порядок роста количества простых чисел)
- M22. Вычисление остатка с использованием модульной арифметики
- М23. Доказательство теоремы Ферма-Эйлера
- М24. Нахождение чисел, "предположительно" являющихся простыми
- M25. Алгоритм Евклида
- М26. Эффективность возведения в степень методом последовательного возведения в квадрат
- М27. Число ложных ответов при дешифровании des-алгоритма методом "встречного поиска "
- М28. Криптография эллиптической кривой
- Решения задач Глава 2
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- Глава 7
- Глава 8
- Глава 9
- Глава 10
- Глава 11
- Глава 13
- Литература
- Глава 1
- Глава 2
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- Глава 7
- Глава 8
- Глава 9
- Глава 10
- Глава 11
- Глава 12
- Глава 13