Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Более матаматически.docx
Скачиваний:
7
Добавлен:
22.09.2019
Размер:
35.5 Кб
Скачать

Для того, чтобы иметь возможность доказывать в криптографии точные результаты, нужны математические модели основных исследуемых объектов, к которым относятся в первую очередь шифр и открытый текст. Введем сначала алгебраическую модель шифра (шифрсистемы), предложенную, по сути дела, К. Шенноном.

Алгебраические и вероятностные модели шифров

Пусть XKY — конечные множества возможных открытых текстов, ключей и шифрованных текстов соответственно; EkX ⇒ Y — правило зашифрования на ключе k ∈ K. Множество {Ekk ∈ K} обозначим через E, а множество {Ek(x): x ∈ X} — через Ek(X). Пусть Dk:Ek(X) ⇒ X — правило расшифрования на ключе k ∈ K, и D — это множество {Dkk ∈ K}. Здесь и далее мы будем предполагать, что если k ∈ K представляется в виде k = (kзkр), где kз — ключ зашифрования, а kр — ключ расшифрования (причем kз ≠ kр), то Ekпонимается как функция Ekз, а Dk — как функция Dkр.

Определение. Шифром (шифрсистемой) назовем совокупность εA = (XKYED) введенных множеств, для которых выполняются следующие свойства:

  1. для любых x ∈ X и k ∈ K выполняется равенство Dk(Ek(x)) = x;

  2. Y = ∪kK Ek(X).

Неформально, шифр — это совокупность множеств возможных открытых текстов (то, что шифруется), возможных ключей (то, с помощью чего шифруется), возможных шифртекстов (то, во что шифруется), правил зашифрования и правил расшифрования.

Отметим, что условие 1) отвечает требованию однозначности расшифрования. Условие 2) означает, что любой элемент y ∈ Y может быть представлен в виде Ek(x) для подходящих элементов x ∈ X и k ∈ K. Отметим также, что в общем случае утверждение «для любых k ∈ K и y ∈ Ek(X) выполняется равенство Ek(Dk(y)) = y» является неверным. Иначе говоря, функция Dk постоянна, а Ek может меняться в процессе шифрования.

Легко проверить, что из условия 1) следует свойство инъекции функции Ek. Другими словами, если x1x2 ∈ X, причем x1 ≠ x2, то при любом k ∈ K выполняется неравенство Ek(x1) ≠ Ek(x2).

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

Введем теперь вероятностную модель шифра. Следуя К. Шеннону, определим априорные распределения вероятностей P(X), P(K) на множествах P и K соответственно. Тем самым для любого x ∈ X определена вероятность px(x) ∈ P(x) и для любого k ∈ K — вероятность pk(k) ∈ P(K), причем выполняются равенства:

xX px(x) = 1,   ∑kK pk(k) = 1.

В тех случаях, когда нам требуется знание распределений P(X), P(K), мы будем пользоваться вероятностной моделью εB, состоящей из пяти множеств, связанных условиями 1) и 2) определения, и двух вероятностных распределений:

εB = (XKYEDP(X), P(K)).

Отметим, что вероятностные характеристики шифров используются лишь в криптоанализе, т. е. при вскрытии (или взломе) шифров.

Шифры замены и шифры перестановки

В большинстве случаев множества X и Y представляют собой объединения декартовых степеней некоторых множеств A и B соответственно, так что для некоторых натуральных L и L1:

X = ∪i=1LAi,   Y = ∪i=1L1Bi.

Множества A и B называют соответственно алфавитом открытого текста и алфавитом шифрованного текста. Другими словами, открытые и шифрованные тексты записываются привычным образом в виде последовательностей букв.

Введем шифр простой замены в алфавите A.

Определение. Пусть X = Y = ∪i=1LAiK ⊆ S(A), где S(A) — симметричная группа подстановок множества A. Для любого ключа k ∈ K, открытого текста X = (x1,…,xl) и шифрованного текста y = (y1,…,yl) правила зашифрования и расшифрования шифра простой замены в алфавите A определяются формулами:

Ek(x) = (k(x1),…,k(xl)),   Dk(x) = (k-1(y1),…,k-1(yl)),   (1)

где k-1 — подстановка, обратная k.

В более общей ситуации для шифра простой замены X = ∪i=1LAiY = ∪i=1L1Bi, причем |A| = |B|, а K представляет собой множество всех биекций множества A на множество B. Правила зашифрования и расшифрования определяются для k ∈ Kx ∈ Xy ∈ Y (и обратной к k биекции k-1) формулами (1).

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

Определение. Пусть X = Y = AL и пусть KSL, где SL— симметрическая группа подстановок множества {1,2,…,L}. Для любого ключа k, открытого текста x = (x1,…,xL) и шифрованного текста y = (y1,…,yL) правила зашифрования и расшифрования шифра перестановки определяются формулами:

Ek(x) = (xk(1),…,xk(L))),   Dk(y) = (yk-1(1),…,yk-1(L))),   (2)

где k-1 — подстановка, обратная k.

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