Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MOZI.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
2.55 Mб
Скачать

Задачи для самостоятельного решения

  1. Зашифруйте следующий текст с помощью системы Виженера.

    1. Линейные рекуррентные последовательности, ключ «трава»;

    2. Дискретное логарифмирование, ключ коврик для мышки.

  2. Расшифруйте закрытый текст, зная, что он получен с помощью шифра Цезаря.

    1. Тупклптуэ лсйруптйтужрь;

    2. Рснийнрсы йкэця.

1.1.2.Сложность алгоритмов

Различают сложность временную (количество времени, затраченное на решение задачи) и ёмкостную (объем оперативной памяти вычислительной машины).

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

Решить задачу, значит не только составить алгоритм, но и оценить её время решения. Не для всех задач можно придумать точные алгоритмы решения за реальное время. Что значит реальное время? Если время работы алгоритма можно оценить, как многочлен от n, то будем считать, что эта задача может быть решена за реальное время. Если как экспоненту, то нет.

ПК – 1 млн. операций в секунду.

Трудоёмкость алгоритма.

Размер входа задачи n

20

50

100

200

500

1000

Количество операций

1000 n

0,02 c

0,05 с

0,1 с

0,2 с

0,5 с

1 с

10 n³

0,08 c

1 с

10 с

10 мин

21 мин

2,7 ч

2n/3

0,0001 c

0,1 с

2,7 ч

3·104 веков

-

-

2n

1 c

35 лет

3·104 веков

-

-

-

3n

58 мин

2·109 веков

-

-

-

-

Учебные задачи не сравнимы с реальными задачами, где возникает размерность 1000, 10000 и т.д. Если мы рассмотрим компьютер 10 млн. операций в секунду.

Трудоёмкость алгоритма.

n-размерность задачи решаемой за 1 день

n

n3

2n

n!

1012

104

40

14

В классической математике, если придуман алгоритм, то задача решена. В информатике оценивается сложность. Для одной задачи можно придумать много разных алгоритмов. Есть ли такие задачи, для которых нельзя придумать эффективных алгоритмов? Это переборные задачи.

1.1.3.Стойкость криптографических систем

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

Исторически первым подходом к определению стойкости криптосистем был информационно - теоретический подход, предложенный К. Шенноном. Этот подход основан на понятии информации, ее количественной оценке и анализе количества информации об открытом тексте, для обеспечения стойкости криптосистемы.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]