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