Бент-функция


В математической области комбинаторики — бент-функция это булева функция , которая максимально нелинейна; она максимально отличается от набора всех линейных и аффинных функций при измерении расстояния Хэмминга между таблицами истинности . Конкретно это означает, что максимальная корреляция между выходными данными функции и линейной функцией минимальна. Кроме того, производные изогнутой функции являются сбалансированными логическими функциями, поэтому при любом изменении входных переменных существует 50-процентная вероятность того, что выходное значение изменится.
Максимальная нелинейность означает, что аппроксимация изогнутой функции аффинной (линейной) функцией затруднена, что является полезным свойством для защиты от линейного криптоанализа . Кроме того, обнаружение изменения выходных данных функции не дает информации о том, какое изменение произошло на входных данных, что делает функцию невосприимчивой к дифференциальному криптоанализу .
Бент-функции были определены и названы в 1960-х годах Оскаром Ротхаусом в исследовании, опубликованном только в 1976 году. [1] Они широко изучались на предмет их применения в криптографии , но также применялись для расширения спектра , теории кодирования и комбинаторного проектирования . Определение можно расширить несколькими способами, что приведет к различным классам обобщенных бент-функций, которые обладают многими полезными свойствами оригинала.
Известно, что В. А. Елисеев и О. П. Степченков изучали бент-функции, которые они назвали минимальными функциями . в СССР в 1962 г. [2] Однако их результаты до сих пор не рассекречены.
Бент-функции также известны как совершенно нелинейные ( PN ) логические функции. Некоторые функции, максимально приближенные к идеальной нелинейности (например, функции нечетного числа битов или векторные функции), известны как почти идеально нелинейные ( APN ). [3]
Преобразование Уолша [ править ]
Бент-функции определяются с помощью преобразования Уолша . Преобразование Уолша булевой функции это функция данный
где a · x = a 1 x 1 + a 2 x 2 + … + a n x n (mod 2) — скалярное произведение в Z н
2 . [4] Альтернативно, пусть S 0 ( a ) = { x ∈ Z н
2 : ж ( Икс ) знак равно а · Икс } и S 1 ( а ) знак равно { Икс ∈ Z н
2 : ж ( Икс ) ≠ а · Икс } . Тогда | S 0 ( а ) | + | S 1 ( а ) | = 2 н и, следовательно,
Для любой булевой функции f и a ∈ Z н
2 преобразование лежит в диапазоне
Более того, линейная функция f 0 ( x ) = a · x и аффинная функция f 1 ( x ) = a · x + 1 соответствуют двум крайним случаям, поскольку
Таким образом, для каждого a ∈ Z н
2 значение где функция f ( x ) лежит в диапазоне от f0 ( ( x ) до f1 характеризует , ) x .
Определение и свойства [ править ]
Ротхаус определил бент-функцию как булеву функцию. которого преобразование Уолша имеет постоянное абсолютное значение . Бент-функции в некотором смысле равноудалены от всех аффинных функций, поэтому их одинаково трудно аппроксимировать любой аффинной функцией.
Простейшими примерами бент-функций, записанных в алгебраической нормальной форме , являются F ( x 1 , x 2 ) = x 1 x 2 и G ( x 1 , x 2 , x 3 , x 4 ) = x 1 x 2 ⊕ x 3. х 4 . Этот шаблон продолжается: x 1 x 2 ⊕ x 3 x 4 ⊕ … ⊕ x n −1 x n — бент-функция. для каждого четного n , но существует множество других изогнутых функций по мере увеличения n . [5] Последовательность значений (−1) е ( х ) , где x ∈ Z н
2, взятая в лексикографическом порядке , называется изогнутой последовательностью ; бент-функции и бент-последовательности имеют эквивалентные свойства. В этой форме ±1 преобразование Уолша легко вычисляется как
где W (2 н естественного порядка ) — матрица Уолша , а последовательность рассматривается как вектор-столбец . [6]
Ротауз доказал, что бент-функции существуют только для четного и что для бент-функции f n для всех a ∈ Z н
2 . [4] Фактически, , где g также изогнута. В этом случае, , поэтому f и g считаются двойственными функциями. [6]
Каждая изогнутая функция имеет вес Хэмминга (количество раз, когда она принимает значение 1), равный 2. п -1 ± 2 п /2−1 и фактически согласуется с любой аффинной функцией в одном из этих двух чисел точек. Таким образом, нелинейность f равна (минимальное количество раз, когда она равна любой аффинной функции) 2 п -1 − 2 п /2−1 , максимально возможное. И наоборот, любая булева функция с нелинейностью 2 п -1 − 2 п /2−1 есть. [4] Степень в f ) алгебраической нормальной форме (называемая нелинейным порядком f не превышает n / 2 (при n > 2 ). [5]
Хотя бент-функции исчезающе редки среди булевых функций многих переменных, они бывают самых разных видов. Подробно исследованы специальные классы бент-функций, например однородные . [7] или те, которые возникают из монома над конечным полем , [8] но до сих пор изогнутые функции не поддавались никаким попыткам полного перечисления или классификации.
Конструкции [ править ]
Существует несколько типов конструкций для бент-функций. [2]
- Комбинаторные конструкции: итеративные конструкции, конструкция Майораны – МакФарланда, частичные развороты, бент-функции Диллона и Доббертина, бент-функции минтерма, бент-итерационные функции.
- Алгебраические конструкции: мономиальные бент-функции с показателями Голда, Диллона, Касами, Канто–Леандера и Канто–Шарпена–Кюйрегяна; Niho изогнутые функции и т. д.
Приложения [ править ]
Еще в 1982 году было обнаружено, что последовательности максимальной длины, основанные на изогнутых функциях, обладают свойствами взаимной корреляции и автокорреляции, конкурирующими со свойствами кодов Голда и кодов Касами для использования в CDMA . [9] Эти последовательности имеют несколько применений в методах расширения спектра .
Свойства изогнутых функций, естественно, представляют интерес для современной цифровой криптографии , которая стремится скрыть связи между входными и выходными данными. К 1988 году Форре признал, что преобразование Уолша функции можно использовать, чтобы показать, что она удовлетворяет строгому лавинному критерию (SAC) и обобщениям более высокого порядка, и рекомендовал этот инструмент для выбора кандидатов на хорошие S-блоки, обеспечивающие почти идеальную диффузию . [10] Действительно, функции, удовлетворяющие SAC в максимально возможном порядке, всегда являются изогнутыми. [11] Более того, бент-функции, насколько это возможно, не имеют так называемых линейных структур , ненулевых векторов a таких, что f ( x + a ) + f ( x ) является константой. На языке дифференциального криптоанализа (введенном после открытия этого свойства) производная бент-функции f в каждой ненулевой точке a (т. е. f a ( x ) = f ( x + a ) + f ( x )) равна a сбалансированная булева функция, принимающая каждое значение ровно в половине случаев. Это свойство называется идеальной нелинейностью . [5]
Учитывая такие хорошие диффузионные свойства, кажущуюся идеальную устойчивость к дифференциальному криптоанализу и устойчивость по определению к линейному криптоанализу , изогнутые функции могут на первый взгляд показаться идеальным выбором для безопасных криптографических функций, таких как S-блоки. Их фатальный недостаток в том, что они не сбалансированы. В частности, обратимый S-блок не может быть построен непосредственно из изогнутых функций, а поточный шифр, использующий изогнутую функцию объединения, уязвим для корреляционной атаки . Вместо этого можно начать с изогнутой функции и случайным образом дополнять соответствующие значения, пока результат не будет сбалансированным. Модифицированная функция по-прежнему имеет высокую нелинейность, и, поскольку такие функции встречаются очень редко, процесс должен быть намного быстрее, чем поиск методом грубой силы. [5] Но функции, созданные таким способом, могут потерять другие желательные свойства, даже не удовлетворяя требованиям SAC, поэтому необходимо тщательное тестирование. [11] Ряд криптографов работали над методами генерации сбалансированных функций, которые сохраняют как можно больше хороших криптографических качеств изогнутых функций. [12] [13] [14]
Некоторые из этих теоретических исследований были включены в реальные криптографические алгоритмы. Процедура проектирования CAST , использованная Карлайлом Адамсом и Стаффордом Таваресом для построения S-блоков для блочных шифров CAST-128 и CAST-256 , использует изогнутые функции. [14] Криптографическая хеш-функция HAVAL использует логические функции, построенные на основе представителей всех четырех классов эквивалентности изогнутых функций по шести переменным. [15] Поточный шифр Grain использует NLFSR, нелинейный полином обратной связи которого по своей конструкции представляет собой сумму изогнутой функции и линейной функции. [16]
Обобщения [ править ]
В монографии Токаревой 2015 года описано более 25 различных обобщений бент-функций. [2] Существуют алгебраические обобщения ( q -значные бент-функции, p -арные бент-функции, бент-функции над конечным полем, обобщенные булевы бент-функции Шмидта, бент-функции из конечной абелевой группы в множество комплексных чисел на единичной окружности, бент-функции из конечной абелевой группы в множество комплексных чисел на единичной окружности, бент-функции функции из конечной абелевой группы в конечную абелеву группу, неабелевы бент-функции, векторные G-бент-функции, многомерные бент-функции на конечной абелевой группе), комбинаторные обобщения (симметричные бент-функции, однородные бент-функции, вращательно-симметричные бент-функции, нормальные бент-функции, самодуальные и антиавтодуальные бент-функции, частично определенные бент-функции, плато-функции, Z-бент-функции и квантовые бент-функции) и криптографические обобщения (полубент-функции, сбалансированные бент-функции, частично бент-функции, гипербент-функции, бент-функции высшего порядка, k -бент-функции).
Наиболее распространенным классом обобщенных бент-функций является тип mod m , такой, что
имеет постоянное абсолютное значение m н /2 . Совершенные нелинейные функции , такие, что для всех ненулевых a , f ( x + a ) − f ( a ) принимает каждое значение m п -1 раз, имеют генерализованную изогнутость. Если m простое , то обратное верно. В большинстве случаев только простые числа m рассматриваются . Для нечетного простого числа m существуют обобщенные бент-функции для каждого положительного n , четного и нечетного. Они обладают многими из тех же хороших криптографических свойств, что и двоичные изогнутые функции. [17] [18]
Полу-бент-функции являются аналогом бент-функций нечетного порядка. Полуизогнутая функция - это с n нечетным, таким, что принимает только значения 0 и m ( п +1)/2 . Они также обладают хорошими криптографическими характеристиками, а некоторые из них сбалансированы, одинаково часто принимая все возможные значения. [19]
Частично изогнутые функции образуют большой класс, определяемый условием преобразования Уолша и автокорреляционными функциями. Все аффинные и изогнутые функции частично изогнуты. Это, в свою очередь, является собственным подклассом платообразных функций . [20]
Идея гипербент-функций состоит в том, чтобы максимизировать минимальное расстояние до всех булевых функций, возникающих из биективных мономов в конечном поле GF(2 н ), а не только аффинные функции. Для этих функций это расстояние постоянно, что может сделать их устойчивыми к атаке интерполяции .
Другие родственные названия были даны криптографически важным классам функций. , такие как почти изогнутые функции и кривые функции . Хотя сами по себе они не являются бент-функциями (это даже не булевы функции), они тесно связаны с бент-функциями и обладают хорошими свойствами нелинейности.
См. также [ править ]
Ссылки [ править ]
- ^ ОС Ротхаус (май 1976 г.). «О «изогнутых» функциях» . Журнал комбинаторной теории, серия А. 20 (3): 300–305. дои : 10.1016/0097-3165(76)90024-8 . ISSN 0097-3165 .
- ^ Jump up to: Перейти обратно: а б с Н. Токарева (2015). Бент-функции: результаты и приложения к криптографии . Академическая пресса. ISBN 9780128023181 .
- ^ Блондо; Нюберг (01 марта 2015 г.). «Совершенные нелинейные функции и криптография» . Конечные поля и их приложения . 32 : 120–147. дои : 10.1016/j.ffa.2014.10.007 . ISSN 1071-5797 .
- ^ Jump up to: Перейти обратно: а б с К. Цюй; Дж. Себерри ; Т. Ся (29 декабря 2001 г.). «Бульевы функции в криптографии» . Проверено 14 сентября 2009 г.
- ^ Jump up to: Перейти обратно: а б с д В. Мейер; О. Стаффельбах (апрель 1989 г.). Критерии нелинейности криптографических функций . Еврокрипт '89. стр. 549–562.
- ^ Jump up to: Перейти обратно: а б К. Карлет; Л.Е. Даниэльсен; М.Г. Паркер; П. Соле (19 мая 2008 г.). Самодвойственные бент-функции (PDF) . Четвертый международный семинар по логическим функциям: криптография и приложения (BFCA '08) . Проверено 21 сентября 2009 г.
- ^ Т. Ся; Дж. Себерри; Я. Пепшик ; К. Чарн (июнь 2004 г.). «Однородные бент-функции степени n от 2n переменных не существуют при n > 3» . Дискретная прикладная математика . 142 (1–3): 127–132. дои : 10.1016/j.dam.2004.02.006 . ISSN 0166-218X . Проверено 21 сентября 2009 г.
- ^ А. Канто ; П. Шарпен; Г. Кюрегян (январь 2008 г.). «Новый класс мономиальных бент-функций» (PDF) . Конечные поля и их приложения . 14 (1): 221–241. дои : 10.1016/j.ffa.2007.02.004 . ISSN 1071-5797 . Архивировано из оригинала (PDF) 21 июля 2011 года . Проверено 21 сентября 2009 г.
- ^ Дж. Олсен; Р. Шольц; Л. Уэлч (ноябрь 1982 г.). «Последовательности бент-функций» . Транзакции IEEE по теории информации . ИТ-28 (6): 858–864. дои : 10.1109/тит.1982.1056589 . ISSN 0018-9448 . Архивировано из оригинала 22 июля 2011 года . Проверено 24 сентября 2009 г.
- ^ Р. Форре (август 1988 г.). Строгий лавинный критерий: спектральные свойства булевых функций и расширенное определение . КРИПТО '88. стр. 450–468.
- ^ Jump up to: Перейти обратно: а б К. Адамс ; С. Таварес (январь 1990 г.). Использование изогнутых последовательностей для достижения строгого лавинного критерия высшего порядка при проектировании S-блока . Технический отчет ТР 90-013. Королевский университет . CiteSeerX 10.1.1.41.8374 .
- ^ К. Нюберг (апрель 1991 г.). Совершенные нелинейные S-блоки . Еврокрипт '91. стр. 378–386.
- ^ Дж. Себерри; С. Чжан (декабрь 1992 г.). Сильно нелинейные 0–1 сбалансированные булевы функции, удовлетворяющие строгому лавинному критерию . АУСКРИПТ '92. стр. 143–155. CiteSeerX 10.1.1.57.4992 .
- ^ Jump up to: Перейти обратно: а б К. Адамс (ноябрь 1997 г.). «Построение симметричных шифров с использованием процедуры проектирования CAST» . Проекты, коды и криптография . 12 (3): 283–316. дои : 10.1023/А:1008229029587 . ISSN 0925-1022 . S2CID 14365543 . Архивировано из оригинала 26 октября 2008 года . Проверено 20 сентября 2009 г.
- ^ Ю. Чжэн ; Й. Пепшик; Дж. Себерри (декабрь 1992 г.). HAVAL — алгоритм одностороннего хеширования с переменной длиной вывода . АУСКРИПТ '92. стр. 83–104 . Проверено 20 июня 2015 г.
- ^ Черт, Мартин; Йоханссон, Томас; Максимов, Александр; Мейер, Вилли (2006). «Предложение по потоковому шифру: Grain-128» (PDF) . Труды Международного симпозиума IEEE по теории информации 2006 г., ISIT 2006, The Westin Seattle, Сиэтл, Вашингтон, США, 9–14 июля 2006 г. IEEE. стр. 1614–1618. дои : 10.1109/ISIT.2006.261549 .
- ^ К. Нюберг (май 1990 г.). Конструкции бент-функций и разностных множеств . Еврокрипт '90. стр. 151–160.
- ^ Шаши Кант Пандей; Б.К. Дасс (сентябрь 2017 г.). «О спектре Уолша криптографической булевой функции». Оборонный научный журнал . 67 (5): 536–541. дои : 10.14429/dsj.67.10638 . ISSN 0011-748X .
- ^ К. Ху; Г. Гонг; Д. Стинсон (февраль 2006 г.). «Новая характеризация полубент- и бент-функций на конечных полях» ( PostScript ) . Проекты, коды и криптография . 38 (2): 279–295. CiteSeerX 10.1.1.10.6303 . дои : 10.1007/s10623-005-6345-x . ISSN 0925-1022 . S2CID 10572850 . Проверено 24 сентября 2009 г.
- ^ Ю. Чжэн; С. Чжан (ноябрь 1999 г.). Платообразные функции . Вторая международная конференция по информационной и коммуникационной безопасности (ICICS '99). стр. 284–300 . Проверено 24 сентября 2009 г.
Дальнейшее чтение [ править ]
- К. Карлет (май 1993 г.). Два новых класса бент-функций . Еврокрипт '93. стр. 77–101.
- Дж. Себерри; С. Чжан (март 1994 г.). «Конструкции бент-функций из двух известных бент-функций». Австралазийский журнал комбинаторики . 9 : 21–35. CiteSeerX 10.1.1.55.531 . ISSN 1034-4942 .
- Колборн, Чарльз Дж .; Диниц, Джеффри Х. (2006). Справочник по комбинаторным планам (2-е изд.). ЦРК Пресс . стр. 337–339 . ISBN 978-1-58488-506-1 .
- Кьюсик, ТВ; Станица, П. (2009). Криптографические логические функции и приложения . Академическая пресса. ISBN 9780123748904 .