Стойкость криптоалгоритмов

Принцип максимальной однородности

Сложностная неоднородность - количество задач, решение одной из которых нарушает безопасность системы.

Число задач, положенных в основу информационной системы, должно быть минимальным.

 

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

Единицы измерения стойкости:

- временная сложность наилучшего алгоритма, нарушающего безопасность;

- требуемый объем памяти для вскрытия ключа;

- длительность вскрытия;

- стоимость вскрытия;

- физический объем вычислительной модели.

 

Классификация по уровню стойкости

1. безусловно стойкие - гарантированно не позволяют вскрыть ключ

Такое условие выполняется в случае, если длина ключа равна длине сообщения (шифры Вернера). Необходимым условием является то, что ключ не короче сообщения.

2. доказуемо стойкие - стойкость определяется сложностью решения массовой

математической задачи(криптография с открытым ключом).

3. предположительно стойкие - безопасность основана на решении частной задачи(симметричный шифр).

Время, в течение которого алгоритм остается безопасным, уменьшается из-за того, что растут вычислительные возможности, появляются новые методы. Оно вычисляется по формуле:

, где S - стойкость, T - текущий момент времени, t - интервал, на котором оценивается скорость падения S.

 

Пример Имеется ключ 50 бит

S(T) = 250

t = 10 лет

S(T+t) = 240

Вычислим время, в течение которого алгоритм будет безопасным:

в год

Это означает, что сложность будет каждый год падать на 2%.

Следовательно ключ 50 бит + 20% = 60 бит.