Криптография Тема 01 / 07
Блок 01 · Криптография

«Секрет римского полководца»

Шифр Цезаря и ROT13

Сдвиг алфавита, шифрование и расшифровка вручную — самый первый шаг в мир криптографии.

Теория

Шифр Цезаря и ROT13

Шифр Цезаря — один из старейших методов шифрования. Юлий Цезарь использовал сдвиг на 3 позиции вправо в латинском алфавите, чтобы переписываться с военачальниками.

Принцип: каждая буква заменяется другой, находящейся через N позиций в алфавите (N — ключ). При сдвиге 3: А→Г, Б→Д, В→Е и т.д. Когда алфавит заканчивается — отсчёт идёт с начала (Ю→Б, Я→В).

Формула
caesar.math
Шифрование:   C = (P + N) mod 32
Расшифровка:  P = (C − N + 32) mod 32

32 — количество букв в русском алфавите без Ё

ROT13 — частный случай

ROT13 — это шифр Цезаря со сдвигом 13 для латинского алфавита (26 букв). Особенность: шифрование и расшифровка — одна и та же операция. ROT13(ROT13(текст)) = текст.

rot13.table
A↔N   B↔O   C↔P   D↔Q   E↔R   F↔S   G↔T
H↔U   I↔V   J↔W   K↔X   L↔Y   M↔Z

HELLO → URYYB      URYYB → HELLO
Запомни. Шифр Цезаря и ROT13 — моноалфавитные: одна буква всегда меняется на одну и ту же. Поэтому их легко взломать перебором всех 32 сдвигов.
Практикум
Практика

Практическое задание

Выполняется вручную, по строке алфавита. Выбери свой вариант.

Задание 1 · Шифрование и расшифровка
Вариант А
  1. Зашифруй слово ШПИОН со сдвигом 5.
  2. Расшифруй: КГПСН (сдвиг 3).
  3. Расшифруй ROT13: FLAP — получится английское слово.
Вариант Б
  1. Зашифруй слово АГЕНТ со сдвигом 7.
  2. Расшифруй: УДФТПА (сдвиг 4).
  3. Расшифруй ROT13: TANG — получится английское слово.
Задание 2 · CTF-флаг

Расшифруй флаг — расшифрованная строка и есть ответ.

Вариант А
  1. Флаг: ЕЬСФ{ЙЩЕБ_ЗЦШСБР_УШЬЯЭСЮ}
  2. Ключ: сдвиг 17 вправо.
Вариант Б
  1. Флаг: ЯЦЛО{ЬПНУО_ШЛФПРШ_ЦРОХЩ}
  2. Ключ: сдвиг 11 вправо.
Тема 02 →«Тайна вращающегося диска»