Шифрование при помощи шифрмашины "Хагелин"
Каждое из колес шифрмашины "Хагелин" имело набор штифтов, часть из которых выступала слева, а оставшиеся - справа. В начале каждого периода действия ключей машины операторам сообщали, с какой стороны следует установить каждый из штифтов. Это была довольно трудоемкая работа, поскольку общее число штифтов было равно
26+25+23+21+19+17=131.
Штифт, выступающий с левой стороны колеса, не влиял на выработку знака гаммы и поэтому назывался неактивным; штифт, выступающий справа, увеличивал (в машине без перекрытий) значение гаммы на число выступов, стоящих в барабане напротив данного колеса, то есть на величину "зацепления" этого колеса. Такой штифт назывался активным. В идеале на каждом колесе должно было быть примерно равное число активных и неактивных штифтов: подходящим было бы соотношение примерно от 40% до 60% активных.
В начале каждого периода действия ключей машины операторам необходимо было сдвигать выступы на каждой из 27 реек, чтобы напротив каждого колеса находилось нужное их количество, при этом в случае машины "без перекрытий" надо было следить за тем, чтобы на каждой рейке напротив колеса стояло не более одного выступа, а второй был оставлен в одном из нейтральных положений.
После того, как вводимая буква была установлена напротив стрелки, оператор поворачивал ручку, и барабан вращался. При этом у каждого из колес один из штифтов оказывался расположенным напротив части выступов; при этом, если штифт располагался слева от колеса, выступы проворачиваются мимо него, но если штифт располагался справа, то он сдвигал выступы, а те, в свою очередь, смещали рейки, на которых они располагались. Каждая такая сдвижка поворачивала печатающее колесо на одну позицию. Таким образом, если напротив 26-штифтового колеса расположены 9 выступов, то печатающее колесо будет либо повернуто на 9 позиций, если напротив барабана стоит активный штифт, либо будет оставлено неподвижным, если штифт неактивный. Как только барабан совершит полный оборот, все колёса сдвигаются на одну позицию, и положение напротив выступов барабана занимает другая комбинация штифтов.
Пример 10.1
В таблице 10.1 показана типичная последовательность знаков гаммы, которую может дать барабан (4, 1, 9, 6, 5, 2) из вышеприведенного примера.
Таблица 10.1
Штифтовое число |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 | 4 | 0 | 4 | 4 | 0 | 0 | 0 | 4 | 0 | 4 | 0 | 4 | 4 | 4 | 0 | 4 | 0 | 0 | 0 | 4 |
25 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 |
23 | 9 | 9 | 9 | 0 | 0 | 9 | 0 | 0 | 0 | 9 | 0 | 9 | 9 | 0 | 9 | 9 | 0 | 0 | 9 | 9 |
21 | 6 | 0 | 6 | 6 | 0 | 0 | 0 | 0 | 6 | 6 | 6 | 0 | 6 | 6 | 0 | 0 | 0 | 6 | 6 | 0 |
19 | 0 | 5 | 5 | 5 | 0 | 5 | 0 | 0 | 5 | 0 | 5 | 5 | 0 | 0 | 0 | 5 | 0 | 5 | 0 | 0 |
17 | 2 | 0 | 2 | 0 | 2 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 2 | 2 | 0 | 0 | 2 | 2 | 0 | 2 |
Гамма | 21 | 15 | 27 | 15 | 2 | 16 | 1 | 7 | 13 | 20 | 12 | 19 | 22 | 12 | 9 | 18 | 3 | 13 | 16 | 15 |
Заметим, что за время выработки 20 элементов последовательности знаков гаммы колёса с 19-ю и 17-ю штифтами успели совершить полный оборот, и их вклад в суммарную гамму начал повторяться, на что указывают подчеркнутые числа. Заметим также, что поскольку последовательность знаков гаммы приводится печатающим колесом по модулю 26, то третий элемент последовательности знаков гаммы, равный 27, в результате оказывается равен 1.
Пример 10.2
Используя 20 знаков гаммы из предыдущего примера, зашифруем методом, реализованным в "Хагелине", следующий текст:
HááAááGááEááLááIááNááXááEááNááCááIááPááHááEááRááMááEááNááT
Сначала преобразуем текст в числа:
HááAááGááEááLááIááNááXááEááNááCááIááPááHááEááRááMááEááNááT
7áá0áá6áá4á11áá8á13á23áá4á13áá2áá8á15áá7áá4á17á12áá4áá13á19
Затем вычтем эти числа по модулю 26 из соответствующих знаков гаммы:
Гамма 21 15 27 15 2 16 1 7 13 20 12 19 22 12 9 18 3 13 16 15
Открытый текст 7 0 6 4 11 8 13 23 4 13 2 8 15 7 4 17 12 4 13 19
Шифрованный текст 14 15 21 11 17 8 14 10 9 7 10 11 7 5 5 1 17 9 3 22
После преобразования текста в буквы и разбиения на пятизначные группы получается шифрованный текст, который был бы послан адресату:
OPVLRáIOKJHáKLHFFáBRJDW.
- Глава 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