Криптография.
Никто не может сказать точно, когда же был придуман самый первый шифр на свете. Широко известно, что задолго до Рождества Христова. Скорее всего, сразу после появления письменности. Если верить исследователям египетских пирамид, то во время раскопок были обнаружены склепы с очень странными надписями. Там одни иероглифы заменялись на другие. Делалось это не столько во имя сохранения тайны, сколько для придания текстам большей важности. Примеры шифровок можно найти и в Библии — так, царь Вавилона за счет перестановки алфавита наоборот (первая буква стала последней, вторая — предпоследней и т.д.) превратился в царя Сессах. Такой метод перестановки символов называется атбаш. В той же книге упоминается и награда «первому криптоаналитику» — пророка Даниила за прочтение загадочной надписи облекли в багряницу и провозгласили третьим властелином царства. Понятно, что шифры тех времен были примитивны. Заменялись буквы, фразы, понятия, так что сообщения либо легко поддавались дешифровке даже без знания ключа, либо не читались вообще. Сегодня криптология в основном изучает однозначные и механистические шифры, которые подразумевают жесткий алгоритм получения как защищенного, так и открытого текста. Самый простой из подобных алгоритмов — так называемый способ Цезаря, в котором все символы исходного алфавита заменяются знаками шифрового алфавита со «смещением» на определенное значение. Если оно равно, например, 3, то вместо буквы D будет A, вместо E — B, вместо C — Z и так далее. Таких перестановок может быть несколько — например, для первой буквы используется один вариант, для второй — уже следующий, для третьей — еще один. В этом случае шифр называется многоалфавитным. Для обратной расшифровки понадобится всего-навсего знать все значения смещений. Их, кстати, можно передавать с помощью не только цифр, но и ключевых слов. Конечно же, «древние» шифры разгадать не сложно. Чтобы узнать исходный текст, применяются самые различные методы, в основном — статистические. Один из таких алгоритмов — частотный анализ появления букв. Именно таким методом воспользовался знаменитый сыщик Шерлок Холмс в рассказе «Пляшущие человечки». Когда ему удалось получить достаточно длинный текст, он определил, с какой частотой повторяются те или иные символы. Если какой-либо символ повторяется через определенные промежутки, то, скорее всего, этот знак обозначает «пробел». К примеру, Холмс понял, что флажки в руках человечков употребляются лишь для того, чтобы отмечать концы отдельных слов. Букв в алфавите много, и распределение их достаточно традиционно для любых текстов. Опытный криптоаналитик может и вовсе угадать одно из значимых слов. Известный сыщик довольно быстро разгадал шифрованное послание, поскольку сделал ряд верных предположений. Так, две записки начинались со слова из четырех букв, и Холмс догадался, что это — имя девушки, к которой было обращено послание. Дальнейшая расшифровка была делом техники. Так что не стоит полагаться на такие коды — они довольно хорошо изучены и не раз были описаны в художественной литературе. Здесь можно процитировать Брюса Шнайдера, автора потрясающих книг о криптологии: «Есть шифры, которые помешают читать ваши файлы младшей сестре, а есть те, которые станут непреодолимой стеной перед криптоаналитическими бюро правительства США». Попытаемся понять, каковы же критерии достаточно сильного шифрования.
|