Многие слышали, что в Великую Отечественную Войну немецкая сторона использовала для шифрования специальную шифровальную машину — «Enigma».
Как утверждают источники, это устройство — было новым словом в криптографии того времени.
Как же она работала?
Шифр Цезаря
Для начала, следует знать, что такое «Шифр Цезаря». Это обычная замена одних букв на другие. Т.е. в таком шифре вместо буквы «А» используется, например «T», вместо «B» — «S» и т.п.
Взламывается такой шифр достаточно просто. При наличии более-менее длинного зашифрованного сообщения, можно произвести частотный анализ и сопоставить его частоте употребления букв в языке. Т.е. если в зашифрованном шифром цезаря сообщении много букв «Т» — то это явный признак того, что за этой буквой скрывается какая-то гласная (например, «А» или «О» т.к. обычно именно эти буквы наиболее часты в языке).
Устройство Энигмы
Энигма представляла собой как бы динамический шифр цезаря. Т.е. изначально на барабаных выставлялось некое начальное значение (этакий random seed), которое и являлось ключом. Далее, при наборе букв, каждая буква шифровалась шифром цезаря, а потом, этот шифр менялся на другой.
Смена шифра обеспечивалась с помощью роторов.
Роторы представляли собой диски, у которых было по 26 контактов с каждой стороны, соединенных внутри ротора определенным (случайным) образом. Именно проходя через ротор, сигнал преобразовывался из буквы «А» в букву «Т» и т.д.
Роторов было несколько и они поворачивались после набора каждого символа (на манер барабанного счетчика).
Принцип работы можно понять посмотрев на принципиальную схему:
Количество роторов варьировалось в разные годы и для разного назначения (например, во флоте использовались Энигмы с большим количеством роторов).
Для усложнения взлома операторы кодировали частоупотребимые слова (названия) каждый раз по-разному. Например, слово «Minensuchboot» могло быть написано как «MINENSUCHBOOT», «MINBOOT», «MMMBOOT» или «MMM354»
Аксессуары.
Как к любому популярному устройству, к Энигме существовало большое количество аксессуаров (да-да, это началось уже тогда).
Например, были авто-печатающие устройства (в обычной версии кодирование производилось загорающимися лампочками, значения которых должен был записывать оператор).
Кроме того, были дистанционные печатающие устройства (на проводах, конечно же). Чтобы оператор, вбивающий зашифрованное сообщение в машину, не имел доступа к расшифрованному.
Ссылки по теме:
Автор: soulburner