Существует достаточно распространенный подход к формальной оценке этого понятия. Стойкость криптографического алгоритма необходимо рассматривать относительно пары «атака-цель», где под целью противника понимается планируемая угроза. В мировой литературе проработана классификация различных типов атак на криптографические алгоритмы: - атака с известным шифр-текстом (ciphertext-only attack). Предполагается, что противник знает криптосистему, то есть алгоритмы шифрования, но не знает секретный ключ. Кроме того, ему известен лишь набор перехваченных криптограмм; - атака с известным открытым текстом (known plaintext attack). To же, что предыдущая, но противник получает в свое распоряжение еще некоторый набор криптограмм и соответствующих им открытых текстов; - простая атака с выбором открытого текста (chosen-plaintext attack). Противник имеет возможность выбрать необходимое количество открытых текстов и получить соответствующие им криптограммы; - адаптивная атака с выбором открытого текста (adaptive-chosen-plaintext attack). В этом случае противник имеет возможность выбирать открытые тексты с учетом того, что криптограммы всех предыдущих открытых текстов ему известны; - атака с выбором шифро-текста (chosen-ciphertext attack). Противник имеет возможность выбрать необходимое количество криптограмм и получить соответствующие им открытые тексты; - адаптивная атака с выбором шифр-текста (adaptive-chosen-ciphertext attack). Противник, выбирая очередную криптограмму, знает все открытые тексты, соответствующие предыдущим криптограммам; - атака с выбором текста (chosen-text attack). Противник имеет возможность выбирать как криптограммы (и дешифровывать их), так и открытые тексты (и зашифровывать их);
- атака с выбором ключа (chosen-key attack). Противник знает не сами ключи, а некоторые различия между ними. В этом перечне атаки представлены по мере возрастания их силы. Так, с точки зрения криптоанализа последняя атака является самой сильной, хотя существует еще более сильная атака, заключающаяся в получении секретного ключа путем вымогательства, шантажа или подкупа. Анализируя атаки и их цели, можно прийти к выводу, что наибольшей стойкостью алгоритм обладает в том случае, когда он способен противостоять самой сильной атаке, проводимой противником, при условии, что он преследует самую слабую из возможных целей атаки (угроза).