
Принципы Керкгоффса
Хотя можно предположить, что шифр был бы более безопасен, если мы скрываем и алгоритм шифрования/дешифрования, и ключ засекречивания, это не рекомендуется. Согласно принципу Керкгоффса, нужно всегда предполагать, что противник — Ева — знает алгоритм кодирования/дешифрования. Противодействие шифра атаке должно базироваться только на тайне ключа. Другими словами, предполагается, что ключ должен быть настолько труден, что не надо скрывать алгоритм кодирования/дешифрования. Эти принципиальные положения станут более ясны, когда мы будем изучать современные шифры. Для современных шифров сегодня существует немного алгоритмов. Множество ключей (Ключевой домен) для каждого алгоритма, однако, настолько большое число, что мешает противнику найти ключ.
Криптоанализ
Криптография — наука и искусство создания секретных кодов, криптоанализ — наука и искусство взламывания этих кодов. В дополнение к изучению методов криптографии мы также должны изучить методы криптоанализа.
Это необходимо не для того, чтобы взламывать коды других людей, а чтобы оценить уязвимые места наших криптографических систем. Изучение криптоанализа помогает нам создавать лучшие секретные коды. Есть четыре общих типа атак криптоанализа, показанные на рис. 4.3. В этой и следующих лекциях мы будем разбирать некоторые из этих атак на конкретные шифры.
Рис. 4.3. Атаки криптоанализа
Атака только на зашифрованный текст
В атаке только на зашифрованный текст Ева имеет доступ только к некоторому зашифрованному тексту. Она пробует найти соответствующий ключ и исходный текст. При этом, согласно предположению, Ева знает алгоритм и может перехватить зашифрованный текст. Атака только зашифрованного текста — самая вероятная, потому что Еве для нее нужен только сам текст. Шифр должен серьезно препятствовать этому типу атаки и не позволить дешифрование сообщения противником. Рисунок 4.4 иллюстрирует процесс атаки.
Рис. 4.4. Атака только на зашифрованный текст
В атаке только на зашифрованный текст могут использоваться различные методы. Мы рассмотрим здесь только некоторые из них.
Атака грубой силы
При методе грубой силы, или методе исчерпывающего ключевого поиска, Ева пробует использовать все возможные ключи. Мы предполагаем, что Ева знает алгоритм и знает множество ключей (список возможных ключей). При использовании этого метода перехватывается исходный текст и задействуются все возможные ключи, пока не получится исходный текст. Создание атаки грубой силы было в прошлом трудной задачей; сегодня с помощью компьютера это стало проще. Чтобы предотвратить этот тип атаки, числовозможных ключей должно быть очень большим.
Статистическая атака
Криптоаналитик может извлечь выгоду из некоторых свойственных языку исходного текста характеристик, чтобы начать статистическую атаку. Например, мы знаем, что буква E — наиболее часто используемая буква в английском тексте. Криптоаналитик находит наиболее часто используемый символ в зашифрованном тексте и принимает, что это соответствующий символ исходного текста — E. После определения нескольких пар аналитик может найти ключ и расшифровать сообщение. Чтобы предотвратить этот тип атаки, шифр должен скрывать характеристики языка.