ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА
2014 Математические методы криптографии №1(23)
МАТЕМАТИЧЕСКИЕ МЕТОДЫ КРИПТОГРАФИИ
УДК 519.4
БИЕКТИВНЫЕ ОТОБРАЖЕНИЯ, ПОРОЖДАЕМЫЕ ФИЛЬТРУЮЩИМ ГЕНЕРАТОРОМ
М. И. Рожков
Московский институт электроники и математики Национального исследовательского университета «Высшая школа экономики», г. Москва, Россия
E-mail: [email protected]
Рассматривается задача построения биективных отображений
Bf,L: (F2)n ^ (F2)n, BftL(x) = (f (x),f (5(x)),...,f (5n-1(x))), x e (F2)n,
набор координатных функций которых задаётся преобразованием 5 = 5l регистра сдвига большой длины n с функцией обратной связи L и нелинейной функцией выхода f от небольшого числа k аргументов (k ^ n). При этом биективность отображения BfL равносильна ортогональности системы его координатных функций.
В работе развивается метод, который сводит исходную задачу проверки биектив-ности отображения Bf L при больших значениях длины регистра n к проверке его биективности применительно к регистрам сдвига ограниченной длины n ^ no, что позволяет эффективно использовать для её решения вычислительную технику. На основе данного метода в работе построены новые бесконечные классы биективных отображений для случая нелинейной функции f, зависящей от k ^ 6 переменных. Ранее аналогичные результаты были известны для случая, когда функция f зависит от k = 3 переменных. Полученные результаты могут быть полезны при построении и обосновании статистических свойств датчиков случайных чисел на основе фильтрующих генераторов. При этом особый практический интерес представляет выбор пар (f, L), при которых одновременно обеспечивается биективность отображения Bf,L и максимальность периода отображения 5l.
Ключевые слова: ортогональные системы функций, регистр сдвига, фильтрующий генератор, понижающее множество.
1. Основные понятия и обозначения
Далее в работе будем придерживаться следующих основных понятий и обозначений
(используемые алгебраические понятия изложены в [1]):
— F2 — поле из двух элементов;
— (fi, f2,... , fm) —задание отображения (F2)n ^ (F2)m в виде системы координатных функций;
— L(x i,X2, ...,Xn) = L(x i ,X2, . . . ,Xs(1),Xn-s(2) + 1,Xn-s(2)+2, . . . ,%n) —функция обратной связи регистра сдвига длины n ^ s(1) + s(2), линейная по переменной Xi, (s(1) ^ 1, s(2) ^ 0 — заданные параметры);
— 8 = Sl — преобразование векторов пространства (F2)n, осуществляемое регистром сдвига с функцией обратной связи L(x1,x2, ... ,Xn), действующее на вектор
(x1, x2,... , xn) e (F2)n по правилу
8(xi, X2, . . . , Xn) = (X2, X3, . . . , Xn, L(xi, X2, . . . , Xn));
— /(xi, x2,... ,Xk) —функция от k аргументов без запретов (являющаяся фильтрующей функцией съёма с соответствующего регистра сдвига);
— Bf,L — преобразование двоичных векторов длины n (отображение (F2)n ^ (F2)n), задаваемое системой координатных функций
Bf,L = (/(x),f (8(x)),..., /(8n-i(x))), x e (F2)n.
В работе рассматриваются вопросы выбора нелинейной функции съёма / и функции обратной связи L, при которых преобразование Bf L является биективным. При этом биективность преобразования Bf,L равносильна ортогональности системы его координатных функций [2]. В [2] показано, что при n ^ 2k—1 + k — 1 отсутствие запретов у функции / = /(xi, X2, . . . , Xk) является необходимым условием биективности отображения Bf L (функции без запрета называют также функциями без потери информации, сильно равновероятными и совершенно уравновешенными [3-5]).
Известно [4], что для функции без запретов / (xi, x2,... , xk) при любом натуральном n существует ровно 2k—1 входных слов xi, x2,... , xn+k-i, перерабатываемых данной функцией в любое фиксированное выходное слово y(1), y(2),... , y(n) по закону
y(j) = /(xj,xj+i,.. .,xj+k-i), j 1 2,.. .,n.
Поэтому биективность преобразования Bf L равносильна тому, что среди этих 2k-i входных слов ровно одно слово будет удовлетворять ограничениям
Xn+i = L(x) = L(Xi,X2, ... ,Xn), Xn+2 = L(Sl(x)), ..., Xn+k-i = L((8L)k-2(x)). (1)
При этом xn+i, xn+2,... , xn+k-i как функции от независимых переменных xl, x2,... , xn (в силу ограничений на вид функции обратной связи L) зависят лишь от k + s(1) — 2 начальных переменных и от s(2) последних переменных. Таким образом, выполняется ограничение 1 или нет для данного входного слова xl,x2, ... ,xn+k-i, зависит только от его начального отрезка xl,x2, ... ,xk+s(i)-2 длины k + s(1) — 2 и конечного отрезка
Xn—s(2)+1 , . . . , xn, xn+i , xn+2, . . . , xn+k-i длины k + s(2) 1.
Для заданных функции / (xl,x2 , ...,Xk), натуральных r, s ^ k — 1 и выходного слова Y = y(1), y(2),..., y(m) через I = I(Y) = Irjs(Y) обозначим систему пар векторов (а(г),в(i)) , i = 1, 2,..., 2k—l, где a(i) = xi,x2,...,xr и в(i) = xm+k—s, xm+k—s+l , ...,xm+k—i являются соответственно началами и концами входных слов X = xi,x2,...,xk, xk+i,... , xk+m— l, перерабатываемых функцией / в выходное слово Y:
y(j) = / (xj ^ь...^^—i^ j = 1, 2,...,m.
Так как число различных входов X, отвечающих заданному выходу Y, в точности равно 2k—l, то полагаем, что I(Y) состоит из 2k—1 элементов. При этом соответствующие системы I(Y) и I(Z) считаем равными (I(Y) = I(Z)), если любой элемент (а, в) e I(Y) встречается в I(Z) ровно столько раз, сколько он встречается в I(Y).
Определение 1. Двоичные последовательности Y = y(1), y(2),... , y(n) и Z = = z(1),z(2),..., z (m) назовём эквивалентными (обозначим Y Z), если Ik—i,k—i(Y) =
= ^k—i,k—i(Z).
Пример 1. Для функции от трёх переменных f (х1,Ж2,Жз) = Ж1Ж2 + Ж2 + Ж3 выходным словам У1 = (у(1), у(2), у(3), у(4)) = (0, 0, 0, 0) и ^1 = (¿(1), ¿(2), ¿(3)) = (0, 0, 0) соответствуют следующие наборы входных слов:
(0,0,0,0,0,0), (1,0,0,0,0,0), (0,1,1,0,0,0), (1,1,0,0,0,0) для Уь (0,0,0,0,0), (1,0,0,0,0), (0,1,1,0,0), (1,1,0,0,0) для
Начала и окончания длины 2 входных векторов свидетельствуют, что
/2,2^1) = /2,2^1) = {(00, 00), (10, 00), (01, 00), (11, 00)}.
Следовательно, слова У1 и ^1 являются эквивалентными. Аналогичным образом можно убедиться, что эквивалентны также слова У2 = (0,1, 0,1, 0,1) и 32 = (0,1), для которых
/2,2(12) = /2,2(32) = {(00, 01), (10, 01), (01,11), (11, 01)}.
Определение 2. Упорядоченное множество натуральных чисел {Л, ¿1,¿2,... , ¿0}, Л > ¿1 > ... > , в ^ 1, назовём понижающим для функции f (ж1, ж2, ..., ), если
для любой последовательности У длины Л найдётся эквивалентная ей последовательность 3 длины £ Е {¿1, ¿2,... , ¿0}. Понижающее множество {Л, ¿1, ¿2,... , ¿0} называем равновесным, если для любого Ь Е {¿1,^2,... , ¿0} и любой последовательности У длины Ь найдётся эквивалентная ей последовательность длины Л. Понижающее множество {Л, ¿}, состоящее из двух элементов, будем также называть понижающей парой и обозначать (Л, ¿).
Пример 2. Для функции от двух переменных f (ж1,ж2) = ж1 + ж2 выход-
ным словам У длины 1 и 2 соответствуют следующие множества входов: слову 0 — {(0, 0), (1,1)}, слову 1 — {(0,1), (1, 0)}, слову 00 — {(0, 0, 0), (1,1,1)}, слову 10 — {(0,1,1), (1, 0, 0)}, слову 01 — {(0, 0,1), (1,1, 0)}, слову 11 — {(0,1,0), (1, 0,1)}. Отсюда получаем
/1,1(У = 0) и /1,1 (У = 1) = {{(0,0), (1,1)}, {(0,1), (1,0)}}; /1,1(1 = 00) и /1,1 (У = 10) и /1,1(У = 01) и /1,1 (У = 11) = {{(0, 0), (1,1)}, {(0,1), (1, 0)}}.
Следовательно, для рассматриваемой функции множество (Л, ¿) = (2,1) является равновесной понижающей парой.
Определение 3. Длиной (расстоянием) эквивалентности для заданной функции без запретов f = f (ж1, ж2, ... , ) назовём натуральное число п0, при котором
любое слово длины п > п0 эквивалентно некоторому слову длины ^ П0.
Для функции из примера 2 расстояние эквивалентности, очевидно, равно 1.
Заметим, что если п0 —длина эквивалентности функции f, то и любое п > п0 также является её длиной эквивалентности. Кроме того, непосредственно из определения 3 вытекает: если п0 —длина эквивалентности функции ^ то множество
{п0 + 1, п0, п0 - 1,... , 2,1} является для данной функции понижающим.
2. Вспомогательные утверждения Лемма 1. Пусть г, 5 ^ к — 1, /г,5(У) = /г,«(3), е Е {0,1}, У1 = еУ, 31 = е3,
У2 = Уе 32 = 3е. Тогда /г+1,«(У 1) = /г+1,«(31), /г,«+1(У2) = /г,«+1(32).
Доказательство. Пусть X = ж1, ж2, ..., Жк, Жк+1,..., Жк+га-1 — произвольное входное слово, соответствующее выходному слову У длины |У| = п. Тогда входные слова, соответствующие выходному слову У2 = Уе, имеют следующий вид:
1) Ха, если имеется единственное значение а Е {0,1}, для которого
f (ж«,+1 , . . . , Жга+к-1, а) е;
2) X0, X1, если f (жп+1, ... ,Жп+к-1, 0) = f (хп+1,... ,Жп+к-1,1) = е;
3) таких входных слов не существует, если
f (ж«,+ 1 , . . . , Жга+к- 1, 0) f (ж«,+1, . . . , Жга+к- 1, 1) = е.
Отсюда вытекает справедливость леммы для пары У2, 32. Аналогичным образом проводится доказательство и для пары У 1,31. ■
Лемма 2. Пусть f (ж1,ж2, ... , Жк) = ^(ж1,ж2, ... , Жк-1) + Жк. Двоичные последовательности у(1), у(2),... , у(п) и ¿(1), ¿(2),... , ¿(т) являются эквивалентными, если и только если при любом а Е (^2)к-1
^у(га)^у(га— 1) . . . ¿у(1)(а) ^г(т)^г(т—1) . . . ^(^(^^
где ^£(Ж1,Ж2, . . . ,Жк-1) = (Ж2,Жз, . . . , Жк-1, ^(Ж1, Ж2, . . . ,Жк-1) + е).
Доказательство. Для функции f (ж1,ж2, ... , Жк) = ^(ж1,ж2, ... , Жк-1) + Жк слова X = ж1,ж2, ... , жп+^-1, перерабатываемые этой функцией в фиксированное выходное слово у(1),у(2),..., у(п), у(]) = f (ж^-, ж^+1, ..., Ж^+к-1), = 1, 2,..., п, задаются после-
довательностью векторов
а0 = (жЪ ^ . . . , ^-^ а1 = (Ж2,Ж3,... ,Жк), Жк = ^(а0) + у(1) ^ а1 = ¿у(1)(а0),
ап (ж«,+1 , Жга+2, . . . , Жга+к-1 Жга+к-1 ^(ага-1) + у(п) ап ^у(га) (ага-1).
Отсюда и получаем утверждение леммы. ■
Лемма 3. Пусть {Л, ¿1 ,¿2,... ,¿0} —понижающее множество. Тогда
1. При любом натуральном е множество {Л + е, ¿1 + е, ¿2 + е,... , ¿0 + е} также является понижающим. При этом оно будет равновесным, если таким является исходное множество.
2. При любом фиксированном п0 ^ ¿0 произвольное слово У = у(1),у(2),... , у(п) длины п ^ п0 эквивалентно некоторому слову длины ^ Е {п0,п0 + 1,...,п0 + Л — ¿0 — 1}.
Доказательство. С учётом леммы 1 доказательство первой части леммы 3 легко проводится индукцией по е. Докажем вторую часть. Пусть произвольное заданное слово У = у(1), у(2),... , у(п) длины п ^ п0 эквивалентно некоторому слову 3 = ¿(1), ¿(2),... , г (¿) длины í Е {п0,п0 + 1,...,п0 + Л — ¿0 — 1}. Тогда слово У1 = (у(1), у(2),..., у(п), а) = Уа эквивалентно слову 31 = 3а, длина которого
восходит величины п0 = ( к_ 1 ) — 1.
принадлежит множеству {п0 + 1, п0 + 2,... , п0 + Л — ¿0}. Далее достаточно рассмотреть случай, когда длина слова 31 равна ¿ = п0 + Л — ¿0. Слово 31 можно представить в виде 31 = УШ, где V — начало слова 31 (длины (п0 — ¿0) ^ 0), а Ш — его окончание длиной Л. Тогда слово Ш эквивалентно некоторому слову Ш длины ¿ Е {¿ь^,... , ¿0}. Значит, слово 31 = УШ эквивалентно слову УШ1, длина которого равна (п0 — ¿0 + ¿) Е {п0, п0 + 1,... , п0 + ¿1 — ¿0}. Так как п0 + ¿1 — ¿0 < п0 + Л — ¿0, то утверждение леммы верно и для слов дины п + 1. ■
3. Оценка длины эквивалентности Утверждение 1. Пусть f = f(ж1 ,ж2, ... ,Жк) —произвольная двоичная функция без запретов от к переменных. Тогда её минимальная длина эквивалентности не пре-
22(к-1) + 2к-1 — 1 2к
Доказательство. Через /5 обозначим множество и/к-1,к-1(У), где объединение производится по всем словам У длины 5. Система /^-1,^-1(У), соответствующая слову У длины п, которое не имеет эквивалентных слов меньшей длины, очевидно, не принадлежит множеству и/^-1,к-1(3), где объединение производится по всем словам 3 длины меньше п (системы /(У) и /(3) при этом рассматриваются как отдельные элементы соответствующих объединений). В таком случае, учитывая очевидное равенство | /1 | = 2, получим соотношение
| и /8| ^ |/11 + ш — 1 = ш + 1. (2)
(объединение по 5 = 1, 2,... , ш, которые не являются длиной эквивалентности). Заметим далее, что общее число различных систем вида /^-1,^-1(У) не превосходит числа вариантов выбора 2к—1 элементов из множества пар (а(г),в(г)), а(г), в(г) Е (^2)к-1, т.е. числа сочетаний с повторениями из 22(к-1) элементов по 2к-1. С учётом (2) отсюда получаем, что при
22(к-1) + 2к-1 — 1
ш = 1 2^-1
любое слово длины ^ ш эквивалентно некоторому слову длины < ш. ■
Из данного утверждения вытекает, что длина эквивалентности имеется у любой двоичной функции без запретов. При этом важной задачей является нахождение минимальной длины эквивалентности.
Утверждение 2. Пусть функция без запретов от к переменных линейна по последней переменной: f (ж1, ж2,... , жк) = ^(ж1, ж2, ..., жк-1) + жк. Тогда её минимальная длина эквивалентности не превосходит величины п0 = ^ — 1, ^ = 2к-1.
Доказательство. В условиях данного утверждения (с учётом леммы 2) двоичные последовательности у(1),у(2),... ,у(п) и ¿(1),^(2),... , ¿(т) являются эквивалентными, если и только если при любом а Е (^2)к-1
^у(га)^у(га—1) . . . ¿у(1)(а) ^г(т)^г(т—1) . . . ^(^(^^
где ^£(ж1, ж2, ... , Жк—1) = (ж2, Ж3,... , Жк—1, ^(ж1, ж2, ... , Жк—1) + е). Число различных систем /¿._ 1,к— 1(У) не превосходит числа отображений множества (^2)к—1 в себя, которое равно ^^ = 2к—1. С учётом неравенства (2) отсюда и вытекает справедливость утверждения. ■
Утверждение 3. Пусть функция без запретов от к переменных линейна по обеим крайним переменным: f (ж1,ж2, ... ,жк) = ж1 + Л(ж2,ж3, ... ,жк—1) + жк. Тогда её минимальная длина эквивалентности не превосходит величины п0 = (2к—1)! — 1.
Доказательство проводится по аналогичной схеме с учётом того, что в условиях данного утверждения отображения $0 и ^1 являются биективными, а число биективных отображений множества (^2)к—1 в себя равно (2к—1)!.
Замечание 1. Если функция линейна по обеим крайним переменным, то её длина эквивалентности, очевидно, связана с известными понятиями длины (и ширины) покрытия группы С, порождённой подстановками $0 и ^1 [6].
Утверждение 4. Для любой двоичной функции без запретов от к переменных существует равновесная понижающая пара (Л, ¿), ¿ < Л ^ Н, где Н = 2П,
22(к—1) + 2к—1 — 1
п 1 2^—1
Доказательство. Рассмотрим последовательность /1 ,/2,... множеств, введённых в доказательстве утверждения 1. Как уже отмечалось при доказательстве утверждения 1, множество /5 при любом 5 = 1, 2,... является непустым подмножеством конечного множества М, мощность которого не превосходит величины 22(к—1) + 2к—1 — 1 2к
рых /^ = /¿. При этом индекс Л можно выбрать так, что он не превосходит числа всех подмножеств множества М, т. е. величины Н = 2П
п = ( к_1 ) . Следовательно, найдутся два индекса Л > ¿, при кото-
Замечание 2. Аналогичными рассуждениями можно показать, что если функция f удовлетворяет условиям утверждений 2 или 3, то она обладает равновесной понижающей парой (Л, ¿), ¿ < Л ^ 2П, где п = д^, д = 2к—1 в условиях утверждения 2 и п = (2к—1)! —в условиях утверждения 3.
Для заданной функции без запретов f через ) обозначим множество функций
и(Ж^(Ж) + ^(Ж + (Ж + е) + 1, f ^Ж^ f (5(Ж)) + 1, f (5(Ж) + e),f (5(Ж) + в) + 1}
где е — двоичный вектор с единичными координатами (преобразование ж + е заключается в инвертировании координат двоичного вектора ж); з(ж) = 5(ж1,ж2, ... , ж&) = (жк, Жк—1, . . . , Ж1).
Утверждение 5. Пусть функция без запрета f (ж1, ж2, ... , жк) обладает равновесной понижающей парой (Н, Т). Тогда (Н, Т) является равновесной понижающей парой для любой функции Е ).
Доказательство. Для заданной функции без запрета f (ж1, ж2, ..., жк) и выходного слова У = (у(1),у(2),... ,у(п)) через f—1(У) обозначим множество входных слов
f—1(У) = {ж1(3 ),Ж2(3 ),...,Жп+к—1(3) : 3 = 1, 2,..., 2к—1}, перерабатываемых функцией f в слово У:
уСО = f(Ж*(з‘),Жт О'^.. .,Ж*+к—1(3)), ¿ = 1,2,...,п; 3 = 12,...,2к—1.
Пусть <^(ж) = f (ж + е). Тогда для любого слова У множество векторов ^—1(У) получено из векторов множества f—1(У) путём их инвертирования. Следовательно, слова У и 3 эквивалентны относительно функции f в том и только в том случае,
если они эквивалентны относительно функции <^. А значит, если пара (Н, Т) является понижающей для функции f, то она будет понижающей и для функции <^.
Пусть <^(ж) = f (в (ж)) . Для заданного слова У = (у (1), у (2),..., у(п)) через У * = = (у(п) , у(п — 1) , . . . , у(1)) будем обозначать слово, полученное выписыванием в обратном порядке координат вектора У. Соответственно через f—1(У)* обозначим множество двоичных последовательностей, полученных выписыванием в обратном порядке элементов последовательностей, содержащихся в множестве f—1(У). Заметим, что f—1 (У)* = ^—1(У*). Значит, слово У длины Н эквивалентно слову 3 длины Т относительно функции f в том и только в том случае, когда слово У эквивалентно слову 3 относительно функции <^. Значит, пара (Н, Т) является понижающей для функции <^.
Пусть <^(ж) = f (ж) +1. Тогда ^—1(У+е) = f—1(У). Значит, слова У и 3 эквивалентны относительно функции f в том и только в том случае, если слова (У + е) и (3 + е) эквивалентны относительно функции <^. А значит, пара (Н, Т) будет понижающей и для функции <^. Оставшиеся варианты рассматриваются по аналогичной схеме. ■
4. Условия биективности отображений В/,^
Теорема 1. Пусть {Л, ¿1, ¿2,... , ¿0} —понижающее множество для функции f (ж1, Ж2, . . . , Жк), п0 ^ ¿0 + 5(1) + 5(2) — 1. Если отображение В/,£ является биективным для всех п Е {п0, п0 + 1,... , п0 + Л — ¿0 — 1}, то оно биективно при любом п ^ п0.
Доказательство. Для функции без запретов f (ж1, ж2, ..., жк) существует ровно
2к—1 входных слов ж1,ж2, ... , жп+к—1, перерабатываемых данной функцией в фиксированное выходное слово У = у(1), у(2),... ,у(п) по закону у(3) = f (ж^- ,ж^+1, ... , ж^+к—1),
3 = 1, 2,... ,п. Биективность отображения В/,^ равносильна тому, что любому фиксированному выходному слову у(1), у(2),... , у(п) соответствует единственное входное слово ж1,ж2, ... , Жп+к—1 с ограничениями (1). Заметим, что выполнение (или невыполнение) условий (1) для входного слова зависит только от его начала ж1, ж2, ..., ж^+5(1)—2 длины к + 5(1) — 2 и конца Жп—8(2)+1, Жп—8(2)+2, ... ,жга+к—1 длины к + 5(2) — 1. С учётом леммы 3 в условиях теоремы для любого слова У = у(1), у(2),..., у(п) длины п ^ п0 найдётся эквивалентное ему слово 3 = ¿(1), ¿(2),... , ¿(п0), имеющее такие же начальный и конечный отрезки длины 5(1) — 1 и 5(2) :
у(3) = ¿(3 ),3' Е {1, ^... ,5(1) — 1} у(п + 1 — 3) = ¿(п0 + 1 — 3 )3 Е {1, ^... ,5(2)}.
В таком случае у этих слов одинаковы системы /Г,8(У) = /г,5(3) для г = к + 5(1) — 2, 5 = к + 5(2) — 1. Следовательно, и условия (1) применительно к данным последовательностям одновременно выполнены или нет. ■
Теорема 2. Пусть (Л, ¿) —равновесная понижающая пара, п0 ^ ¿ + 5(1) + 5(2) — 1.
1) Если отображениеВ/,^ является биекцией для п = п0, то оно является биекцией при всех п = п0 + (Л — ¿)д, д = 0,1,...
2) Если отображениеВ/,^ не является биекцией для п = п0, то оно не является биекцией ни при каком п = п0 + (Л — ¿)д, д = 0,1,...
3) Задача нахождения биективных отображений В/ ^ при всех п ^ ¿ + 5(1) + 5(2) — 1 эквивалентна задаче нахождения биективных отображений В/,^ при п = п0 Е Е ^ + 5(1) + 5(2) — 1^ + 5(1) + 5(2),... , Л + 5(1) + 5(2) — 2}.
Доказательство. Доказательство части 1 и 2 теоремы. Используя рассуждения, аналогичные доказательству теоремы 1, получим, что в условиях теоремы 2 для любого слова У = у(1), у(2),... ,у(п) найдется слово 3 = £(1),2(2),..., ¿(п0), при котором /Г,«(У) = /г,«(3), г = к + 5(1) — 2, 5 = к + 5(2) — 1. Таким образом, если для выходного
слова ¿(1), ¿(2),... , ¿(т) длины т = п0 существует единственное входное слово с ограничениями (1), то это верно и для слова у(1), у(2),..., у(п) длины п = п0 + (Л — ¿)д. С другой стороны, пусть для некоторого выходного слова 3 = ¿(1), 2(2),... , ¿(т) длины т = п0 нарушено условие единственности входного слова ж1 , ж2, ... , жт+к—1 с ограничениями (1). Тогда в силу равновесности понижающей пары (Л, ¿) для слова 3 найдётся слово У = у(1),у(2),... ,у(п) длины п = п0 + (Л — ¿)д, такое, что /Г,8(У) = /г,8(3), г = к + 5(1) — 2, 5 = к + 5(2) — 1. Следовательно, для слова У также нарушено условие единственности входного слова ж1 , ж2, ... , Жп+к—1 с ограничениями (1). На этом доказательство частей 1 и 2 завершено. Справедливость третьей части вытекает из доказанных частей 1, 2 с учётом того, что в условиях теоремы любое натуральное число п ^ ¿ + 5(1) + 5(2) — 1 представимо в виде
п = п0 + (Л—¿)д, д Е {0,1,...}, п0 Е {¿+5(1)+5(2) — 1, ¿+5(1)+ 5(2),..., Л+5(1) + 5(2) —2}. Теорема доказана. ■
Таким образом, наличие понижающего множества для функции f (ж1, ж2, ... , ж^) в принципиальном плане сводит вопрос о биективности отображений В/ ^ для всех достаточно больших п к исследованию соответствующих отображений при ограниченных значениях п. Особенно ярко это проявляется для понижающей пары (Л, ¿) при Л = ¿ +1. В этом случае биективность В/,^ для п = п0 = ¿ + 5(1) + 5(2) — 1 равносильна его биективности при любом п ^ п0.
5. Преобразования, сохраняющие биективность отображения В/,^
Рассмотрим преобразования исходных функций (^ Ь), при которых сохраняется биективность отображения В/,^. Так, например, при биективности В/,^ биективным будет и отображение В/+1,^. Кроме того, биективным будет и отображение Вй,^, где #(ж) = f ((^' (ж))3 Е {1, 2,...}.
Утверждение 6. Пусть при f = f (ж1 ,Ж2,...,Жп) и Ь = Ж1 + Ь0(ж2, Ж3, . . . , Жп) отображение В/^ является биективным. Тогда биективно и отображение Вй,я, где д = f (ж1 + 1,Ж2 + 1,..., жп + 1), Н = Ж1 + Ь0 (ж2 + 1, Ж3 + 1,..., жп + 1).
Доказательство. Справедливость утверждения вытекает из легко проверяемого равенства т$—1т—1 = ¿я, где преобразование т заключается в инвертировании всех координат двоичного вектора. ■
Утверждение 7. Пусть при f = f (ж1 ,ж2,...,жк) и Ь = ж1 + Ь0 (ж2, Ж3,... , Жп), к ^ п, отображение В/,^ является биективным. Тогда биективно и отображение Вй,я, где д = f (Жк,Жк—1,..., Ж1), Н = Ж1 + Ь0(жп,жп—1,... ,Ж2).
Доказательство. Рассмотрим случай к = п. В силу биективности отображения система функций {f (ж), f ((¿¿)(ж)), ... , f ((^ь)п—1(ж))} будет ортогональной в том и только в том случае, когда такой будет система функций
{*1 = f((^) —1(5ж)),*2 = f(5Ж),^3 = f^Х5^.. . = f«¿¿Г2(5ж))},
где 5: (^2)п ^ (^2)п, 5(ж1, ж2, ... , Жп) = (жп, Жп—1,... , ж1). Из равенства 5^5—1 = (¿н)—1 следует, что
¿1 = f ((^ь) 1)5(ж)) = f (5^я (ж)) = д(^я(ж)), ¿2 = f (5(ж)) = g(ж),
¿3 = / ((¿і)з(х)) = / («(¿я) (х)) = 9((<ІЯ) МХ
*. = / ((¿і )"-2«(х)) = / («(¿я )_"+2(ж)) = «((¿я )_"+2(ж)).
Далее из ортогональности системы {^(ж),^(ж), ... , ¿п(ж)} следует ортогональность системы {¿1(В(ж)), ¿2(В(ж)), ... , ¿п(В(ж))}, где В — произвольная биекция на множестве векторов (^2)п. В частности, при В = (¿я)п—2 получаем ортогональность системы {д((£я)п— 1(ж)), ... , д(£я(ж)),д(ж)}. Поскольку свойство ортогональности системы функций не зависит от порядка следования функций, на этом доказательство утверждения для к = п завершено.
Пусть теперь к < п. Рассматривая функцию f (ж1, ж2, ... , ж^) как функцию от п переменных ж1, ж2, ... , Жп, из доказанного выше получаем биективность отображения В^,я, где = f (жп, Жп— 1,... , Жп—к+1). В таком случае биективно и Вй,я, где д = ^((¿я)п—к(ж)) = f (жк,жк—1,... ,ж1), что и завершает доказательство. ■
6. Случай к = 3
Для заданной понижающей пары (Л, ¿) и параметров 5(1), 5(2) через М будем обозначать множество
М = ^ + 5(1) + 5(2) — М + 5(1) + 5(2),..., Л + 5(1) + 5(2) — 2}.
Так как функции без запрета от трёх переменных f (ж1,ж2 ,Ж3) являются линейными по одной из крайних переменных, то с учётом утверждения 5 множество понижающих пар нелинейных функций задаётся понижающими парами (Л, ¿) функции Д = ж1ж2 + +ж2 + Ж3, для которой (Л,¿) = (6,4), и функции Д2 = ж1ж2 + Ж3, для которой (Л,¿) = (11,8). Для пары функций Д = ж1ж2 + ж2 + Ж3, Ь = ж1 + Жп—1 экспериментальными расчётами установлена биективность отображения В/,^ при п = 7 Е М = {6, 7}. Следовательно, по теореме 2 отображение В/,^ с указанными функциями Д, Ь биективно при всех нечётных п ^ 7. Аналогичный результат другими методами ранее получен в [7].
7. Случай к = 4
Экспериментальные исследования на ЭВМ привели к нахождению биективных отображений В/,^ для некоторых ограниченных значений п = п0 Е М. С учётом теоремы 2 это позволило построить бесконечные перечни длин регистра, при которых биективно отображение В/,^. В частности, биективные отображения исследуемого вида найдены для следующих четырёх функций Д и соответствующих функций Ь :
/і = Жі + Ж4 + Жі Ж2 + Жі Ж3 + ЖіЖ2Ж3,
/2 = Жз + Ж4 + Ж і Жз + Ж2 Жз + ЖіЖ2Жз,
/з = Ж4 + ЖіЖ2 + ЖіЖз + Ж2Ж3,
/4 = Ж2 + Ж3 + Жі Ж3 + Ж3 Ж4 + ЖіЖ3Ж4,
і = жі + Жга;
і Є {Жі + Жга_2, Жі + Жга}; Ь = Жі + Жга_і; і = Жі + Жга_ 2.
Общие характеристики функций / и Ь, значения п = п0 Є М, а также бесконечные перечни длин регистра, при которых биективно отображение В/,^, приведены в табл. 1.
Таблица 1
Параметры биекций B/,¿, f от четырёх переменных
f (x) L(x) s(1) s(2) (h,t) n = no € M (B f,L — биекция) Бесконечный перечень длин регистра (B f,L — биекция)
fl xi + xri 1 1 (9, 6) no = 8 n = 2 mod 3, n ^ 8
f2 x1 + xr-2 1 3 (8, 5) n O 1 O n = 1 mod 3, n ^ 10
f2 Xi + Xr 1 1 (8, 5) n O 8 n = 2 mod 3, n ^ 8
f3 X1 + xr-1 1 2 (12, 8) n0 = 11,13 n = 1 mod 2, n ^ 11
f4 X1 + xr-2 1 3 (6, 5) n O 8 n ^ 8
8. Случай k = 5
Примеры функций от пяти переменных и соответствующие им бесконечные классы биекций Bf,¿ приведены в табл. 2 и 3.
Таблица 2
Перечень функций f от пяти переменных, для которых найдены биекции B/,¿
_________________________f (x) = f (xo, xi, X2, X3, Ж4)________________
_________________________fi = X0X3 + X0X2X3 + X4_______________________
______________f2 = xi + X2 + X3 + XQXj + X0X3 + xi X2 + X2X3 + X4______
_________________________f3 = xix3 + xoxix3 + x4_______________________
f4 = xox3 + xix3 + x2x3 + xo xix2 + xoxix3 + xox2x3 + xix2x3 + x4 f5 = xo + x3 + xoxi + xqx2 + xqx3 + xoxix2 + xoxix3 + xox2x3 + xix2x3 + x4
______________fe = x2 + x3 + xqx2 + xix2 + xix3 + xoxix2 + x4__________
f7 = xo + x3 + xoxi + xox2 + xo x4 + xoxix2 + xoxix4 + xo x2x4 + xoxix2x4 fe = x3 + x2x4 + xox2x4 + xix2x4 + xoxix2x4 fg = x3 + xox4 + xoxix4
fio = x2 + x3 + xox3 + xix3 + x3x4 + xoxix3 + xox3x4 + xix3x4 + xoxix3x4 fii = xi + xox2 + xix2 + x2x3 + x2x4 + x3x4 + xox2x3 + xox2x4 + xox3x4 +
xix2x3 + xix2x4 + xix3x4 fi2 = x3 + xoxi + xi x4 + xoxix2 + xoxix4 + xi x2x4 + xoxix2x4
Таблица 3 Параметры биекций Bf,¿, f от пяти переменных
f (x) L(x) s(1) s(2) (h,t) n = П0 € M (Bf,L — биекция) Бесконечный перечень длин регистра (Bf,L — биекция)
f1 x0 + xr-2 1 2 (11, 7) n О 9 n = 1 mod 4, n ^ 9
f2 x0 + xr-2 1 2 (12, 8) n0 = 11,13 n = 1 mod 4, n ^ 13 n = 3 mod 4, n ^ 11
f3 x0 + xr-1 1 1 (10, 6) n О 1 О n = 2 mod 4, n ^ 10
f4 x0 + xr-1 1 1 (14, 8) n0 = 11,14 n = 2 mod 3, n ^ 11
f5 x0 + xr-1 1 1 (18, 12) n0 = 14,17 n = 2 mod 3, n ^ 14
f6 x0 + xr-3 1 3 (10, 7) n0 = 11 n = 2 mod 3, n ^ 11
f7 x0 + xr-2 1 2 (12, 9) n О 1 CO n = 1 mod 3, n ^ 11
f8 x0 + xr-2 1 2 (7, 6) n О 8 n ^ 8
f9 x0 + xr-2 1 2 (10, 8) n0 = 10,11 n ^ 10
f10 x0 + xr-3 1 3 (9, 8) n0 = 11 n ^ 11
f11 x0 + xr-3 1 3 (8, 7) n О 1 О n ^ 10
f12 x0 + xr-1 1 1 (14, 9) n О 1 О n = 0 mod 5, n ^ 10
Замечание 3. Отсутствие запретов у функций д € {/7,...,/12} из табл. 2 следует из утверждения 3 работы [8] с учётом полученной с помощью экспериментальных расчётов равновероятности 16-грамм (у1, у2,... , у16), где у- = д(ж-, ж^+ь... , £7+4),
3 = 1,2,..., 16.
Замечание 4. Описание всех функций /(ж1,ж2,... ,хк) без запрета при небольших значениях к можно проводить экспериментальными методами на основе результатов работ [8, 9]. Методы построения функций без запрета рассматриваются также в [4, 5, 10] и др.
9. Случай к = 6
В табл. 4 приведены параметры биективных отображений В/,£ для следующих функций от шести переменных:
/1 = Ж1Ж2 + Ж1Ж2Жз + Ж1Ж2ЖзЖ4 + Ж1Ж2Ж5 + Ж1Ж2ЖзЖ5 + Ж1Ж2ЖзЖ4Жб + £6;
/2 = Ж1Ж2 + Ж1Ж2Ж3 +Ж1Ж2Ж4 + Ж1Ж2Ж3Ж4 + Ж1Ж2Ж5 + Ж1Ж2 Ж3Ж5 + Ж1Ж2Ж4Ж5 + £1 Ж2Ж3Ж4Ж5 + £6;
/з = £3 + £4 + £5 + Х1Х3 + Х1Х4 + Х2Х3 + Х2Х4 + £6;
/4 = £3 + £4 + Ж1Ж2 + Ж1Ж3 + Ж1Ж4 + Ж1Ж5 + Ж2Ж5 + Ж3Ж5 + £4 £5 + £6.
Таблица 4
Примеры биекций Bf,L, f от шести переменных
/ (h,t) L s(1) s(2) n = no Є M (Bf,L — биекция) Бесконечный перечень длин регистра (Bf,L — биекция)
/1 (14, 9) x1+ xn-1 1 2 13 n = 3 mod 5, n ^ 11
fl (14, 9) x1 + xn-1 + xn 1 2 13 n = 3 mod 5, n ^ 11
/2 (14, 9) x 1 + Xn 1 1 12, 13, 14 n ^ 10, n = 2 mod 5 или n = 3 mod 5 или n = 4 mod 5
/2 (14, 9) x1+ xn-1 1 2 13, 14 n ^ 11, n = 3 mod 5 или n = 4 mod 5
/2 (14, 9) x1 + xn-1 + xn 1 2 13, 14 n ^ 11, n = 3 mod 5 или n = 4 mod 5
/3 (24, 16) x1+ xn-3 1 4 21, 22, 23, 25, 26, 27 n = 0 mod 4, n ^ 20
/4 (22, 14) x1+ xn-1 1 2 17, 19, 21, 23 n = 1 mod 2, n ^ 16
Замечание 5. В работе приведены только классы биекций В/,^, отвечающих функциям
Ь L (£1, £2, . . . , £«(1), £га-з(2)+1, £га-з(2)+2, . . . , £га) = £1.
Приведённые классы биективных отображений не являются окончательными и могут быть расширены, в том числе путём дополнительных экспериментов на ЭВМ с целью поиска биекций В/,£ в ограниченной области длин регистра п = п0, к + з(1) + з(2) — 2 ^ ^ п0 ^ Ь + з(1) + з(2) — 1, при ^(1) + з(2) > 4.
Замечание 6. Предлагаемый в работе метод построения биекций В/,^ полностью применим и для случая нелинейной функции обратной связи Ь рассматриваемого вида.
Заключение
В работе развивается новый метод построения биективных отображений В/,^, задаваемых регистром сдвига большой длины п с функцией обратной связи
L(xi, x2,... , xn), которая зависит от ограниченного числа крайних переменных, и нелинейной функцией-фильтром f (x1,x2, . . . , Xfc) от небольшого числа переменных k ^ n. Метод основан на поиске понижающих множеств функции f, наличие которых сводит исходную задачу для бесконечного множества длин генератора n к проверке биектив-ности конечного числа отображений, отвечающих генераторам ограниченной длины n ^ По. На основе предложенного метода построены новые бесконечные классы биективных отображений Bf,L для случая нелинейной функции f = f (x1 , x2,... , x&) от k ^ 6 переменных. Ранее аналогичные результаты были известны для случая, когда f зависит от трёх переменных.
Полученные результаты могут быть полезны при построении и обосновании статистических свойств датчиков случайных последовательностей на основе фильтрующих генераторов (их автоматная модель изложена, например, в [11]). При этом особое практическое значение имеет выбор пар (f, L), при которых одновременно обеспечивается биективность отображения Bj,l и максимальность периода отображения Sl. В этой связи отметим: если функция L обратной связи регистра сдвига длины n выбрана так, что соответствующая подстановка Sl обладает циклом длины 2n — 1, то имеется в точности 2i+1(1 — 2-n), где t = 2n-1, булевых функций f от n переменных, при которых отображение Bf,L является биективным [12, следствие 1].
Биективные отображения Bj,l возникают также при исследовании классов регистров сдвига, обладающих одинаковой цикловой структурой. Действительно, как следует из результатов работы [12], если B/,l — биекция на двоичных векторах длины n, то регистры сдвига с функциями обратной связи L(x) и <^(x) = f ((SL)raB-L (x)) имеют одинаковую цикловую структуру. Тем самым для получения явного вида функции обратной связи <^(x) необходимо знать аналитический вид координатных функций отображения B-L. В этой связи отметим, что в работе [7] получены оценки для степени нелинейности координатных функций (и их линейных комбинаций) отображения B-L для случая функции f от трёх переменных.
ЛИТЕРАТУРА
1. Лидл Р., Нидеррайтер Г. Конечные поля: в 2-х т. М.: Мир, 1988. 822 с.
2. Рожков М. И. К вопросу построения ортогональных систем двоичных функций с использованием регистра сдвига // Лесной вестник. 2011. Вып.3. С. 180-185.
3. Huffman D. A. Canonical forms for information loss less finite state logical mashines // IRE Trans. Circuit Theory. 1959. V. 6, spec. suppl. P. 41-59.
4. Сумароков С. Н. Запреты двоичных функций и обратимость для одного класса кодирующих устройств // Обозрение прикл. и промышл. матем. Сер. дискретн. матем. 1994. Т. 1. Вып. 1. С. 33-35.
5. Логачев О. А., Смышляев С. В., Ященко В. В. Новые методы изучения совершенно уравновешенных булевых функций // Дискретная математика. 2009. Т. 21. №2. С. 51-74.
6. Глухов М. М., Елизаров В. П., Нечаев А. А. Алгебра: учебник. В 2-х т. Т. 2. М.: Гелиос АРВ, 2003. 416 с.
7. Саранцев А. В. Построение регулярных систем однотипных двоичных функций с использованием регистра сдвига // Лесной вестник. 2004. №1(32). С. 164-169.
8. Рожков М. И. Некоторые алгоритмические вопросы идентификации конечных автоматов по распределению выходных m-грамм. Ч. 2 // Обозрение прикл. и промышл. матем. Сер. дискретн. матем. 2008. Т. 15. Вып. 5. С. 785-806.
9. Рожков М. И. Некоторые алгоритмические вопросы идентификации конечных автоматов по распределению выходных m-грамм. Ч. 3 // Обозрение прикл. и промышл. матем. Сер. дискретн. матем. 2009. Т. 1б. Вып. 1. С.35-б0.
10. Михайлов В. Г., Чистяков В. П. О задачах теории конечных автоматов, связанных с числом прообразов выходной последовательности // Обозрение прикл. и промышл. матем. Сер. дискретн. матем. 1994. Т. 1. Вып. 1. С. 7-32.
11. Фомичев В. М. Дискретная математика и криптология. Курс лекций / под общ. ред. Н. Д. Подуфалова. М.: ДИАЛОГ-МИФИ, 2003. 400 с.
12. Рожков М. И. О некоторых классах нелинейных регистров сдвига, обладающих одинаковой цикловой структурой // Дискретная математика. 2010. Т. 22. №2. С.9б-119.