О построении APN-перестановок с помощью подфункций | ПДМ. 2018. № 41. DOI: 10.17223/20710410/41/2

О построении APN-перестановок с помощью подфункций

Работа посвящена проблеме существования взаимно однозначных APN-функций от чётного числа переменных. Рассматриваются векторные 2-в-1 функции, изоморфные (n- 1)-подфункциям APN-перестановок, которые могут быть построены с помощью специального алгоритма. Для того чтобы получить APN-перестановку, необходимо найти координатные булевы функции f, такие, что взаимно однозначная функция, полученная из данной (n - 1)-подфункции и функции f, является APN-функцией. Вводится понятие ассоциированных перестановок и доказывается оценка на число таких координатных булевых функций для некоторой (n - 1)-подфункции. Описан соответствующий алгоритм поиска взаимно однозначных APN-функций с помощью подфункций и координатных булевых функций.

On constructing APN permutations using subfunctions.pdf Введение Стойкость современных симметричных шифров существенно зависит от характеристик, которыми обладают их компоненты, в частности S-блоки. В общем случае S-блок представляет собой векторную функцию из Fn в F^. Многие широко используемые блочные шифры, такие, например, как AES, ГОСТ Р 34.12-2015 (Кузнечик), Serpent, являются по своей структуре SP-сетями. Важным свойством, требуемым от S-блоков в SP-сетях, является их обратимость, то есть векторная функция, используемая в качестве S-блока, должна быть взаимно однозначной. Появление метода дифференциального криптоанализа в 1990 г. потребовало от S-блоков новых характеристик. Так, было введено понятие функций с низкой дифференциальной равномерностью и APN-функций - векторных функций, обладающих оптимальной стойкостью к дифференциальному криптоанализу. Одна из самых важных задач в области APN-функций заключается в необходимости совместить свойства взаимной однозначности и минимально возможной дифференциальной равномерности в одном S-блоке. Для нечётных n существует множество конструкций таких функций, однако для чётных размерностей до сих пор известен лишь один пример взаимно однозначной APN-функции от шести переменных. Данная работа посвящена проблеме поиска и построения взаимно однозначных APN-функций. Рассматриваются 2-в-1 векторные функции, обладающие низкой дифференциальной равномерностью, которые могут быть получены специальным алгоритмом. Показано, что с помощью данных 2-в-1 функций возможен поиск новых APN-перестановок. В п. 1 вводятся основные определения и аппарат APN-функций, а также рассматриваются некоторые известные результаты, связанные с проблемой существования APN-перестановок. В п. 2.1 описывается алгоритм поиска APN-перестановок с помощью подфункций и недостающих координатных булевых функций и формулируется основная задача работы. В п. 2.2 рассматривается дифференциально 4-равно-мерная 2-в-1 векторная функция и доказывается нижняя оценка числа координатных булевых функций, таких, что перестановка, полученная из исходной 2-в-1 векторной функции и данной координатной булевой функции, является APN-функцией. Данная оценка позволяет понять, как много таких координатных функций существует и, следовательно, насколько быстро найдётся APN-перестановка в процессе работы алгоритма. Для произвольной взаимно однозначной функции вводится понятие ассоциированной перестановки. Доказывается, что некоторая перестановка является APN-функцией тогда и только тогда, когда её ассоциированная перестановка также является APN-функцией. 1. Определения 1.1. Основные определения Будем обозначать через Fn множество всех двоичных векторов длины n. Функция F из Fn в Fm, где n и m - целые числа, называется векторной булевой функцией. Если m = 1, то функция F называется булевой. Произвольная векторная функция F может быть представлена как набор из m координатных функций F = (fl,..., fm), где fi - булева функция от n переменных. Для произвольного ненулевого вектора v G Fm линейная комбинация координатных функций v • F называется компонентной функцией. Любую векторную булеву функцию F можно единственным образом представить в виде алгебраической нормальной формы (АНФ): n F(хь . . . , хп) = ф ф aii,...,ifcxil . . . xik ф a0, fc=l где ail,...,ifc, a0 G Fm. Алгебраической степенью функции F называется количество переменных в самом длинном слагаемом её АНФ, при котором коэффициент не равен нулю. Если алгебраическая степень F не превышает единицы, то F называется аффинной. Аффинная функция F называется линейной, если F(0) = 0. Векторная булева функция F называется уравновешенной, если она принимает каждое значение из Fm ровно 2n-m раз, в частности, булева функция уравновешена, или сбалансирована, если она принимает каждое значение 2п-1 раз. В случае n = m уравновешенная функция F называется взаимно однозначной, или перестановкой. Производной функции F по направлению a называется векторная функция DaF(х) = F(х + a) + F(х), где a - ненулевой вектор из Fn. Вектором значений для векторной функции F называется вектор (F(x(l)),..., F(x(2n))), где x(l),..., x(2n) - лексикографически упорядоченные двоичные векторы из Fn. Векторная функция F из Fn в Fn называется 2-в-1 функцией, если она принимает 2п-1 различных значений, каждое из которых встречается в векторе значений ровно два раза. Мы можем сопоставить векторному пространству Fn конечное поле GF(2n) и рассматривать векторную булеву функцию как функцию над этим полем. Тогда любая векторная функция F единственным образом представляется над GF(2n) в следующей форме: 2n-l F(х) = £ \х\ Ai G GF(2n). i=0 Векторные булевы функции F и G называются расширенно аффинно эквивалентными (EA-эквивалентными), если F = Al о G о A2 + A, где Al,A2 -взаимно однозначные аффинные функции над Fn и A - аффинная функция. Если функции F и G являются EA-эквивалентными и A = 0, то F и G называются аффинно эквивалентными. Рассмотрим ещё одно отношение эквивалентности [1] на множестве векторных булевых функций. Две функции F и G называются CCZ-эквивалентными, если соответствующие множества {(х,у) G Fn х Fn : у = F(х)} и {(х,у) G Fn х Fn : у = G(x)} являются аффинно эквивалентными, т. е. если существует аффинный автоморфизм A = (Al, A2), такой, что у = F(х) ^ A2(x,у) = G(Al(x,у)). 1.2. Взаимно однозначные APN-функции Рассмотрим векторную функцию F из Fn в Fn. Для векторов a, b G Fn, где a = 0, определим £(a,b) = |{x G Fn : F(x + a) + F(x) = b}|, AF = max £(a,b). Функция F называется дифференциально Ар -равномерной. Чем меньше параметр Ар, тем выше стойкость шифра, содержащего F в качестве S-блока, к дифференциальному криптоанализу. Для векторных функций из F^ в F^ наименьшее значение Aр равно 2. В этом случае функция F называется почти совершенно нелинейной (APN-функцией). Данные понятия введены К. Ньюберг в работе [3]. Если F является APN-функцией, то любая EA-эквивалентная/CCZ-эквивалентная функция также является APN-функцией. Наиболее известные представители класса APN-функций - это мономиальные функции, то есть функции вида F(x) = xd (таблица) над конечным полем GF(2n). Известно [12], что APN-функции изучались ещё в СССР. Так, например, в 1964г. В. А. Башевым и Б. А. Егоровым было доказано, что инверсия элемента поля является APN-функцией. Несмотря на то, что класс APN-функций активно изучается, в данной области по-прежнему большое количество открытых вопросов. Для дальнейшего изучения темы рекомендуем, например, обзоры [12-16], книги [17, 18] и т.д. Известные мономиальные APN-функции вида xd над полем GF(2n) Название Значение d Условия Ссылки Голда 2* + 1 (t, n) = 1 [2, 3] Касами 22t - 2* + 1 (t, n) = 1 [4, 5] Уолша 2* + 3 n = 2t +1 [6, 7] Нихо 2* + 2*/2 - 1, t чётное 2* + 2(3*+1)/2 - 1, t нечётное n = 2t +1 [8, 9] Инверсия 22* - 1 n = 2t +1 [3, 10] Доббертина 2« + 23 + 22* + 2* - 1 n = 5t [11] Один из самых важных открытых вопросов в области APN-функций посвящён проблеме существования взаимно однозначных APN-функций, или APN-перестановок. В [19] выдвинута гипотеза (и доказана для случая n = 4), что не существует APN-перестановок от чётного числа переменных. Однако в 2009 г. был найден первый пример взаимно однозначной APN-функции от шести переменных [20]. В работах [21, 22] рассматривается бесконечное семейство векторных функций, таких, что Ар ^ 4, также содержащее APN-функцию Диллона, однако доказано, что это единственная APN-перестановка в данном семействе. До сих пор неизвестно, существуют ли другие APN-перестановки от шести переменных (неэквивалентные функции Диллона) и существуют ли они вообще для других чётных n > 6. 2. 2-в-1 функции как подфункции APN-перестановок 2.1. Алгоритм построения APN-перестановок с помощью (n - 1) - подфункций В работе [23] предложен новый способ построения 2-в-1 APN-функций, использующий символьные последовательности специального вида. Вектору значений 2-в-1 функции можно сопоставить символьную последовательность, такую, что одинаковым значениям соответствуют одни и те же символы, а различным значениям - разные символы. В том случае, когда F - APN-функция, такая последовательность называется допустимой. В [23] также описан алгоритм генерации всевозможных допустимых последовательностей. Определение 1. Пусть F - векторная булева функция F = (Д,...,/) из F^ в F^. Векторная функция Fj из F^ в F^-1 называется (n - 1)-подфункцией функции F, если Fj = (/1,..., /j-1, /j+1,... , /n) для некоторого индекса j G {1,... , n}. Напомним, что векторному пространству Fn можно сопоставить целочисленное множество {0,..., 2n - 1}, где каждое целое число является десятичным представлением двоичного числа, представляющего вектор. Тогда можно рассматривать (n - 1)-подфункцию Fj из Fn в Fn-1 как векторную функцию из Fn в Fn, к которой в качестве первой координатной функции добавлена булева функция, тождественно равная нулю. Данная расширенная функция принимает значения только из множества {0,... , 2n-1 - 1}. Таким образом, множество (n - 1)-подфункций изоморфно множеству таких векторных функций из Fn в Fn. Далее будем рассматривать оба определения (n - 1)-подфункции в зависимости от контекста. Рассмотрим 2-в-1 функцию, которая принимает значения из {0,... , 2n-1 - 1}, обозначим множество таких 2-в-1 функций от n переменных через Tn Легко заметить, что любая (n - 1) -подфункция взаимно однозначной векторной функции есть в точности функция из Tn. В работе [23] доказаны следующие утверждения. Теорема 1. Пусть F - взаимно однозначная APN-функция от n переменных. Тогда любая её (n - 1)-подфункция является дифференциально 4-равномерной функцией из Tn. Вопрос характеризации APN-функции через её подфункции исследовался также в работе [24], где доказано, что любая подфункция APN-функции из Fn-1 в Fn-1 является APN-функцией или дифференциально 4-равномерной векторной функцией. Напомним, что в данной работе дифференциально 4-равномерная функция - это функция, для которой значение max $(a,b) равняется 4, то есть, согласно данному определению, APN-функции не являются дифференциально 4-равномерными. В некоторых работах встречается другое определение дифференциально ^-равномер-ных функций, которое включает функции меньших порядков дифференциальной равномерности, в частности APN-функции. Теорема 2. Пусть F - взаимно однозначная APN-функция от n переменных. Тогда символьная последовательность, соответствующая вектору значений любой её (n - 1)-подфункции, является допустимой последовательностью. Из данных теорем следует, что любая APN-перестановка может быть получена из 2-в-1 дифференциально 4-равномерной функции, построенной при помощи допустимой последовательности. В [23] предложен следующий алгоритм для поиска взаимно однозначных APN-функций. На первом шаге строятся допустимые символьные последовательности и для каждой последовательности находится означивание, такое, что полученная 2-в-1 функция является дифференциально 4-равномерной. Следовательно, данная функция может быть изоморфна (n - 1)-подфункции некоторой взаимно однозначной APN-функции и соответственно эта (n - 1)-подфункция может быть достроена до APN-перестановки. Без ограничения общности рассмотрим (n- 1)-подфункцию S = (s1,... , sn-1), которая изоморфна 2-в-1 векторной функции из Tn Напомним, что любая такая функция является (n - 1) -подфункцией некоторой взаимно однозначной векторной функции из Fn в Fn. Для того чтобы её получить, нужно добавить к подфункции S недостающую координатную булеву функцию / = sn от n переменных, удовлетворяющую некоторым свойствам. Легко заметить, что функция / должна быть сбалансированной, так как искомая векторная функция взаимно однозначна. Поскольку (n - 1)-подфункция S = (s1,... , sn-1) является 2-в-1 функцией, каждое из значений 0,1,..., 2n-1 - 1 встретится ровно два раза. Соответственно на одну пару совпадающих значений подфункции S приходится либо упорядоченная пара значений (0,1) недостающей булевой функции, либо упорядоченная пара значений (1, 0). Так как в векторе значений S имеется 2n-1 пар совпадающих значений, всего существует 22n булевых функций f = sn, таких, что S = (s1,... , sn-1, sn) является взаимно однозначной функцией. К сожалению, число 22n уже при n ^ 7 очень велико для того, чтобы перебрать всевозможные варианты недостающих координатных булевых функций и проверить, является ли APN-функцией построенная взаимно однозначная функция S = (s1,..., sn-1, sn). Поэтому, чтобы оценить, как быстро при переборе найдётся искомая взаимно однозначная APN-функция, необходимо найти количество тех булевых функций, которые дают именно APN-перестановку. 2.2. Оценка числа координатных булевых функций для (n - 1) -подфункции Для произвольного натурального n рассмотрим векторное пространство Fn и разобьём его на два равномощных непересекающихся подмножества Fn = V1 U V2 следующим образом: пусть V1 = {v £ Fn : wt(v) - нечётное число} и V2 = {v £ Fn : wt(v) - чётное число}, wt(v) -вес вектора v. Рассмотрим произвольную взаимно однозначную функцию F = (f1,... , fn). Зафиксируем k координатных функций fil,...,/, и разобьём Fn на два непересекающихся подмножества F1 и F2 следующим образом: Fj = {(h(x),..., fn (x)) : fil (x),..., fifc (x) £ Vj, x £ Fn}, j = 1, 2. Пусть дано значение k, а также набор индексов i1,...,ik и индекс j £ {i1 ,...,ik}. Определим ассоциированную перестановку F* следующим образом: F*(x)= /F(x) F(x) £ Fb () \F(x) + ej, F(x) £F2. Здесь ej - вектор веса 1, содержащий 1 в j-й компоненте. Теорема 3. Перестановка F является APN-функцией тогда и только тогда, когда перестановка F* является APN-функцией. Доказательство. Поскольку F - APN-функция, для любого ненулевого вектора а £ Fn её производная DaF(x) = F(x) + F(x + а) является 2-в-1 функцией. Зафиксируем произвольный вектор а' и рассмотрим вектор значений функции Da/ F. Он состоит из 2n-1 различных значений Ba/F = {b1,... , b2n-i}, каждое из которых встречается ровно два раза. Рассмотрим перестановку F*(x) и производную Da/F* для того же вектора а'. Без ограничения общности, для фиксированного аргумента x' возможны три случая: 1) F(x') £ F и F(x' + а') £ F1; 2) F(x') £ F1 и F(x' + а') £ F2; 3) F(x') £ F2 и F(x' + а') £ F2. Рассмотрим первый случай. Поскольку F(x') и F(x' + а') лежат в F1, значение Da F*(x') = Da/F*(x' + а') = Da/F(x') = Da/F(x' + а') принадлежит Ba/F и встречается два раза. В третьем случае оба значения F(x') и F(x' + а') лежат в F2. Тогда значение производной Da/ F*(x') равно значению производной Da/ F(x'), поскольку Da/ F*(x') = = F*(x') + F*(x' + а') = F(x') + ej + (x' + а') + ej = F(x') + (x' + а'). Заметим, что Da/F*(x') совпадает со значением Da/F*(x' + а'), следовательно, оно принадлежит Ba/F и встречается два раза. Чтобы доказать, что перестановка F* является APN-функцией, необходимо показать, что значение производной, получаемое во втором случае, отлично от значений производной, получаемых в первом и третьем случаях, а также показать, что оно встретится в векторе значений функции Da< F* ровно два раза. Докажем вторую часть необходимого условия. Поскольку F(x') принадлежит Fl, а F(x' + a') принадлежит F2, значение производной DaF*(x') равно значению DaF(x') + + ej. Поскольку F - APN-функция, значение Da/F*(x') встречается ровно два раза, а значит, и Da/ F*(x') встретится среди значений Da/ F*(x') ровно два раза. Заметим, что для любой пары vl,wl G Vl и любой пары v2,w2 G V2 выполнено vi + wi G V2, i = 1, 2, а для любой пары vl G Vl, v2 G V2 выполнено vl + v2 G Vl. Следовательно, по построению множества Fl и F2 обладают аналогичными свойствами, а именно: для любой пары vl,wl G Fl и любой пары v2,w2 G F2 выполнено vi + wi G F2, i = 1, 2, а для любой пары vl G Fl, v2 G F2 выполнено vl + v2 G Fl. Из этого следует, что значения производных в первом и третьем случаях принадлежат F2, а во втором случае - Fl. Следовательно, поскольку Fl и F2 не пересекаются, производная Da/F* является 2-в-1 функцией. В силу произвольности выбора a' получаем, что производные функции F* по всем направлениям являются 2-в-1 функциями, следовательно, F* - APN-перестановка. ■ Пусть S является 2-в-1 дифференциально 4-равномерной функцией из Fn в Fn, принимающей значения из множества {0,... , 2п-1 - 1}, которая может быть представлена в виде (n - 1)-подфункции S = (sl,... , sn-l). Обозначим через n(S) число таких булевых функций f от n переменных, что H = (si, ... , sn-l, f) является APN-перестановкой. Теорема 4. Если значение n(S) не равно нулю, то n(S) ^ 2n. Доказательство. Из теоремы 3 следует, что если H = (sl,..., sn-l, f) является APN-перестановкой для некоторой булевой функции f, то ассоциированная перестановка H* для некоторого набора индексов il,... ^к также является APN-функцией. Чтобы оценить число булевых функций f, таких, что H = S U f является APN-перестановкой, необходимо найти количество ассоциированных перестановок H*, имеющих общую (n - 1)-подфункцию S = (sl,... , sn-l). Чтобы определить ассоциированную перестановку H*, в общем случае необходимо задать значение k, набор индексов il,... , ik и индекс j G {il,... , ik}. Заметим, что перестановки H и H* имеют общую (n - 1)-подфункцию S = (sl,... , sn-l) тогда и только тогда, когда j = n. Докажем, что каждой ассоциированной перестановке соответствует своё число k и набор индексов il,... , ik; соответственно для построения перестановки необходимо и достаточно задать лишь эти параметры. Для этого требуется доказать, что ни для какого k* < k не найдётся непересекающихся множеств V/, V>*, таких, что Fк = V* U V* и выполнено следующее свойство: для вектора длины k зафиксируем произвольные t = k - k* координат, тогда любой вектор v* G Vi* может быть получен выкалыванием этих t координат из некоторого вектора v G Vi, i = 1, 2. По построению все векторы из F1^ нечётного веса лежат в Vl, а значит, все векторы стандартного базиса ej, j = 1,... , k, также лежат в Vl. Заметим, что нулевой вектор лежит в V2. Рассмотрим вектор ej, такой, что координата j встречается среди t фиксированных координат il,..., it. После выкалывания координат il,..., it из ej получается нулевой вектор, который принадлежит V/, однако нулевой вектор также лежит ив V2*, поскольку он уже лежал в V2 до операции выкалывания. Поскольку для любого k* < k и любого t = k - k* такой вектор ej найдётся, множества V* и V2* всегда будут пересекаться для любых t и k*. Следовательно, для каждого k множества F1 и F2, полученные из таких V1 и V2, не совпадут ни с какими множествами F1 и F2, определёнными для некоторого k* < k. Это значит, что для каждой ассоциированной перестановки существует единственное число k и единственный набор индексов i1,... , ik, и для того, чтобы найти число возможных ассоциированных перестановок для APN-перестановки H, нужно посчитать число возможных наборов координат i 1,... , ik для каждого значения k = 1,... , n - 1. n1 _-* /2П - 1 Их в точности Е ( • ) = 2n-1 - 1. j=1 j Напомним, что прибавление аффинной функции не меняет свойства функции быть APN, следовательно, если H = (s1,..., sn-1, f) является APN-перестановкой, то и G = (s1,... , sn-1, f + 1) также ею является. Заметим, что прибавление единицы к последней координате эквивалентно тому, что мы меняем местами множества V1 и V2 при построении F1 и F2. Вместе с исходной функцией H имеем 2n-1 APN-перестано-вок, а поскольку к последней координате каждой перестановки ещё можем прибавить единицу, то всего получаем 2n различных APN-перестановок, имеющих общую (n - 1)-подфункцию S = (s1,... , sn-1). Таким образом, если существует хотя бы одна булева функция f, такая, что H = (s1,... , sn-1, f) является APN-перестановкой и, следовательно, n(S) = 0, то n(S) ^ 2n. ■ С помощью компьютерных вычислений установлено, что данная оценка является точной для n = 3, 5 и для всех рассмотренных спорадических примеров дифференциально 4-равномерных функций из 7^ от шести переменных. Остаются открытыми несколько интересных вопросов. Пусть S является дифференциально 4-равномерной функцией из 7n Может ли величина n(S) в таком случае быть равной нулю? Другими словами, из любой ли 2-в-1 дифференциально 4-равномерной функции из Fn в Fn, принимающей значения из множества {0,... , 2n-1 - 1}, можно получить APN-перестановку? Для всех рассмотренных примеров n(S) не равнялась нулю. Более того, с помощью компьютерных вычислений получено, что при n = 4 в 7^ не существует дифференциально 4-равномерных функций. Напомним, что APN-перестановок при n = 4 также не существует. Понятия EA-эквивалентности и CCZ-эквивалентности очень важны, когда мы говорим о поиске новых функций, поскольку найти новую APN-перестановку от шести переменных - это найти APN-перестановку, неэквивалентную APN-функции Дилло-на. Можно заметить, что утверждение теоремы 3 задаёт отношение эквивалентности на множестве APN-перестановок. Как эта эквивалентность соотносится с уже известными отношениями эквивалентности? Так, мы проверили несколько пар ассоциированных APN-перестановок от пяти и шести переменных, и все рассмотренные примеры являлись попарно CCZ-эквивалентными. Заключение В работе представлен новый способ поиска взаимно однозначных APN-функций. Описан алгоритм получения APN-перестановок из 2-в-1 дифференциально 4-равно-мерных векторных функций и координатных булевых функций. Доказана оценка числа таких координатных булевых функций для данной векторной функции. Данный результат позволяет оценить, насколько эффективен предложенный алгоритм поиска APN-перестановок. Введено понятие ассоциированной перестановки для взаимно однозначной функции и доказано, что некоторая перестановка является APN-функцией тогда и только тогда, когда её ассоциированная перестановка также является APN-функцией. Сформулированы некоторые открытые вопросы, например про свойства отношения эквивалентности на множестве взаимно однозначных APN-функций, которое задаётся аппаратом ассоциированных перестановок. Автор выражает благодарность Наталье Токаревой, Николаю Коломейцу и Анастасии Городиловой за обсуждения, ценные замечания и дополнения.

Ключевые слова

векторная функция, APN-функция, перестановка, подфункция, vectorial function, APN function, permutation, subfunction

Авторы

ФИООрганизацияДополнительноE-mail
Идрисова Валерия АлександровнаИнститут математики им. С. Л. Соболева СО РАН; Новосибирский государственный университетаспирантка; лаборантка лаборатории алгоритмикиvitkup@math.nsc.ru
Всего: 1

Ссылки

Carlet C., Charpin P., and Zinoviev V. Codes, bent functions and permutations suitable for DES-like cryptosystems // Des. Codes Cryptogr. 2000. V. 15. P. 125-156.
Gold R. Maximal recursive sequences with 3-valued recursive crosscorrelation functions // IEEE Trans. Inform. Theory. 1968. V. 14. P. 154-156.
Nyberg K. Differentially uniform mappings for cryptography // EUROCRYPT'93. LNCS. 1994. V. 765. P. 55-64.
Kasami T. The weight enumerators for several classes of subcodes of the second order binary Reed - Muller codes // Inform. Control. 1971. V. 18. P. 369-394.
Janwa H. and Wilson R. Hyperplane sections of Fermat varieties in P3 in char. 2 and some applications to cyclic codes // Proc. AAECC-10. LNCS. 1993. V.673. P. 180-194.
Canteaut A., Charpin P., and Dobbertin H. Binary m-sequences with three-valued crosscorrelation: a proof of Welch conjecture // IEEE Trans. Inform. Theory. 2000. V. 46. P. 4-8.
Dobbertin H. Almost perfect nonlinear functions over GF(2n): the Welch case // IEEE Trans. Inform. Theory. 1999. V.45. P. 1271-1275.
Dobbertin H. Almost perfect nonlinear functions over GF(2n): the Niho case // Inform. Comput. 1999. V. 151. P. 57-72.
Hollmann H., and Xiang Q. A proof of the Welch and Niho conjectures on crosscorrelations of binary m-sequences // Finite Fields Appl. 2001. V. 7. P. 253-286.
Beth T. and Ding C. On almost perfect nonlinear permutations // EUROCRYPT'93. LNCS. 1993. V. 765. P. 65-76.
Dobbertin H. Almost perfect nonlinear power functions over GF(2n): a new case for n divisible by 5 / eds. D. Jungnickel and H. Niederreiter. Finite Fields and Applications. Berlin; Heidelberg: Springer, 2001. P. 113-121.
Глухов M. M. О приближении дискретных функций линейными функциями // Математические вопросы криптографии. 2016. Т. 7. №4. С. 29-50.
Blondeau C. and Nyberg K. Perfect nonlinear functions and cryptography // Finite Fields Appl. 2015. V. 32. P. 120-147.
Carlet C. Open questions on nonlinearity and on APN Functions // LNCS. 2015. V. 9061. P. 83-107.
Pott A. Almost perfect and planar functions // Des. Codes Cryptography. 2016. V. 78(1). P. 141-195.
Тужилин М.Э. Почти совершенные нелинейные функции // Прикладная дискретная математика. 2009. №3. С. 14-20.
Budaghyan L. Construction and Analysis of Cryptographic Functions. Springer International Publishing, 2014. 168 p.
Carlet C. Vectorial Boolean functions for cryptography // Ch. 9 of the monograph "Boolean Methods and Models in Mathematics, Computer Science, and Engineering". Cambridge Univ. Press, 2010. P. 398-472.
Hou X.-D. Affinity of permutations of Fn // Discr. Appl. Math. Special Issue: Coding and Cryptography Archive. 2006. V. 154. P. 313-325.
Browning K. A., Dillon J. F., McQuistan M. T., and Wolfe A. J. An APN permutation in dimension six // 9-th Intern. Conf. Finite Fields and Their Applications Fq'09, Contemporary Math., AMS, 2010. V.518. P. 33-42.
Canteaut A., Duval S., and Perrin L. A generalisation of Dillon's APN permutation with the best known differential and linear properties for all fields of size 24k+2 // IEEE Trans. Inform. Theory. 2016. V.63. P. 7575-7591.
Perrin L., Udovenko A, and Biryukov A. Cryptanalysis of a theorem: Decomposing the only known solution to the big APN problem // CRYPTO 2016. Part II. LNCS. 2016. V.9815. P. 93-122.
Idrisova V. On an algorithm generating 2-to-1 APN functions and its applications to "the big APN problem" // Cryptography and Communications. 2018. P. 1-19.
Городилова А.А. Характеризация почти совершенно нелинейных функций через подфункции // Дискретная математика. 2015. №27(3). C.3-16.
 О построении APN-перестановок с помощью подфункций | ПДМ. 2018. № 41. DOI: 10.17223/20710410/41/2

О построении APN-перестановок с помощью подфункций | ПДМ. 2018. № 41. DOI: 10.17223/20710410/41/2