Cabinet Noir>Навчання / Rail fence

Не знаєте, який це шифр? Розпізнайте його
learning.railFence.description
Типшифр перестановки
Зламзлам тривіальний
ЕпохаГромадянська війна в США
НазваЗигзаг-шифри; скітала як давній попередник
Режимишифрування · розшифрування · криптоаналіз

Навчання

Rail fence

Як працює шифр rail fence

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

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

Рецепт

  1. Виберіть кількість рейок, скажімо 3, і запишіть відкритий текст діагоналлю: A на рейці 1, T на рейці 2, T на рейці 3, A знову на рейці 2 і так далі — Зигзаг.

  2. Для ATTACKATDAWN паркан заповнюється так: рейка 1: A · A · A, рейка 2: T · C · T · T · A · W, рейка 3: T · K · D · N.

  3. Прочитайте рейки згори вниз: AAA, потім TCTTAW, потім KDN.

  4. Шифротекст — AAATCTTAWKDN. Розшифрування — той самий рух навпаки: порахуйте, скільки літер має кожна рейка, розріжте шифротекст відповідно і знову пройдіть парканом.

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

{{example:railFence-basic}}

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

Варіант зі зсувом

Класичний паркан завжди починається з верхньої рейки — перша літера шифротексту завжди перша літера повідомлення, подарунок нападникові. Зсув пересуває початкову рейку: з 3 рейками та зсувом 1 зигзаг починається з середньої рейки вниз. Той самий паркан, на одну річ більше для перевірки.

Чому це трамплін, а не фортеця

Ключ — два малі числа. Навіть найбільше налаштування тут — десять рейок — перевіряється за мить, і кожна проба оцінюється тим, чи читається текст. Тому rail fence — перша перестановка для зламу руками, а керований зломщик перетворює її на один повзунок.

Rail fence: практикум

Практикум 1 — ваш перший зигзаг

  1. Відкрийте інструмент, лишіть 3 рейки і введіть MEET ME AT NOON. Спостерігайте, як малюється Зигзаг: перші літери падають діагоналлю, потім відскакують.

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

  3. Перемкніться в розшифрування і вставте криптограму назад. Той самий паркан відбудовує повідомлення.

Практикум 2 — зсув

  1. Встановіть зсув 1 (старт із середньої рейки) і зашифруйте те саме повідомлення ще раз.

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

  3. Спробуйте максимальний зсув (старт із нижньої рейки): зигзаг спершу йде вгору. Кожне налаштування — лише інший спосіб пройти тим самим парканом.

Практикум 3 — від rail fence до columnar

  1. Зашифруйте повідомлення на 3 рейках і придивіться до них: кожна — «стовпець» зигзагоподібної сітки.

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

  3. Тому обидва шифри падають від однієї зброї — відбудови порядку — і тому крок два зломщика columnar — старший брат повзунка rail fence.

Злам rail fence

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

{{challenge:railFence-demo}}

Вразливість: простір ключів, що вміщується в голові

Щонайбільше десять рейок і жменя зсувів: кілька десятків налаштувань, кожне перевіряється одним поглядом. Курс статистики не потрібен — єдине питання, який запис змушує рядки читатися англійською. Тому rail fence — трамплін до зламу перестановок: досвід рухатися повзунком, доки не зчитується — це та сама навичка, якої вимагає зломщик Columnar, мінус важка частина.

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

  1. Рухайте. Пересуньте повзунок кількості рейок і повзунок зсуву. Паркан перемальовується з кожною поділкою, а кандидат відкритого тексту оновлюється наживо — неправильні налаштування показують сплутані рядки, правильне показує слова.

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

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

Інструмент ніколи не рухає повзунок за вас. Легкий пресет лише позначає, де лічильник сягає піку — вказівник, а не клік, бо пошук і є уроком.

Де це перестає працювати

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

Глосарій

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