Книжный шифр
Вставьте текст, который есть и у вас, и у получателя, затем запишите сообщение позициями в нём — сквозным номером слова, строкой и словом или страницей, строкой и словом. Расшифруйте строку чисел так же и посмотрите, на какое слово указывает каждое число.
Обоим участникам нужен ровно этот текст. Поставьте строку, содержащую только ---, между страницами. Строки без слов не учитываются.
Чередование даёт повторяющейся букве разные номера при каждом появлении, и это скрывает повторы, по которым ищет криптоаналитик. Расшифровка одинакова в обоих случаях.
Без косых черт декодер не может понять, где кончаются слова.
Расчёт
Каждое слово или буква сообщения ищется в тексте-ключе. Записывается позиция.
| Сообщение | Записано | Где в книге |
|---|---|---|
| M | 58 | Страница 1, строка 5, слово 8: «mankind» |
| e | 7 | Страница 1, строка 1, слово 7: «events» |
| e | 7 | Страница 1, строка 1, слово 7: «events» |
| t | 3 | Страница 1, строка 1, слово 3: «the» |
| разделитель слов | / | |
| a | 24 | Страница 1, строка 2, слово 11: «another» |
| t | 3 | Страница 1, строка 1, слово 3: «the» |
| разделитель слов | / | |
| d | 15 | Страница 1, строка 2, слово 2: «dissolve» |
| a | 24 | Страница 1, строка 2, слово 11: «another» |
| w | 1 | Страница 1, строка 1, слово 1: «When» |
| n | 10 | Страница 1, строка 1, слово 10: «necessary» |
Как пользоваться книжным шифром
- 1. Вставьте текст-ключ. Это ваша книга. Образец — первое предложение Декларации независимости, которая находится в общественном достоянии. Тот, кто расшифровывает, должен иметь ровно такой же текст, включая переносы строк. Строка, содержащая только
---, начинает новую страницу. - 2. Выберите, на что указывает позиция. Целое слово, первая буква слова или отдельная буква. Первые буквы — самый гибкий вариант, потому что почти любая буква начинает какое-нибудь слово.
- 3. Выберите, как записывать позиции. Один сквозной номер,
строка:позицияилистраница:строка:позиция. Зашифруйте сообщение или переключитесь на «Расшифровать» и вставьте числа. - 4. Проверьте расчёт. Таблица перечисляет каждое слово или букву, записанную для них позицию и место в тексте. Знак
?означает, что книга не может его дать.
Как работает книжный шифр
Книжный шифр заменяет каждое слово или букву числом, которое говорит, где найти их в заранее согласованном тексте. Алгоритма и таблицы ключей нет: ключ — сама книга. Тот, у кого нет книги, видит список чисел; тот, у кого она есть, читает сообщение, находя каждое число. Варианты, которые считают по странице, строке и слову, иногда называют шифрами Оттендорфа.
Возьмите образец текста и сообщение Meet at dawn, записанное первыми буквами и одним сквозным номером. Если считать слова с начала, mankind — слово 58, events — слово 7, the — слово 3, another — слово 24, и так далее:
Первые буквы, сквозные номера
M E E T / A T / D A W N 58 7 7 3 / 24 3 / 15 24 1 10
Переключите адрес на строка:позиция, и то же сообщение станет 5:8 1:7 1:7 1:3 / 2:11 1:3 / 2:2 2:11 1:1 1:10: mankind — восьмое слово в пятой строке. Длинные позиции легче проверить глазами, а в печатной книге именно так и находили слова.
Целые слова, первые буквы или отдельные буквы
- Целые слова — самый компактный вариант и самый трудный в обеспечении: каждое слово сообщения должно встречаться в книге.
The people dissolveздесь записывается как3 13 15, а слово, которого нет в книге, становится?. - Первые буквы требуют только слова, начинающегося на нужную букву, поэтому несколько сотен слов обычной прозы покрывают большую часть алфавита. Q, X и Z — обычные пробелы.
- Отдельные буквы позволяют указать на любую букву текста, поэтому покрытие почти полное — ценой более длинных сообщений и более крупных чисел.
Повторы выдают сообщение
Если E всегда записывается как 7, число 7 встречается так же часто, как E в английском тексте, и криптоаналитик может начать именно с него. Опция чередовать вхождения отправляет каждое повторение буквы к другому вхождению — E становится 7, затем 33, — поэтому то же сообщение читается как 58 7 33 3 / 24 14 / 15 25 1 10. Декодер читает обе версии одинаково.
Где использовали книжные шифры
Самый известный пример — бумаги Била: брошюра, напечатанная в Виргинии в 1885 году, содержит три числовых шифра, которые якобы указывают место зарытого клада. Второй был решён взятием первой буквы слова под каждым номером в Декларации независимости — именно этим методом пользуется этот инструмент. Два других публично не решены, и многие историки сомневаются, что история, стоящая за ними, правдива. Переписка Бенедикта Арнольда 1780 года с британским офицером Джоном Андре, как сообщается, использовала код, привязанный к странице, строке и слову в печатных книгах, среди которых «Комментарии» Блэкстоуна (Commentaries) и словарь. В 1942 году два немецких агента в Каире использовали роман Дафны дю Морье Rebecca в качестве ключа для своих радиосообщений.
У всех трёх общий недостаток: ключ — физический предмет. Издание, печать и даже переносы строк меняют позиции, поэтому инструмент работает с вставленным текстом. И книгу можно найти. Книжная полка подозреваемого шпиона — короткий список кандидатов, и проверка каждого занимает секунды. Относитесь к этому как к головоломке и учебному инструменту, а не как к защите.
Часто задаваемые вопросы
- Что такое книжный шифр?
- Шифр, который заменяет слова или буквы их позициями в тексте, известном обоим участникам. Текст и есть ключ. Позиции могут быть сквозным порядковым номером слова, строкой и словом или страницей, строкой и словом.
- Как расшифровать книжный шифр без книги?
- Нужно найти книгу. Посмотрите на самое большое число: оно задаёт минимальную длину текста, что сужает круг поиска. Затем проверяйте правдоподобных кандидатов — Библию, известную речь, роман, которым владел отправитель, — вставляя каждый в поле ключа в режиме «Расшифровать». Кандидат, который даёт читаемый текст, и есть ключ; кандидат, который даёт бессмыслицу, — нет.
- Что означают номера страницы, строки и слова?
- Три числа, например 2:14:5, означают страницу 2, строку 14, слово 5. Поскольку они указывают на одно конкретное издание, отправитель и получатель должны держать один и тот же тираж. Инструмент считает строки внутри каждой страницы и начинает счёт строк заново после каждой строки, содержащей только три дефиса.
- Какой текст подходит в качестве ключа?
- Выберите длинный текст, который вы оба можете получить без изменений и в котором есть широкий набор слов. Для схем с первыми буквами проверьте, что каждая нужная буква начинает какое-нибудь слово. Для игрушечного примера достаточно нескольких сотен слов, но целая книга лучше, потому что даёт больше вариантов для каждой буквы.
- Почему инструмент пишет знак вопроса?
- В тексте-ключе нет подходящего слова или буквы. Выберите другую единицу, например первые буквы или отдельные буквы, или возьмите более длинный текст. В режиме «Расшифровать» знак вопроса означает, что число указывает за конец книги или имеет неверную форму для выбранного способа записи адреса.
- Как работал шифр Била?
- В решённом втором шифре каждое число — это позиция слова в Декларации независимости, а открытая буква — первая буква этого слова. В числах брошюры есть ошибки, а её история широко подвергается сомнению.
- Надёжен ли книжный шифр?
- Не по современным меркам. Если противник узнаёт книгу, он читает всё. Повторяющиеся числа выдают частоты букв, а самое большое число раскрывает размер книги. Для всего личного используйте настоящее шифрование.