
5_Kriptosistema_Mak-Elis
.pdf
Из выражения (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
Удостоверяющий
центр