Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Эл-ты_криптологии-лек.doc
Скачиваний:
24
Добавлен:
24.11.2019
Размер:
757.76 Кб
Скачать

2.2. Теоретическая стойкость криптосистем 2

Все схемы шифрования можно грубо разделить на два больших класса:

  • схемы, принципиально не вскрываемые, что строго доказывается;

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

В данном разделе мы будем рассматривать схемы первого класса, опираясь, в основном, на методы анализа традиционных криптостистем, развитые К.Шенноном, начиная с его первой работы 1949 г.3

2.2.1. Системы с совершенной секретностью

Пусть М = {M1, M2, …, Mm} – множество всевозможных сообщений (например, всех текстов длиной не более 1000 букв), K = {K1, K2, …, Kn} – множество всевозможных ключей, C = {C1, C2, …, Cq} – множество всевозможных криптограмм (то есть зашифрованных сообщений).

Криптограммы и открытые сообщения связаны функционально: Cj = f(Mi, Kl).

Будем считать, что на множестве М задано распределение вероятностей P, то есть определены вероятности P(Mi), i = 1, …, m. Это априорное распределение вероятностей, которое известно и противнику.

Определение: криптосистема называется совершенно секретной, если выполняется равенство:

P(Mi | Cj) = P(Mi) (2.7)

при всех Mi, Kl, Cj = f(Mi, Kl). {Здесь P(Mi | Cj) – вероятность того, что открытое сообщение есть Mi, вычисленная при условиях: 1) шифрованное сообщение есть Cj (это известно противнику) и 2) Cj получено именно из Mi (это не известно противнику)}.

Поясним это определение. Пусть противник перехватил криптограмму Cj. Если (2.7) выполняется, то это означает, что он не получил никакой дополнительной информации о переданном сообщении, ему известно только указанное выше априорное распределение вероятностей. То есть знание Cj бесполезно для .

Рассмотрим конкретный пример. Пусть М – множество сообщений из шести букв на русском языке. Пусть априори известно, что для некоторой системы

P(М = "планер") = 0,00015; P(М = "ракета") = 0,0000012; и т.д.

Допустим, что мы имеем несовершенную систему и после перехвата криптограммы Cj* и необходимых вычислений получил свои оценки условных вероятностей:

P(М = "планер" | Cj*) = 1020; P(М = "ракета" | Cj*) = 0,9999.

Это означает, что практически расшифровал сообщение, так как он практически уверен, что передано слово "ракета", ибо условные вероятности других сообщений меньше 0,00001.

Если же при любой перехваченной криптограмме Cj

P(М = "планер" | Cj) = 0,00015; P(М = "ракета" | Cj) = 0,0000012,

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

Свойства совершенной криптосистемы характеризуются следующей теоремой.

Теорема 2.1. Если система является совершенно секретной, то справедливо равенство:

P(Cj | Mi) = P(Cj) (2.8)

при всех i и j. Верно и обратное утверждение: если (2.8) выполняется, то система совершенно секретна.

Д о к а з а т е л ь с т в о.

Далее любое сообщение (открытое или шифрованное) будем считать случайным событием.

По определению условной вероятности для событий A и B справедливо: P(A | B) = = P(AB)/P(B) при P(B)  0. Поэтому при P(Cj)  0 можно записать:

P(Mi | Cj) = P(MiCj)/P(Cj) = P(Mi)P(Cj | Mi)/P(Cj).

С учетом (2.7), получим: P(Mi | Cj) = P(Mi | Cj)P(Cj | Mi)/P(Cj), то есть

P(Cj | Mi)/P(Cj) = 1,

что доказывает (2.8). Обратное утверждение доказывается "обратным проходом" по приведенным равенствам.