Давай изучим два японских алфавита. В японском языке используется три системы письменности. Одна называется «кандзи» и представляет собой просто китайские иероглифы, которые, однако, в японском языке читаются по-японски (на самом деле это не совсем так, но в подробности мы сейчас вдаваться не будем). Обычно это корни слов. Две другие системы письма — это хирагана и катакана. Обе представляют собой слоговые письменности, в которых каждый знак обозначает один слог.
Начнём с хираганы. Эта система письма предназначена для записи японских слов. Обычно этой азбукой передают те слова, для записи которых нет иероглифа кандзи, а также для частицы, суффиксы и тому подобное. Также её можно употреблять вместо кандзи, если предполагается, что читатель может не знать каких-то иероглифов либо эти иероглифы незнакомы самому автору. Тексты, полностью записанные хираганой, обычно нужны для обучения детей-дошкольников. В таких текстах также используются пробелы между словами. Вот таблица:
В употреблении этих знаков есть свои особенности, и для их понимания необходимо учить японский язык. Мы этим сейчас заниматься не будем. Достаточно лишь сказать, что символ на пересечении строки и столбца читается как слог, составленный из согласной, которой обозначена строка, и гласной, которой обозначен столбец.
Вторая азбука — катакана — представляет собой тот же набор символов, только он используется для иных целей. Во-первых, при помощи катаканы записываются слова, заимствованные из тех языков, в которых не используются китайские иероглифы. Во-вторых, она применяется для записи имён, звукоподражательных слов и всяких научных, технических и прочих специальных терминов.
Как видно, набор символов здесь больше Это потому, что в исконном японском языке нет соответствий для некоторых согласных, которые присутствуют в заимствованных словах. Я не стал вносить в эту таблицу некоторые несущественные и редко используемые знаки. Всё это ты, если заинтересуешься, сможешь найти в специальной литературе.
Люди придумали и другие алфавиты — так называемые искусственные алфавиты для искусственных языков. Самый известный из них — алфавит тенгвар, который был разработан профессором Дж. Толкином для одного из придуманных им искусственных языков своего выдуманного мира. Другие искусственные алфавиты использовались для мистификаций. Например, существует книга под названием «Codex Seraphinianus». Это богато иллюстрированная книга, написанная на неизвестном языке неизвестным алфавитом. Лингвистический анализ показывает, что это действительно какой-то язык, а не случайный набор символов. Автор не раскрывает смысла написанного, а остальным до сих пор не удалось расшифровать её. Но еще более знаменита рукопись Войнича, которая была составлена в Средние века, но до сих пор люди даже и приблизиться не смогли к её расшифровке. Скорее всего, это тоже мистификация.
Наконец, среди искусственных алфавитов необходимо упомянуть алфавит философского языка ифкуиль, который настолько сложен, что те, кто говорят на нём, должны потратить длительное время, чтобы выразить самые простые фразы. Письменность его настолько же сложна, насколько и сам этот язык.
Все эти вскользь затронутые темы ты сможешь самостоятельно изучить при помощи дополнительных источников, в первую очередь, Интернета.
На этом мы закончим краткое введение в различные системы письменности и алфавиты.
Для чего мы всё это изучили? Всё просто. Во-первых, теперь ты сможешь распознавать знаки и, соответственно, языки, которыми, предположительно, записаны те или иные тексты. Во-вторых, теперь у тебя появился огромный набор разных символов, которые можно использовать в работе. Так что время от времени возвращайся к этой главе, а ещё лучше — заведи специальный альбом или картотеку, куда выписывай все встречающиеся тебе образцы письменности.
Неделя 8. Шифрование на основе редкой книги
Уф-ф-ф. Это было непросто. Столько новой информации удалось получить за прошлую неделю, не правда ли? Но теперь ты можешь отличать одни алфавиты от других, умеешь распознавать различные языки и при желании сможешь более интересно зашифровывать свои тайны. Ведь ты теперь знаешь, чем отличаются знаки-буквы от знаков-слогов.
Но всё это слишком просто. Давай постепенно переходить к шифрам, которые обладают очень мощной защитой от взлома. Как ты уже знаешь, все эти одноалфавитные и многоалфавитные замены никого не остановят. Они будут препятствием только для несведущих людей, а грамотный криптоаналитик взломает такие шифры, даже не поперхнувшись. Даже если ты будешь обозначать слоги разными символами, это не спасёт, ведь как только накопится достаточный объём шифрограмм, в них будут обнаруживаться многочисленные закономерности. А чем больше закономерностей, тем проще криптоаналитику расшифровать секрет.
А теперь представь, что шифрограмма состоит из последовательности чисел, среди которых ни одно не повторяется дважды. Как такое расшифровать? К скрытой таким способом тайне и подступиться-то страшновато. Даже если мы при помощи этого метода напишем целую книгу большого объёма, горе-криптоаналитику ничего не останется, как кусать локти. У него ничего не получится. Он повертит эти числа и так, и эдак, но сопоставить им какой-то смысл будет практически невозможно.
«Книгу»… Обрати внимание на это слово в предыдущем абзаце. Оно должно натолкнуть тебя на размышления. Предлагаю тебе сейчас отложить этот текст и подумать, как можно использовать книгу для шифрования.
Итак, в результате размышлений тебе в голову должен был прийти, по крайней мере, один способ шифрования при помощи книги. Давай-ка попробуем проверить. Я приведу несколько способов, которые пришли в голову мне, и ты сможешь сравнить свои догадки с моими. Вдруг тебе удалось меня превзойти?
В книге напечатан текст, который состоит из предложений, слов и букв (и других знаков, но они нам сейчас не очень-то и интересны). Мы можем выбрать из книги эти объекты. Но предложения выбирать крайне непродуктивно, поскольку вряд ли в произвольной книге ты найдёшь именно то предложение, которое хочется тебе написать — только если оно уж слишком простое и обыденное.
Слова. Да, возможно. Слов в книге много, так что можно выбирать слова. Надо просто пересчитать все слова и каждому назначить его номер. Но может случиться, что ты не найдёшь в книге нужное слово. К тому же такой способ шифрования очень трудоёмкий: тебе, по сути, придётся выучить наизусть текст из книги, чтобы помнить, где какое слово находится.
Буквы. Мы с тобой уже знаем, что буква — это минимальная графическая единица информации. Буквы не передают смысл, но их можно использовать для создания единиц более высокого уровня (то есть слов), которые смысл уже передают. Так что проще всего воспользоваться для шифрования буквами. Соответственно, на буквы надо как-то указывать, то есть необходима система индексации.