Karakum Cipher / Қарақұм шифры

Track 3 — Learn & Apply · Crypto · 350 pts

RU — Спецификация шифра «Каракум»

Шифр «Каракум» — полиалфавитный шифр с одним ключевым словом. Назван в честь пустыни Каракум. Шифр исторически не был широко описан в открытой литературе; ниже приведена его полная спецификация.

Алгоритм шифрования

  1. Алфавит — латинские буквы A…Z (26 символов). Любые другие символы (пробелы, цифры, пунктуация) отбрасываются до шифрования.
  2. Ключ — короткое слово, состоящее из букв A…Z. В этой задаче длина ключа — от 5 до 10 букв.
  3. Каждой букве сопоставляется индекс: A=0, B=1, …, Z=25.
  4. Открытый текст шифруется по формуле: C[i] = (P[i] + K[i mod |K|]) mod 26, где |K| — длина ключа.
  5. Дешифрование — обратная операция: P[i] = (C[i] − K[i mod |K|] + 26) mod 26.

Пример

Если ключ — SAND, открытый текст HELLO шифруется так:

i01234
PH (7)E (4)L (11)L (11)O (14)
KS (18)A (0)N (13)D (3)S (18)
CZ (25)E (4)Y (24)O (14)G (6)

То есть HELLOZEYOG.

Ваш шифротекст

Расшифруйте следующий текст. Ключевое слово выберите из контекста этой задачи.

DHVDOMQBTIEWYYLEIS

Ответ

Открытый текст — короткая фраза на английском. Введите его заглавными латинскими буквами без пробелов в форму ниже.

KK — «Қарақұм» шифрының сипаттамасы

«Қарақұм» шифры — бір кілт сөзі бар полиалфавиттік шифр. Қарақұм шөлінің атымен аталған. Шифр тарихи түрде ашық әдебиетте кеңінен сипатталмаған; төменде толық сипаттамасы берілген.

Шифрлеу алгоритмі

  1. Алфавит — A…Z латын әріптері (26 таңба). Басқа таңбалар (бос орындар, сандар, тыныс белгілері) шифрлеу алдында алынып тасталады.
  2. Кілт — A…Z әріптерінен тұратын қысқа сөз. Бұл тапсырмада кілт ұзындығы — 5-тен 10 әріпке дейін.
  3. Әрбір әріпке индекс беріледі: A=0, B=1, …, Z=25.
  4. Ашық мәтін мына формула бойынша шифрланады: C[i] = (P[i] + K[i mod |K|]) mod 26, мұндағы |K| — кілт ұзындығы.
  5. Шифрды шешу — кері амал: P[i] = (C[i] − K[i mod |K|] + 26) mod 26.

Мысал

Егер кілт — SAND болса, HELLO ашық мәтіні мынадай шифрланады:

i01234
PH (7)E (4)L (11)L (11)O (14)
KS (18)A (0)N (13)D (3)S (18)
CZ (25)E (4)Y (24)O (14)G (6)

Яғни HELLOZEYOG.

Сіздің шифр мәтініңіз

Төмендегі мәтінді шешіңіз. Кілт сөзін осы тапсырманың контекстінен таңдаңыз.

DHVDOMQBTIEWYYLEIS

Жауап

Ашық мәтін — ағылшын тіліндегі қысқа сөз тіркесі. Бас әріптермен, бос орынсыз төмендегі формаға енгізіңіз.

Claim your flag / Получите флаг / Жалаушаны алыңыз

RU: Введите расшифрованный текст. Сервер вернёт ваш персональный флаг.
KK: Шешілген мәтінді енгізіңіз. Сервер сізге жеке жалаушаны қайтарады.

(автозаполнение из ?user=<id>)


Hints / Подсказки / Кеңестер

RU: Каждая подсказка снимает баллы. Открывайте только если действительно нужно.
KK: Әр кеңес ұпайды кемітеді. Шынымен қажет болғанда ғана ашыңыз.