На следующих функциях оценка £(n) достигается: n = 2, F =(0 0 0 1); n = 3, F =(0 2 2 2 2 3 6 5);
n = 5, F =(0 0 0 1 0 2 4 8 0 3 6 12 7 16 25 23 0 7 3 22 28 19 9 0 19 8 15 28 21 9 29 2). Для следующих функций достижима оценка £(n) — 1:
n = 4, F =(0 0 0 1 0 2 4 7 0 4 6 3 8 14 10 13);
n = 6, F =(0 0 0 1 0 2 4 7 0 4 6 3 8 14 10 13 0 8 16 25 5 15 17 26 32 44 54 59 45 35 63 48 0 16 26 36 34 48 60 0 45 57 49 11 7 17 31 39 43 28 14 23 12 57 45 54 38 21 5 24 9 56 46 49).
ЛИТЕРАТУРА
1. Nyberg K. Differentially uniform mappings for cryptography // Eurocrypt'1993. LNCS. 1994. V. 765. P. 55-64.
2. Тужилин М. Э. Почти совершенные нелинейные функции // Прикладная дискретная математика. 2009. №3. С. 14-20.
3. Budaghyan L. Construction and Analysis of Cryptographic Functions. Habilitation Thesis, University of Paris, Sept. 2013.
УДК 519.7 DOI 10.17223/2226308X/8/9
О ПЕРЕСЕЧЕНИИ МНОЖЕСТВ ЗНАЧЕНИЙ ПРОИЗВОДНЫХ
APN-ФУНКЦИЙ1
А. А. Городилова
Исследуются пересечения множеств значений производных двух APN-функций. Формулируются два вопроса: какова минимальная мощность таких пересечений и как связаны любые две APN-функции, множества значений производных которых попарно совпадают по каждому направлению. Получены частичные результаты по каждому из вопросов.
Ключевые слова: векторная булева функция, производная по направлению, APN-функция.
В работе рассматривается специальный класс векторных булевых функций — почти совершенные нелинейные функции (APN-функции). Векторная булева функция F : Fn ^ Fn называется APN-функцией, если для любых векторов a,b G Fn, где a — ненулевой вектор, уравнение F(x) ф F(x фa) = b имеет не более двух решений. Данные функции представляют интерес для использования в качестве узлов замены в блочных шифрах в силу их оптимальной стойкости к разностному криптоанализу. Однако класс APN-функций достаточно слабо изучен (см., например, обзор [2]), остаётся большое число открытых вопросов [3].
Настоящая работа посвящена исследованию пересечений множеств значений производных APN-функций. Производной функции F : Fn ^ Fn по направлению a G Fn называется функция Da F (x) = F (x) ф F (x ф a). По определению F — APN-функция, если её производные по каждому направлению принимают в точности 2n-1 различных значений, т.е. |Ba(F)| = |{DaF(x) : x G Fn}| = 2n-1. Для автора представляется интересным найти ответы на следующие вопросы.
Открытый вопрос 1. Каково минимальное пересечение множеств значений производных двух APN-функций?
1 Работа поддержана грантом РФФИ, проект №15-31-20635.
26
Прикладная дискретная математика. Приложение
Открытый вопрос 2. Как связаны АРМ-функции ^ и С от п переменных, если их производные по каждому направлению имеют одинаковые множества значений соответственно, т. е. для любого а = 0 верно Ба(^) = Ба(С)?
Первый вопрос связан, в частности, с поиском итеративной конструкции. Из теоремы 1 [1] следует, что если взять две АРМ-функции С от п переменных и две булевы функции /, д от п переменных, для которых выполнено условие допустимости (для всех х, у, а € ЩП, а = 0, хотя бы одно из равенств (х) = ДаС(у) и Да/(х) = Бад(у) нарушается), то по ним можно определить АРМ-функцию от п +1 переменной. Фактически, вся сложность описанного подхода к итеративному построению АРМ-функций заключается в поиске исходных допустимых векторных функций ^ и С (т. е. тех, для которых существуют булевы функции /, д, такие, что для С, /, д выполнено условие допустимости). Получен следующий эквивалентный критерий проверки допустимости пары АРМ-функций ^ и С, который не включает в рассмотрение соответствующие булевы функци / и д.
Утверждение 1. Пара АРМ-функций ^ и С от п переменных допустима тогда и только тогда, когда для любого нечётного к, к ^ 3, не существует набора векторов хг, уг, а*, г = 1,..., к, где аг = 0, таких, что ^(хг) 0 ^(хг 0 а4) = С(уг) 0 С(уг 0 а4), г = 1... , к, и каждый из векторов х и у среди хг, хг 0 аг и уг, уг 0 аг соответственно (г = 1,..., к) встречается чётное число раз.
Как можно видеть из утверждения 1, необходимо отслеживать, какие пересечения имеют множества значений производных функций ^ и С по всем направлениям. Логично предположить, что чем меньше мощности пересечений значений производных функций ^ и С, тем больше вероятность, что будут выполнены условия утверждения 1.
Утверждение 2. Для любых двух АРМ-функций ^ и С от п переменных, п ^ 3, существует ненулевой вектор а € ЩП, такой, что множества значений производных и ДаС пересекаются.
Далее рассмотрим отдельно случай двух квадратичных АРМ-функций, которые в сумме дают линейную функцию. Пусть ^ — квадратичная АРМ-функция, а Ь — линейная от п переменных (для любых х,у € ЩП выполнено Ь(х 0 у) = Ь(х) 0 Ь(у)). Тогда производные ^ по всем направлениям аффинны и, следовательно, множества Ба(^) = (х) 0 ^(х 0 а) : х € ЩП} являются аффинными подпространствами ЩП размерности п — 1. Далее, поскольку Ба(^ 0 Ь) = Ба(^) 0 Ь(а), то Ба(^) и Ба(^ 0 Ь) либо совпадают, либо не пересекаются. Из этого следует также, что ^ 0 Ь является АРМ-функцией.
Утверждение 3. Пусть ^ — квадратичная АРМ-функция, а Ь — произвольная линейная функция от п переменных. Пусть существуют в точности к различных ненулевых аг € ЩП, при которых Баг= Баг(^0Ь). Тогда если к > 2П-1, то пара ^, ^0Ь не является допустимой.
Гипотеза 1. Для любой квадратичной АРМ-функции ^ от п переменных существует линейная функция Ь от п переменных, такая, что пара ^ и ^ 0 Ь является допустимой.
Гипотеза 1 выполняется для п = 3; найдены также примеры, подтверждающие её при п = 4, 5 (эти размерности вычислительно не позволяют провести полный перебор).
Второй вопрос связан с описанием классов АРМ-функций, у которых множества значений производных попарно совпадают по каждому направлению. Ранее авто-
ром неверно предполагалось, что для каждой APN-функции F такой класс состоит только из функций F(x ф с) ф d, где с, d пробегают F^. Однако найдены примеры квадратичных функций F от 4 переменных, для которых существуют линейные функции L, прибавление которых к исходной функции F сохраняет множества значений производных по всем направлениям, но при этом F ф L не лежит в классе {F(x ф с) ф d : с, d G F^}. Например, в качестве F можно выбрать APN-функцию F(xi,x2,x3,x4) = (xix2, xix3 ф x2x4, x2x3 ф xix4 ф x2x4, x3x4), а в качестве линейной следующую: L(x1,x2,x3,x4) = (x1 ф x2, x2 ф x3, x2, x3 ф x4). Тогда для любого ненулевого a G F4 верно Ba(F) = Ba(F ф L).
ЛИТЕРАТУРА
1. Городилова А. А. Характеризация APN-функций через подфункции // Прикладная дискретная математика. Приложение. 2014. №7. С. 15-16.
2. Тужилин М. Э. Почти совершенные нелинейные функции // Прикладная дискретная математика. 2009. №3. С. 14-20.
3. Carlet C. Open questions on nonlinearity and on APN functions // LNCS. 2015. V. 9061. P. 83-107.
УДК 512.552.18 DOI 10.17223/2226308X/8/10
ИССЛЕДОВАНИЕ ГРУППЫ БИЕКТИВНЫХ ДИФФЕРЕНЦИРУЕМЫХ ПО МОДУЛЮ pn ФУНКЦИЙ
А. С. Ивачев
Описана с точностью до изоморфизма группа биективных дифференцируемых по модулю pn функций, предложен способ поиска сопрягающего элемента в этой группе с помощью решения системы линейных уравнений над Zp, а также предложен способ генерации транзитивных функций с помощью биективных дифференцируемых по модулю pn функций путём сопряжения функции f (x) = x + 1 биективными функциями.
Ключевые слова: дифференцируемая по модулю pn функция, биективная функция, транзитивная функция, сопряжение.
Генерация последовательностей больших периодов, состоящих из элементов конечного кольца, является важной задачей в криптографии. Для генерации последовательности может использоваться следующая рекуррентная формула:
xi+i = f (xi),i = 1, 2,...,
где f — некоторая функция над кольцом Zpn.
Возникает проблема выбора f, такой, чтобы она легко вычислялась и генерировала последовательность xix2 ... максимального периода pn.
Как вариант выбора таких f в [1] предложены и исследованы дифференцируемые по модулю pn функции, в том числе те из них, которые являются биективными и транзитивными. В частности, построены критерии биективности и транзитивности и получена формула для вычисления обратных биективных дифференцируемых по модулю pn функций.
В данной работе проведено более глубокое изучение биективных дифференцируемых функций, а также основных задач, в которых данные функции могут быть применимы.