Cabinet Noir>Навчання / Стовпцева перестановка

Не знаєте, який це шифр? Розпізнайте його
learning.columnar.description
Типшифр перестановки
Зламлегко зламати вручну
ЕпохаПерша світова війна
НазваПольові шифри; славу принесли ADFGVX та SOE
Режимишифрування · розшифрування · криптоаналіз

Навчання

Стовпцева перестановка

Як працює стовпцева перестановка

Ідея однією фразою

Стовпцева перестановка — це Перестановка: кожна літера зберігає свою ідентичність і лише змінює місце. Ключове слово вирішує, як місця перемішуються — запишіть повідомлення рядок за рядком у сітку, а потім прочитайте стовпці в порядку, який диктує ключове слово.

Рецепт

  1. Виберіть ключове слово, скажімо SUN. Його літери за алфавітом (N, S, U) задають Порядок стовпців: стовпець під N читають першим, потім S, потім U.

  2. Запишіть відкритий текст рядок за рядком під ключовим словом, по одній літері в клітинку: ATT / ACK / ATD / AWN.

  3. Прочитайте стовпці в порядку ключового слова, зверху вниз: стовпець N дає TKDN, стовпець S AAAA, стовпець U TCTW.

  4. Шифротекст — це стовпці, записані поспіль: TKDNAAAATCTW. Щоб розшифрувати, відбудуйте сітку так само і прочитайте її рядками.

Опрацьований приклад

Крок 1 із 12
Літера відкритого тексту
Стовпець сітки
Позиція в шифротексті
A
1
5

Кожен рядок слідкує за однією літерою відкритого тексту: у який стовпець сітки її записано і на яку позицію шифротексту вона потрапляє. Літери ніколи не змінюються — A залишається A — але їх порядок без ключа сплутаний до невпізнанності.

Доповнення та неповний останній рядок

Якщо довжина повідомлення не заповнює останній рядок, у відправника два варіанти. Доповнення завершує сітку фіктивною літерою (інструмент використовує X): прямокутник стає регулярним, усі стовпці однакової довжини, а довжина шифротексту видає можливі кількості стовпців. Неповний останній рядок тримає сітку нерегулярною: трохи важча для аналізу, і це класична ручна практика. Інструмент пропонує обидва.

Подвійна перестановка

Шифрування результату вдруге іншим ключовим словом — класична подвійна перестановка — руйнує просту стовпцеву структуру. Вразливість одинарної перестановки, яку ви використаєте нижче, переважно зникає; саме тому серйозні користувачі — від армій Першої світової до SOE — завжди застосовували перестановку двічі.

Стовпцева перестановка: практикум

Практикум 1 — ваша перша перестановка

  1. Відкрийте інструмент і введіть ключове слово SUN. Сітка показує Порядок стовпців номерними позначками: 1 під стовпцем, який ключ читає першим.

  2. Введіть MEET ME AT NOON і порівняйте із сіткою: шифротекст — це ті самі літери, прочитані стовпцями в порядку позначок.

  3. Перемкніться в режим розшифрування і вставте криптограму назад — вона повернеться без змін. Перестановка сама себе скасовує, якщо відомий порядок читання.

Практикум 2 — з доповненням чи нерегулярна

  1. Зашифруйте повідомлення, довжина якого не ділиться на довжину ключового слова — скажімо, 13 літер під SUN (3 стовпці).

  2. Зашифруйте один раз з увімкненим «Залишити останній рядок неповним» і один раз без. З доповненням довжина шифротексту кратна 3; без — вона дорівнює 13: форма сітки або видає, або приховує інформацію.

  3. Порахуйте, скільки кандидатів-ширин ділять доповнену довжину: кожен дільник — це гіпотеза, яку криптоаналітик мусить перевірити. Нерегулярні сітки скорочують цей список.

Практикум 3 — подвійна перестановка

  1. Увімкніть «Подвійна перестановка» і додайте друге ключове слово, скажімо WOLF.

  2. Зашифруйте те саме повідомлення з другим ключем і без нього та порівняйте результати: подвійний не лишає жодного читабельного фрагмента стовпців — саме ті фрагменти, які витікає одинарний шифр.

  3. Ось чому армії подвоювали перестановку і чому керований зломщик цієї програми обмежується одинарною версією.

Злам стовпцевої перестановки

Перестановка приховує порядок літер, а не самі літери — тож частоти, що вбивають шифри заміни, тут рівні, і на заміну приходить інша вразливість: структура. Майстер на вкладці «Криптоаналіз» веде атаку; ця сторінка пояснює, що робить кожен крок і чому він працює.

Спробувати в інструменті

Вразливість: сітка має форму

Шифротекст — це цілі стовпці сітки, записані поспіль. Якщо вгадати правильну ширину, шифротекст розпадається рівно на ці стовпці — справжні, непошкоджені вертикальні зрізи сітки відкритого тексту. Помилитеся — і розріжете стовпці в довільних місцях, змішавши непов'язані літери. Саме на цьому важелі тримається вся атака.

Майстер, крок за кроком

  1. Кількість стовпців. Для доповненої (регулярної) сітки довжина шифротексту мусить ділитися на ширину без остачі — кандидатами є лише дільники, ранговані за тим, наскільки англійською виглядає найкраще розташування їхніх стовпців. Бал — це підказка, а не відповідь: на коротких текстах неправильна ширина може випередити правильну, і справжня перевірка — крок 2.

  2. Упорядкуйте стовпці. Шифротекст стоїть стовпцями; Анаграмування — це переміщення їх поруч, доки рядки не почнуть читатися англійською. Кожну сусідню пару оцінено за диграмами, які їхні рядки утворюють разом — TH, HE, IN світяться, QX ні. Стежте за позначками, зсувайте перспективних партнерів і довіряйте своєму оці мови більше, ніж числам: інструмент ніколи не пересуває стовпець за вас.

  3. Готово. Коли рядки читаються, відкритий текст відновлено — наприкінці можуть бути літери-доповнення. «Використати цей результат» несе порядок стовпців на вкладку «Інструмент», яка розшифровує все повідомлення.

Чому це працює: диграми пам'ятають порядок

Літери англійської не незалежні: деякі пари часті, більшість рідкі. Два справжні сусідні стовпці зшивають свої рядки в справжні англійські диграми; два чужі — у шум. Цієї єдиної статистики досить, щоб відбудувати ключ рішення за рішенням — той самий принцип, який зломщик ADFGVX застосовує на другому етапі, де стовпці — той самий об'єкт.

Що змінює подвійна перестановка

Порядок стовпців одинарної перестановки відновлюється пара за парою. Застосуйте шифр двічі — і жодна пара фрагментів шифротексту не є справжньою парою сусідів відкритого тексту: кожна проста статистика вирівнюється. Злам подвійної перестановки вручну — це ймовірні слова на міліметровому папері та переміщення форм; звісна ручна праця, поза межами цього інструмента.

Глосарій

Відкритий текст — Початкове читабельне повідомлення до шифрування.
Шифротекст — Перемішане повідомлення, отримане після шифрування.
Ключ — Секрет, що визначає, як саме змішується текст.
Перестановка — Зміна порядку символів без зміни самих символів.
Порядок стовпців — Порядок зчитування стовпців сітки перестановки — його задає ключове слово: літери за алфавітом підказують, який стовпець читають першим.
Анаграмування — Відновлення переставленого тексту зсувом фрагментів стовпців поруч, доки рядки не почнуть читатися мовою — класична ручна атака на перестановки.