Выбрать главу

Калкашанди писал в своей книге: «Если вы хотите прочесть сообщение, которое вы получили в зашифрованном виде, то прежде всего начните подсчет букв, а затем сосчитайте, сколько раз повторяется каждый знак, и подведите итог в каждом отдельном случае. Если изобретатель шифра был очень внимателен и скрыл в сообщении все границы между словами, то первая задача, которая должна быть решена, заключается в нахождении знака, разделяющего слова. Это делается так: вы берете букву и работаете, исходя из предположения, что следующая буква является знаком, делящим слова. И таким образом вы изучаете все сообщение с учетом различных комбинаций букв, из которых могут быть составлены слова…

Если получается, тогда все в порядке; если нет, то вы берете следующую по счету букву и т. д., пока вы не сможете установить знак раздела между словами. Затем нужно найти, какие буквы чаще всего встречаются в сообщении, и сравнить их с образцом частоты встречаемости букв, о котором упоминалось прежде.

Когда вы увидите, что одна буква попадается чаще других в данном сообщении, вы предполагаете, что это буква «Алеф». Затем вы предполагаете, что следующая по частоте встречаемости будет буквой «Лам». Точность вашего предположения должна подтверждаться тем фактом, что в большинстве контекстов буква «Лам» следует за буквой «Алеф»…

Затем первые слова, которые вы попытаетесь разгадать в сообщении, должны состоять из двух букв. Это делается путем оценки наиболее вероятных комбинаций букв до тех пор, пока вы не убедитесь в том, что вы стоите на правильном пути. Тогда вы глядите на их знаки и выписываете их эквиваленты всякий раз, когда они попадаются в сообщении.

Нужно применять точно такой же принцип по отношению к трехбуквенным словам этого сообщения, пока вы не убедитесь, что вы на что-то напали. Вы выписываете эквиваленты из всего сообщения. Этот же принцип применяется по отношению к словам, состоящим из четырех и пяти букв, причем метод работы прежний.

Всякий раз, когда возникает какое-либо сомнение, нужно высказать два, три предположения или еще больше и выписать каждое из них, пока оно не подтвердится на основании другого слова».

Дав это четкое объяснение, Калкашанди приводит пример раскрытия шифра. Дешифрованная криптограмма состоит из двух стихотворных строк, зашифрованных с помощью условных символов. В заключение Калкашанди отметил, что восемь букв не было использовано и что это именно те буквы, которые находятся в конце перечня, составленного по частоте появления.

Он подчеркнул: «Однако это простая случайность: буква может быть поставлена не на то место, которое она должна занимать в вышеупомянутом перечне». Такое замечание свидетельствует о наличии большого опыта в сфере криптоанализа. Чтобы расставить все точки над «і», Калкашанди приводит второй пример криптоанализа достаточно длинной криптограммы. Этим примером он и закончил раздел по криптологии.

Арабы первыми обратили внимание на возможность использования стандартных слов и выражений для дешифровки. Так, первый широко известный филолог среди арабов Халиль ибн Ахмад аль-Фарахиди (около 718–791), дешифровавший криптограмму на греческом языке, посланную ему византийским императором, заявил:

«Я сказал себе, что письмо должно начинаться со слов «Во имя Бога» или как-нибудь в этом роде. Итак, я составил на основе этого первые буквы, и все оказалось правильным». На основе открытого им метода дешифрования он написал книгу «Китаб аль-Маумма» («Книга тайного языка»).

История замалчивает то, как арабы использовали свои блестящие криптоаналитические способности, которые продемонстрировал Калкашанди, для раскрытия военных и дипломатических криптограмм, или какое влияние это оказало на мусульманскую историю. Однако понятно, что вскоре эти знания перестали применяться на практике и были забыты. Один эпизод, который состоялся почти 200 лет спустя, ярко демонстрирует эту деградацию в сфере криптоанализа.