Сахай, который специализируется на криптографии в Школе инженерии и прикладных наук Генри Самуэли при Калифорнийском университете, сотрудничал с Санджамом Гаргом, который недавно получил докторскую степень в Калифорнийском университете в Лос-Анджелесе, а сейчас работает в IBM Research; Крейг Джентри, Шай Халеви и Мариана Райкова из IBM Research; и Брент Уотерс, доцент кафедры информатики Техасского университета в Остине. Когда исследование было завершено, Гарг работал с Сахаи еще студентом.
Их рецензируемая статья будет официально представлена в октябре на 54-м ежегодном симпозиуме IEEE по основам информатики, одной из двух самых известных конференций в области теоретической информатики. Сахаи также представил это исследование на недавних приглашенных лекциях в Стэнфордском университете и Массачусетском технологическом институте.
«Настоящая проблема и великая загадка в этой области заключались в следующем: можно ли взять часть программного обеспечения и зашифровать ее, но при этом сохранить ее работоспособность, исполняемость и полную функциональность», — сказал Сахаи. «Это вопрос, которым многие компании интересовались в течение долгого времени».По словам Сахаи, ранее разработанные методы обфускации представляли собой лишь «лежачий полицейский», вынуждая злоумышленника потратить некоторые усилия, возможно, несколько дней, на попытки перепроектировать программное обеспечение. Новая система, по его словам, возводит «железную стену», делая невозможным для злоумышленника реконструировать программное обеспечение без решения математических задач, решение которых на современных компьютерах занимает сотни лет. область криптографии.
Исследователи заявили, что их механизм математической обфускации может быть использован для защиты интеллектуальной собственности путем предотвращения кражи новых алгоритмов и сокрытия уязвимости, которую программный патч предназначен для исправления при распространении патча.«Вы пишете свое программное обеспечение красивым, разумным и понятным людям способом, а затем загружаете это программное обеспечение в нашу систему», — сказал Сахаи. «Он выведет эту математически преобразованную часть программного обеспечения, которая была бы эквивалентна по функциональности, но когда вы посмотрите на нее, вы не поймете, что она делает».
Ключом к этому успешному механизму обфускации является новый тип «полилинейной головоломки». Благодаря этому механизму попытки выяснить, почему и как работает программное обеспечение, будут пресечены лишь бессмысленным набором цифр.«Настоящая инновация, которая у нас есть, — это способ превратить программное обеспечение в своего рода математическую головоломку», — сказал Сахаи. «То, что мы даем вам, — это просто математика, просто числа или последовательность чисел.
Но она живет в этой математической структуре, так что эти отдельные части, эти последовательности чисел могут быть объединены с другими числами только очень определенным образом.«Вы можете осмотреть все, вы можете перевернуть это вверх дном, вы можете смотреть на это под разными углами, и вы по-прежнему не будете знать, что он делает», — добавил он. «Единственное, что вы можете сделать с ним, — это собрать его так, как он должен был блокировать.
Если вы попытались сделать что-нибудь еще — например, если вы попытались разбить этот кусок и сложить его каким-то другим способом — вы» я просто закончу с мусором ".Функциональное шифрование
Новая техника обфускации программного обеспечения проложила путь к другому прорыву, названному функциональным шифрованием. При функциональном шифровании вместо отправки зашифрованного сообщения вместо него отправляется зашифрованная функция.
По словам Сахаи, это обеспечивает гораздо более безопасный способ защиты информации. Предыдущая работа по функциональному шифрованию ограничивалась поддержкой очень небольшого числа функций; новая работа может обрабатывать любую вычислимую функцию.
Например, одно сообщение может быть отправлено группе людей таким образом, чтобы каждый получатель получал разную информацию, в зависимости от характеристик этого конкретного получателя. В другом примере больница может поделиться результатами лечения с исследователями, не раскрывая деталей, таких как идентификация информации о пациенте.
«С помощью функционального шифрования вы получите только конкретный ответ, больше ничего не узнаете», — сказал Сахаи.Исследователи из Калифорнийского университета в Лос-Анджелесе частично финансировались Национальным научным фондом, премией Xerox Faculty Research Award, премией Google Faculty Research Award, грантом на оборудование от Intel и исследовательским грантом фонда Okawa.
