Криптоатаки

Надежность или стойкость шифрования определяется объемом работы криптоаналитика, необходимой для вскрытия системы. Шифрсистема может служить объектом нападения противника, располагающего тем или иным интеллектуальным и вычислительным потенциалом. Возможности потенциального противника определяют требования, предъявляемые к надежности шифрования.
Исходная информация и цели криптоаналитика могут быть разными. Несомненно, основная цель противника состоит в получении конфиденциальной информации. Целью нападения может служить также примененный секретный ключ, с помощью которого криптоаналитик может вскрывать другие криптограммы. Шифрсистема может быть невосприимчивой к одним угрозам и быть уязвимой по отношению к другим. Попытки противника по добыванию зашифрованной информации обычно называют криптоатаками. 
В криптографии с секретным ключом обычно рассматривают следующие криптоатаки (см., например, [Алф01], [Бра99]).

•	Атака на основе шифртекста: криптоаналитик располагает шифртекстами , полученными из неизвестных открытых текстов  различных сообщений. Требуется найти хотя бы один из  (или соответствующий ключ ), исходя из достаточного числа  криптограмм, или убедиться в своей неспособности сделать это. В качестве частных случаев возможно совпадение ключей:  или совпадение открытых текстов: . 
•	Атака на основе известного открытого текста: криптоаналитик располагает парами    открытых и отвечающим им шифрованных текстов. Требуется определить ключ  для хотя бы одной из пар. В частном случае, когда , требуется определить ключ  или,  убедившись в своей неспособности сделать это, определить открытый текст  еще одной криптограммы , зашифрованной на том же ключе.   
•	Атака на основе выбранного открытого текста отличается от предыдущей лишь тем, что криптоаналитик имеет возможность выбора открытых текстов  Цель атаки  та же, что и предыдущей. Подобная атака возможна, например, в случае, когда криптоаналитик имеет доступ к шифратору передающей стороны, или в системах опознавания “свой-чужой”. 
•	Атака на основе выбранного шифртекста отличается от второй атаки лишь тем, что криптоаналитик имеет возможность выбора шифртекстов . Цель атаки  та же, что и во втором случае. Подобная атака возможна, например, в случае, когда криптоаналитик имеет доступ к шифратору принимающей стороны. 

Атаки на основе выбранных текстов считаются наиболее опасными. Иногда к указанным атакам добавляют и другие. Шифр, выдерживающий все возможные атаки, можно признать стойким или надежным. 
Различие в действенности криптоатак можно прокомментировать на примере криптоанализа поточного шифра простой замены. Хотя этот шифр легко вскрываем даже при использовании атаки на основе шифртекста, это все-таки требует некоторых усилий. При проведении атаки на основе известного открытого текста задача становится вовсе тривиальной, как только в доступных открытых текстах встретятся все буквы алфавита. Наконец, при атаке на основе выбранного открытого текста ничего не нужно ждать, так как ключ автоматически получается при зашифровании всех букв алфавита.
При оценке эффективности любой криптоатаки обычно пользуются общепринятым в криптографии правилом Керкгоффса (голландского криптографа XIX в.). Это правило изложено в книге “Военная  криптография”, изданной в 1883 г. В ней сформулировано шесть следующих требований к системам шифрования. 

•	Система должна быть нераскрываемой, если не теоретически, то практически.
•	Компрометация системы не должна причинять неудобств ее пользователям.
•	Секретный ключ должен быть легко запоминаемым  без каких-либо записей.
•	Криптограмма должна быть представлена в такой форме, чтобы ее можно было передать по телеграфу.
•	Аппаратура шифрования должна быть портативной и такой, чтобы ее мог обслуживать один человек.
•	Система должна быть простой. Она не должна требовать ни запоминания длинного перечня правил, ни большого  умственного напряжения.

Второе из этих правил и стало называться правилом Керкгоффса. Суть его состоит в том, что при проведении криптоанализа можно считать известной систему шифрования. Стойкость (или надежность) шифрования должна определяться лишь секретностью ключа шифрования. Признание всеми этого принципа в криптографии связано с тем, что “шила в мешке не утаишь”. Рано или поздно те или иные сведения об используемой шифрсистеме становятся известными. В военных условиях могут  быть захвачены узлы связи с шифртехникой. Может потерпеть аварию и попасть в руки противника самолет или судно, оборудованные шифрсредствами. Нельзя исключать предательства шифровальщика и т.п. Тем не менее шифры, используемые специальными службами, всемерно охраняются. Это обусловлено необходимостью в дополнительном запасе прочности, поскольку до сих пор создание шифров с доказуемой стойкостью является очень сложной проблемой. 
В [Бра99] используется термин криптосистема ограниченного использования для систем, стойкость которых основывается на сохранении в секрете самого алгоритма шифрования. Простейшим историческим примером такой системы является шифр Цезаря. Там же вводится термин криптосистема общего использования для систем, стойкость которых основывается не на секретности алгоритма шифрования, а на секретности используемого ключа. 
Обоснование надежности шифрсистем осуществляется, как правило, теоретически и экспериментально при моделировании криптоатак с привлечением группы высококвалифицированных специалистов, которым предоставляются благоприятные условия для работы и необходимая техника. На государственном уровне гарантию надежности криптографической защиты дают уполномоченные для этой цели организации. В России такой организацией является ФАПСИ. Любые средства шифрования, используемые государственными организациями, должны иметь сертификат ФАПСИ. 
Рассмотрение вопросов надежности шифрования невозможно без введения качественной и количественной мер. В криптографии рассматривают два подхода к стойкости  теоретическую (или безусловную)  стойкость  и практическую (или вычислимую) стойкость. При рассмотрении вопроса о теоретической стойкости шифров отвлекаются от реальных временных и сложностных затрат по вскрытию шифра (что определяет подход к практической стойкости). Во главу угла ставится принципиальная возможность получения некоторой информации об открытом тексте или использованном ключе. Теоретически стойкие (или совершенные) шифры характеризуются тем, что сама задача дешифрования для них становится бессмысленной. Это значит, что никакой метод криптоанализа, включая полный перебор ключей, не позволяет не только определить ключ или открытый текст, но даже получить некоторую информацию о них. Далее будет дано формальное определение совершенного шифра.
Указанные криптоатаки относятся к разряду пассивных атак. Так классифицируются действия потенциального противника, который “пассивно изучает” передаваемые по каналу связи шифрованные сообщения, может их перехватить и подвергнуть криптоанализу с целью получения информации об  открытом  тексте  или  использованном ключе. Однако современные технические средства позволяют потенциальному противнику “активно” вмешиваться в процесс передачи сообщения. Обычно различают два типа активных атак, которые носят названия имитации и подмены сообщения. Атака имитации состоит в том, что противник “вставляет” в канал связи сфабрикованное им “шифрованное” сообщение, которое на самом  деле  не  передавалось  от  законного отправителя к получателю. При этом противник рассчитывает на то, что получатель воспримет это сфабрикованное сообщение как подлинное (аутентичное). Атака подмены состоит в том, что противник, наблюдая передаваемое по каналу связи подлинное сообщение от отправителя, “изымает” его и заменяет поддельным3). На активные атаки также распространяется правило Керкгоффса. 
Различные шифры могут быть более или менее уязвимыми к активным атакам. Способность самого шифра (без использования дополнительных средств) противостоять активным атакам обычно называют имитостойкостью шифра. Количественной мерой имитостойкости шифра служат вероятности имитации и подмены соответственно. Эти вероятности определяют шансы противника на успех при навязывании получателю ложного сообщения. Имеются достижимые нижние оценки этих вероятностей. Естественно считать наиболее имитостойкими шифры, для которых эти нижние оценки достигаются. 
Нас, в первую очередь, будут интересовать совершенные шифры с достижимыми нижними оценками вероятностей имитации и подмены.