Стойкость алгоритмов шифрования

Для каждого открытого сообщения существует априорная вероятность выбора, поскольку механизм выбора открытых сообщений можно представить как некоторый вероятностный процесс. Аналогично выбор каждого ключа тоже имеет априорную вероятность. Противник, перехватывающий зашифрованные сообщения, может вычислить апостериорные вероятности как появления открытого сообщения, так и вероятность появления ключа. Набор апостериорных вероятностей представляет собой систему принадлежащих противнику сведений об используемых ключах и передаваемых открытых сообщениях. Причем перед началом перехвата шифрованных сообщений противник имеет в своем распоряжении некоторый набор априорных вероятностей об открытых сообщениях и ключах. С практической точки зрения это означает, что противник осведомлен об используемой системе засекреченной связи.
Предположим, что противнику известно все криптографические преобразования, используемые в системе засекреченной связи, а также ключевое пространство, причем, как было сказано выше, секретность системы зависит от выбора конкретного ключа. В результате перехвата некоторого объема зашифрованных сообщений и вычисления апостериорных вероятностей противник поймет, что им будет соответствовать единственное решение об использовании ключа или передаче открытого сообщения (точка единственности принятия решения), удовлетворяющего данным вероятностям. Понятно, что подобный вывод вполне может привести к раскрытию системы противником. (Строгие математические доказательства существования точки единственности принятия решения и расчеты в данной книге не приводятся.) Под раскрытием системы засекреченной связи или алгоритма шифрования мы будем понимать одну из следующих планируемых противником операций, направленных на достижение этой цели:
• полное раскрытие. Противник находит путем вычислений секретный ключ системы;
• нахождение эквивалентного алгоритма. Противник находит алгоритм, функционально эквивалентный алгоритму зашифрования, не имея при этом представления об используемом секретном ключе;
• нахождение открытого сообщения. Противник находит открытое сообщение, соответствующее одному из перехваченных зашифрованных;
• частичное раскрытие. Противник получает частичную информацию об используемом ключе или об открытом сообщении.
Наука, занимающаяся вопросами раскрытия алгоритмов шифрования, называется криптоанализом.
Каждой из определенных выше целей соответствует свой объем знаний об используемом ключе или переданном открытом сообщении. Чтобы увеличить его, противнику необходимо иметь достаточное количество перехваченных зашифрованных сообщений. Вот почему он осуществляет ряд атак на используемую систему засекреченной связи. В дальнейшем будем полагать, что целью атаки являются применяемые алгоритмы зашифрования (расшифрования).
Таким образом, под стойкостью алгоритма шифрования будем понимать способность противостоять всем возможным атакам против него. В вероятностных терминах это определение можно перефразировать следующим образом: стойким считается алгоритм, в котором перехват зашифрованных сообщений не приводит к появлению точки единственности принятия решения об используемом ключе или переданном открытом сообщении. На практике же получение противником требуемых для вскрытия алгоритма шифрования апостериорных вероятностей зависит от наличия у него определенных ресурсов, среди которых можно отметить следующие:
• конкретный объем перехваченных зашифрованных сообщений;
• временные ресурсы. Здесь подразумевается время, необходимое для проведения определенных вычислений; в некоторых случаях временные затраты противника могут превышать время жизни секретной информации . Время жизни секретной информации можно определить как время, в течение которого информация должна сохранять свое свойство конфиденциальности;
• вычислительные ресурсы. Имеется в виду количество памяти в вычислительных системах, используемых для успешной реализации атаки.