4. Зубков А. М., Серов А. А. Оценки числа булевых функций, имеющих аффинные приближения заданной точности // Дискретная математика. 2010. №4. С. 3-19.
УДК 519.7
О НЕЛИНЕЙНОСТИ НЕКОТОРЫХ БУЛЕВЫХ ФУНКЦИЙ С МАКСИМАЛЬНОЙ АЛГЕБРАИЧЕСКОЙ ИММУННОСТЬЮ
Н. А. Коломеец
После публикации работ [1,2] большое внимание уделяется алгебраической иммунности булевых функций. Алгебраическая иммунность булевой функции f (обозначается через AI(f)) —это минимальная положительная алгебраическая степень булевой функции, аннулирующей f или f ф 1, т. е.
AI(f) = min{deg(g) : Vx f (x)g(x) = 0 или Vx (f (x) ф 1)g(x) = 0}.
0
Известно, что для функции f от n переменных AI(f) ^ |"n/2]. Для криптографических приложений наибольший интерес представляют функции с максимально возможной алгебраической иммунностью, т. е. с AI(f) = |"n/2] (такое значение алгебраической иммунности достижимо для любого n).
В данной работе исследуется нелинейность функций, обладающих максимально возможной алгебраической иммунностью, а именно: рассматриваются функции, построенные с помощью одной из самых простых конструкций для чётного числа переменных, которая предложена D. K. Dalai и др. в работе [3]:
0, 'і(х) < п/2,
/ (х) = ^ Ь Є {0,1}, ^(х) = п/2, (1)
1, 'І(х) > п/2,
где п — количество переменных (п чётно); 'і(х) —вес Хэмминга вектора х. Все такие функции обладают алгебраической иммунностью п/2.
Нелинейностью булевой функции / (обозначается через п1(/)) называется расстояние Хэмминга от функции / до класса аффинных функций (функций вида аіхі ф ... ф апхп ф а0). Это также одно из важнейших криптографических свойств булевых функций.
Получена следующая верхняя оценка нелинейности функций вида (1).
Теорема 1. Для функций / вида (1) выполняется
п1(/) < 2п-1 - /п - 1%
n/2
В той же работе [3] рассматривается нелинейность функций, полученных с помощью данной конструкции, а именно доказано
Утверждение 1 (Dalai и др. [3]). Для функции
0, wt(x) ^ n/2,
от n переменных (n чётно) верно
n|(f) = 2”-‘ - ( "-21
Таким образом, оценка из теоремы 1 достижима.
Поскольку максимальная нелинейность для функций от чётного числа переменных равна 2n-1 — 2n/2-1, нелинейность функций вида (1) заметно отличается от максимально возможной.
ЛИТЕРАТУРА
1. Courtois N. and Meier W. Algebraic Attacks on Stream Ciphers with Linear Feedback // LNCS. 2003. V. 2656. P. 345-359.
2. Meier W., Pasalic E., and Carlet C. Algebraic Attacks and Decomposition of Boolean Functions // LNCS. 2004. V. 3027. P. 474-491.
3. Dalai D.K., Maitra S., and Sarkar S. Basic Theory in Construction of Boolean Functions with Maximum Possible Annihilator Immunity // Designs, Codes and Cryptography. 2006. V. 40. Iss. 1. P. 41-58.
УДК 519.7
О СТАТИСТИЧЕСКОЙ НЕЗАВИСИМОСТИ СУПЕРПОЗИЦИИ
БУЛЕВЫХ ФУНКЦИЙ. II
О. Л. Колчева, И. А. Панкратова
Следуя [1], будем говорить, что булева функция f статистически не зависит от подмножества U своих аргументов, если для любой её подфункции f', полученной фиксированием значений всех переменных в U, имеет место w(f;) = w(f)/2|U|, где w(f ) —вес функции f.
В [2] доказано следующее утверждение.
Утверждение 1. Пусть x, y, z — переменные со значениями в (Z2)n, (Z2)m и (Z2) соответственно и функция f (x,y) статистически не зависит от переменных в x. Тогда и функция h(x,y,z) = g (f (x,y),z), где g — любая функция от l + 1 переменных, статистически не зависит от переменных в x.
В общем случае это утверждение не допускает обобщения на случай нескольких внутренних функций f. Получено следующее достаточное условие статистической независимости от аргументов суперпозиции произвольной функции с двумя внутренними функциями.
Утверждение 2. Пусть x, y, z — переменные со значениями в (Z2)n, (Z2)m и (Z2) соответственно, функции f1(x,y), f2(x,y), u(x,y) = f1(x,y) Ф f2(x,y) статистически не зависят от переменных в x. Тогда и функция h(x, y, z) = g (f1(x, y), f2(x, y), z), где g — любая функция от l + 2 переменных, статистически не зависит от переменных в x.
Доказательство. Для любых a G {0,1}n, i,j G {0,1} обозначим cj = |{y G G {0,1}m : f1(a, y) = i, f2(a, y) = j}|. В силу статистической независимости функций f1, f2, u от переменных в x для любого a G {0,1}n выполняется
cîo + cn = w(f1)/2n ^1 + cn = w ( f2) / 2™, c^1 + c?0 = w(u)/2n.
Отсюда получаем c^1 = (w(u) — w(f1)+ w(f2))/2n+1, c^0 = (w(u)+ w(f1) — w(f2))/2n+1, can = (w(f1) + w(f2) — w(u))/2n+1, cgo = 2m — (w(u) + w(f1) + w(f2))/2n+1, т.е. c“ не
зависит от a для всех i, j G {0,1}. Тогда и вес подфункции функции h, полученной фиксацией переменных в x набором значений a, не зависит от a, так как w(h(a, y, z)) =