Enigma

(от греч αἴνιγμα — загадка) — портативная шифровальная машина, использовавшаяся для шифрования и дешифрования секретных сообщений, применявшаяся с 20-х годов XX века. Несмотря на то, что с точки зрения современной криптографии шифр Энигмы и был слаб, на практике только сочетание этого фактора с другими (такими как ошибки операторов, процедурные изъяны, заведомо известный текст сообщений (например, при передаче метеосводок), захваты экземпляров Энигмы и шифровальных книг) позволили взломщикам шифров разгадывать шифры Энигмы и читать сообщения. Также есть мнение, что это был один из самых сильных шифров времён Второй мировой войны. И только захват англичанами неповреждённой Энигмы с подводной лодки и бомбардировщика (что принципиально важно, эти факты так и остались неизвестными немцам), с учётом высочайшего научного и высокого технологического уровня Великобритании, позволили ей (после напряжённых и продолжительных работ в этом направлении) создать контр-Энигму. Важность и уникальность этого успеха прекрасно понимало руководство Великобритании — оставив свой успех «за семью печатями», до конца держа его в тайне даже от партнёров по Антигитлеровской коалиции. Было выпущено, по приблизительным оценкам, около 100 000 экземпляров шифровальных машин Энигма.
 * Эни́гма**

Машина выполняет над шифруемым текстом несколько моноалфавитных шифров подстановки подряд, но такое действие эквивалентно всего одному шифру подстановки. Чтобы шифр не был таким простым, после зашифровывания каждой буквы роторы по некоторому правилу поворачиваются. После результате поворота контакты повернувшегося ротора начинают касаться уже других выводов у соседнего, т.е.буква будет шифроваться уже по другому пути (см. рис). Тем самым, после шифрования каждой буквы алфавит подстановки изменяется.

Такое устройство машины придаѐт шифру определенные особенности, а именно:
 * Симметричность. При одинаковом наборе роторов и их одинаковом начальном расположении повторное шифрование даст исходный текст.
 * 2 подряд идущие одинаковые буквы шифруются разными буквами. (Это свойство было присуще немецкой энигме. При некоторых изменениях правил вращений роторов это свойство можно устранить.)
 * Буква не может быть зашифрована сама собой (т.е. зашифрованная буква всегда отличается от шифруемой).
 * Смена алфавитов периодическая, период: T ≈ PN, где P – число букв в алфавите, N – число роторов. Значение периода зависит также от правил вращения роторов.