03.com.ua- свободная медицинская энциклопедия. Каждый зарегистрированый участник может редактировать статьи

Криптографическая стойкость: различия между версиями

Материал из 03.com.ua.
Перейти к навигации Перейти к поиску
м (1 версий)
(нет различий)

Версия 19:27, 28 октября 2007

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

Абсолютно стойкие системы

Доказательство существования абсолютно стойких алгоритмов шифрования было выполнено К. Шенноном и опубликовано в работе «Теория связи в секретных системах». Там же определены требования к такого рода системам:

  • ключ генерируется для каждого сообщения (каждый ключ используется один раз)
  • ключ статистически надежен (то есть вероятности появления каждого из возможных символов равны)
  • длина ключа равна или больше длины сообщения
  • исходный (открытый) текст обладает некоторой избыточностью (является критерием оценки правильности расшифрования)

Стойкость этих систем не зависит от того, какими вычислительными возможностями обладает криптоаналитик. Практическое применение систем, удовлетворяющих требованиям абсолютной стойкости, ограничено соображениями стоимости и удобства пользования.

Достаточно стойкие системы

В основном применяются достаточно стойкие или вычислительно стойкие системы. Стойкость этих систем зависит от того, какими вычислительными возможностями обладает криптоаналитик. Практическая стойкость таких систем базируется на теории сложности и оценивается исключительно на какой-то определенный момент времени и последовательно c двух позиций:

В каждом конкретном случае могут существовать дополнительные критерии оценки стойкости.

Начальная оценка

Поскольку атака методом грубой силы (brute force) возможна для всех типов криптографических алгоритмов, кроме абсолютно стойких «по Шеннону», для вновь созданного алгоритма она может являться единственной существующей. Способы её оценки основываются на вычислительной сложности, которая затем может быть выражена во времени, деньгах, и требуемой производительности вычислительных ресурсов, например, в MIPS. Эта оценка пока является максимальной и минимальной одновременно.

Текущая оценка

Дальнейшее исследование алгоритма с целью поиска слабостей (уязвимостей) (криптоанализ) добавляет оценки стойкости по отношению к известным криптографическим атакам (Линейный криптоанализ, дифференциальный криптоанализ и более специфические) и могут понизить известную стойкость.

Например, для многих симметричных шифров существуют слабые ключи и S-блоки, применение которых снижает криптографическую стойкость. Также важным способом проверки стойкости являются атаки на реализицию, выполняемые для конкретного программно-аппаратно-человеческого комплекса.

Важность длительной проверки и открытого обсуждения

Чем более длительным и экспертным является анализ алгоритма и реализаций, тем более достоверной можно считать его стойкость. В нескольких случаях длительный и внимательный анализ приводил к снижению оценки стойкости ниже приемлемого уровня (например, в черновых версиях FEAL). Недостаточная проверка (по мнению многих криптографов — искусственное ослабление) алгоритма потокового шифрования A5/1 привела к успешной атаке (см…).

Ссылки

Литература

Шаблон:Stub