Построение этого семейства полностью продиктовано результатами работы [3], в которой получено описание ряда классов эквивалентности секретных ключей криптосистемы Мак-Элиса-Сидельникова.
Рассмотрим теперь задачу, связанную со стойкостью криптосистемы Мак-Элиса-Сидельникова. Однако здесь криптосистема Мак-Элиса-Сидельникова рассматривается не на всЄм ключевом пространстве, а только на полностью описанных в [3] классах эквивалентности.
Задача mcSRM
Вход: матрица G = (Н\ • R\\H2 • R) • А, где И\ и Н2 — невырожденные двоичные (к х к)-матрицы, принадлежащие классу эквивалентности [(H, НТ~, Г)] для некоторой невырожденной (k х к)-матрицы И, некоторой перестановочной (2п х 2п)-матрицы Г, некоторого числа 1 ^ i ^ к и некоторого вектора a; R — порождающая (к х n)-матрица кода Рида-Маллера RM(r,m); А — перестановочная (2n х 2п)-матрица.
Найти: невырожденные матрицы Н[ и Н2 размера (к хк) и перестановочную (2п х 2п)-матрицу А', такие, что G • А' = (H[R\H^R).
Справедливы следующие теоремы.
Теорема 1. Пусть существует набор машин Тьюринга MTmcRMi, каждая из которых решает соответствующую задачу mcRMi за полиномиальное время. Тогда существует машина Тьюринга MTmcSRM, которая решает задачу mcSRM за полиномиальное время.
Теорема 2. Пусть существует машина Тьюринга MTmcRM, которая решает задачу mcRM за полиномиальное время. Тогда существует семейство машин Тьюринга MTmcRMi, которые соответственно решают задачи mcRMi за полиномиальное время.
Теорема 3. Пусть существует машина Тьюринга MTmcRM, которая решает задачу mcRM за полиномиальное время. Тогда существует машина Тьюринга MTmcSRM, которая решает задачу mcSRM за полиномиальное время.
ЛИТЕРАТУРА
1. McEliece R. J. A public-key cryptosystem based on algebraic coding theory // DSN Prog. Rep., Jet Prop. Lab., California Inst. Technol. 1978. P. 114-116.
2. Сидельников В. М. Открытое шифрование на основе двоичных кодов Рида-Маллера // Дискретная математика. 1994. №6(2). С. 3-20.
3. Чижов И. В. Ключевое пространство криптосистемы Мак-Элиса-Сидельникова // Дискретная математика. 2009. №21(3). С. 132-158.
УДК 681.3
МОДЕЛЬ СИММЕТРИЧНОГО ШИФРА НА ОСНОВЕ НЕКОММУТАТИВНОЙ АЛГЕБРЫ ПОЛИНОМОВ
И. В. Широков
Пусть F — некоторое поле, f (x),g(x) — элементы кольца F[x], (f о g)(x) = f (g(x)) — композиция полиномов. Кольцо F[x] с дополнительной операцией композиции является некоммутативной алгеброй полиномов с тремя бинарными операциями {+, •, о}. Решение уравнения
(f о g)(x) = r(x) mod h(x), f,g,h,r Є F[x],
(1)
относительно неизвестного многочлена f или g сводится к поиску корней, принадлежащих основному полю F, некоторых многочленов из кольца F[x], что не является трудной задачей.
Уравнение (1) естественным образом возникает в задаче определения группы алгебраических симметрий многочлена, которая в общем случае является подгруппой группы Галуа этого многочлена.
Свойства операции композиции многочленов позволяют предложить следующую модель криптосистемы. Открытыми параметрами криптосистемы являются множество различных многочленов {f\(x),... , fn(x)}, fi(x) G F[x], степени k ^ 2 и некоторый неприводимый над F многочлен h(x); секретным ключом является некоторая перестановка a G Sn. Открытый текст представляется многочленом m(x) G F[x], шифртекстом будет следующий многочлен c(x):
(fan ◦ ■ ■ ■ ◦ fox ◦ m)(x) = c(x) mod h(x). (2)
Процесс шифрования заключается в вычислении по рекуррентной формуле:
c0(x) = m(x); ci(x) = (fai о ci-1)(x) mod h(x), i = 1,... ,n; c(x) = cn(x).
Расшифрование заключается в последовательном решении систем вида (1) относительно неизвестных многочленов cn-1,... ,c1,c0 = m(x):
(fa о ci-i)(x) = ci(x) mod h(x), i = n,... , 1.
По мнению автора, при наличии пары «открытый текст - шифртекст» наиболее быстрый способ определить ключ — это полный перебор всего ключевого пространства мощности n!, т. е. выбор перестановки, шифрование и сравнение результата с шифр-текстом.
Основой для такого вывода является следующее. Введем обозначение fa = fan о — ■◦ ofax; тогда уравнение (2) записывается в виде faom = c mod h. Заметим, что приводить по модулю h(x) можно многочлен m(x) и конечный результат композиции, а многочлен fa нельзя, так как если мы производим вычисления в фактор-кольце F[x]/(h(x)), то композиция, в отличие от операции умножения, не является корректно определенной в фактор-кольце операцией. Для того чтобы найти коэффициенты многочлена fa, необходимо найти корни из поля F многочлена степени порядка exp(exp n), что даже для небольших значений числа n невозможно. Попытаться как-то разделить исходную задачу на части также не представляется возможным.
По мнению автора, некоммутативная алгебра полиномов слабо изучена, но имеет при этом важные приложения. Это позволяет надеяться, что изучение этой алгебры и предлагаемой криптосистемы представляет некоторый научный интерес.