Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5_Kriptosistema_Mak-Elis

.pdf
Скачиваний:
7
Добавлен:
25.06.2024
Размер:
2.33 Mб
Скачать

Из выражения (3.15) видно, что двоичный вектор

Ci

представляет

собой закодированное ЛК (с порождающей матрицей G

A

) сообщение

M S

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с добавкой двоичного шума

Z P

веса не более

t

A

,

 

 

 

 

 

 

i

 

A

 

 

1

 

 

 

 

 

 

i A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

так как

 

P

будет также перестановочной матрицей, умножение на

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

которую сохраняет вес слова

Z

i

, который был определен ранее не

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

более чем

t

A .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поскольку

код с порождающей

матрицей

 

G

A

может

 

 

 

гарантированно исправить не менее

t

A

ошибок, это означает,

что

 

по C

 

пользователь A может абсолютно точно восстановить

M

i

S

A

,

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

причем сложность декодирования будет при этом полиномиальной.

Наконец, исходное сообщение

M

i

восстанавливается

 

умножения последнего результата на

S A1, т. е.

M

i

S

A

S

1 M

.

 

 

 

A

 

i

после

Заметим, что в отличие от метода РША и подобно тому, как это было в шифре Эль-Гамаля, метод Мак-Элис является

рандомизационным, поскольку случайный вектор помехи входит в состав ключей этой КС.

Zi

не

Если на шаге 1 генерирования ключей используется

семейство кодов Гоппы,

то можно иметь в виду [3], что для

любого неприводимого

над полем

GF (2

m

)

многочлена

 

g(x) степени t A существует двоичный

код

Гоппы

 

длины

n

2

m

с числом информационных символов

 

k n mt

 

,

где

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t

 

– число ошибок, исправляемых этим кодом, причем этот

A

 

код имеет полиномиально сложный алгоритм декодирования.

Стойкость КС Мак-Элис

Рассмотрим две основные атаки на КС Мак-Элис:

1) зная

C

 

 

i

ошибки в

Ci ,

матрица

G

A

 

 

определяемого

,

G

A

,

t

 

 

 

 

но поскольку, является ей кода не

A

, можно попытаться исправить

 

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

исправления ошибок, а переборные практически нереализуемы при соответствующем выборе параметров исходного кода;

 

2) для восстановления

 

 

M i

 

можно попытаться случайно выбрать

k столбцов в матрице G

A

.

 

 

 

Если

 

 

теперь

 

 

обозначим

через

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

G

, C

, Z

k

 

ограничение

 

G

A

, C

, Z

i

этими столбцами,

то будет

k

k

 

 

 

 

 

 

 

С

 

 

i

 

 

 

 

 

 

G

 

 

 

 

выполняться уравнение

 

k

 

Z

k

M

i

.

 

Если случайно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

окажется, что

Z

k

0

и

G

 

 

несингулярна,

то

M

i

может

быть

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

M

G

 

 

 

 

 

 

получено как решение уравнения

k

 

 

. Однако вероятность

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

того, что

Z

 

0

, оказывается равной

 

C

k

 

/ C

k

,

 

 

и

при

k

 

n t

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

соответствующем выборе параметров она будет весьма малой

величиной.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для обеспечения высокой стойкости КС Мак-Элис рекомендуются

следующие ее параметры [3]:

n 1024

бит, t 38 , k 644 .

Представленный ранее материал позволяет сформулировать следующие основные свойства КС Мак-Элис:

1)достаточно предсказуемая стойкость;

2)простота шифрования и дешифрования;

3)увеличение длины криптограммы по сравнению с длиной

сообщений в

n / k

раз;

4) большая битовая длина как открытого, так и закрытого ключей.

Последнее свойство особенно существенно ограничивает практическое применение КС Мак-Элис.

Криптосистема Ниддерайтера 1986 г.

Криптосистем на осносе алгебраического кодирования

Генерация ключа: фиксируем k, n, t.

Каждый участник делает следующее.

1.Выбрать проверочную матрицу кода H размера (n-k) × n для (n, k)-линейного кода, исправляющего t ошибок, для которого известен эффективный алгоритм декодирования (например, код Гоппы).

2.Выбрать случайную невырожденную матрицу S размера

(n-k) × (n-k).

3.Выбрать случайную матрицу перестановки P размера n ×

n.

4.Выдать публичный ключ t и H’ = SHP; секретный ключ —

(S, H,P).

Алгоритмы шифрования -дешифрования

Алгоритм шифрования:

(даны t, H’, F(x) и сообщение m).

1.Представить сообщение как F(m) строку длины n веса от 0 до t. m e

2.Зашифровать c F (m.)H T

Алгоритм декодирования

(даны c и ключ (S, H, P)).

1.

Вычислить c cS

1

.

 

2.

Декодировать то, что получилось, алгоритмом

декодирования кода; получится e’ . Проверить, что вес e’ < t

3. Вычислить

m F

1

(e P

1

) .

 

 

Сообщение передается не информационным блоком кодового слова, а вектором ошибок. Криптограмма же получается в виде синдрома – произведения проверочной матрицы на вектор ошибок.

Системы шифрования с инкапсуляцией ключей (гибридные системы)

Преимущества и недостатки симметричных систем:

Относительная простота реализации;

Высокая помехоустойчивость (отсутствие размножения ошибок в канале связи для поточных шифров);

Сложность распределения ключей.

Преимущества и недостатки асимметричных систем:

Простота распределения ключей. (нужно распределять только открытые ключи);

Высокая вычислительная сложность выполнения криптографических преобразований.

Пример системы шифрования с инкапсуляцией ключей

А

Поточный

шифратор

M

ШГ

Формиров. шифрующей гаммы

ГСЧ КШ

Инкапсуляц ия шифрование Кш

B

E1 Блок объеди-

E2 нения

 

 

В

 

 

Поточный

Блок разъе-

 

шифратор

 

 

динения

Е1

М

 

 

Е2

 

Канал

связи

 

Формиров.

 

 

 

 

 

шифрующей

 

 

гаммы

Деинкапсуляция расшифр- КРШ ование

SKB

Удостоверяющий

центр

Соседние файлы в предмете Криптографические протоколы