Отзыв о выпускной квалификационной бакалаврской работе студента 4 курса математико-механического факультета Санкт-Петербургского государственного университета направления 010400 – Прикладная математика и информатика, профиль - Исследование операций и принятие решений в задачах оптимизации, управления и экономики Исаева Глеба Андреевича на тему Поиск булевых функций максимальной нелинейности при наличии ограничений В работе Г.Исаева булевы функции рассматриваются в точки зрения их применимости в системах шифрования данных. Решается задача максимизации такого криптографического показателя, как нелинейность булевой функции, с учётом ограничений, наложенных на ряд других криптографических показателей. Основой работы послужила публикация [1], содержащая ряд алгоритмов, предназначенных для решения данной экстремальной задачи. Выпускнику нужно было изучить алгоритмы, уточнить их, реализовать и проиллюстрировать примерами. Работу требовалось дополнить материалами на основе других источников, касающихся исследуемой темы. Это необходимо было не только для расширения области исследования, но и потому, что алгоритм направленного поиска (DSA) из [1] не строит корреляционно иммунных функций порядка выше 1, а они нужны. В работе выделяются следующие направления по нахождению булевых функций n переменных, обладающих нужными свойствами: • Конструирование функций с высоким значением целевой функции. Число переменных n<=10. Построен вручную пример для n=7. Метод не запрограммирован. • Максимизация целевой функции методами целочисленного линейного программирования. Число переменных n<=7. Просчитаны примеры с использованием встроенных функций Matlab. • Поиск максимума целевой функции приближенными эвристическими методами. Число переменных n<=12. Алгоритм DSA, относящийся к последней группе, в работе Г.Исаева реализован, но при значимых размерах n>=8, вопреки статистике авторов алгоритма, работать не смог. Основной причиной, видимо, является программный код, весьма далёкий от оптимального. При больших n задачи решались генетическим алгоритмом с помощью программы Matlab. В работе имеются неточности. Так, недоумение вызывает «контрпример» на стр.16. Авторы публикации, с которыми полемизирует выпускник, предлагают способ получить из любой функции сначала сбалансированную, потом корреляционно иммунную порядка 1, не меняя ее нелинейности. Г.Исаев, заявляя, что это не всегда возможно, приводит пример, когда функция, превращенная в корреляционно иммунную, при дальнейшем переходе в сбалансированную теряет иммунность. Но эта потеря иммунности вполне ожидаема и контрпримером не является, поскольку никто такую последовательность действий и не предлагал! Здесь же на стр.16 имеется предложение, начинающееся словами «возьмём пятёрку векторов», и тут же предлагается «из этой тройки» построить матрицу. Подобное несоответствие иллюстрирует общий торопливый стиль автора. Трудно принять и некоторые выражения, например, «формула обращения преобразования Фурье в преобразование Уолша-Адамара», поскольку «формула обращения» вызывает вполне определённые ожидания, здесь не оправдывающиеся. Наиболее выигрышной частью работы представляется раздел 4. Здесь детально, с примерами описан точный расчет с использованием целочисленного линейного программирования. Автор полностью владеет материалом и с удовольствием предъявляет найденные им функции с требуемыми характеристиками. Явный успех в этом направлении в сочетании с более скромными результатами на других направлениях исследования и претензиями по изложению материала позволяет поставить оценку «хорошо». Научный руководитель, к.ф.м.н., доцент кафедры исследования операций И.В.Агафонова