НовостиОбзорыСобытияIT@WorkРеклама
Идеи и практики автоматизации:

Блог

Обфускация: настало время запутывать программный код

Сколько занимался программирование, занимался изучением соответствующих наук и пытался внести посильный вклад в развитие и популяризацию теории и практики этого дела, всегда одной их ключевых идей "правильного программирования" был тезис о необходимости написания "понятного кода". Что важно – понятного не только автору (а это тоже является непростой задачей), но и другим людям.

Но, как поется в одной из песен Юрия Визбора, "потом пришли иные рубежи". Теперь разработчики озабочены ровно обратной задачей – чтобы их код был непонятен никому. Точнее, они имеют в виду, чтобы он был непонятен хакерам и людям, желающим использовать незаконно (своровать) ваш исходный код (или, скорее, даже не код, а алгоритм). А для этого нужно "понятный код" заменить на "непонятный". То есть сделать с ним обфускацию.
[spoiler]
Вот как описывает это понятие Википедия:

Обфуска́ция (от лат. obfuscare — затенять, затемнять; и англ. obfuscate — делать неочевидным, запутанным, сбивать с толку) или запутывание кода — приведение исходного текста или исполняемого кода программы к виду, сохраняющему её функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции.

Слово это я слышал и раньше, но вот только сейчас побывал на конференции, где эта тема обсуждалась публично. На "Дне операционных систем" (OSDAY) об этом в своем заглавном выступлении говорил директор ИСП РАН Арутюн Аветисян, в том числе представил разработку своего института:




Колесов Андрей
Да, как я понял, речь идет об ответственных фрагментах.
Хотя я пока не очень понимаю реальную актуальность темы.

Что именно и от кого хотят прятать?
У меня такое предположение, что эти механизмы нужны в первую очередь для "нехороших людей", которых хотят спрятать что-то "нехорошее". Ну, типа каких-то "вкладом", "секретных защит".
И нужно это не западным ИТ-гигантам, от которым мы "шарахаемся", а как раз небольшим поставщикам.
И тем, кто норовит везде расставить свои "жучки". Мы знаем, кто это...

По этому поводу в который раз вспоминаю выступаление ФСБэшника летом 2014 года - закладки обнаруживаются в основном как раз в российских разработках.
Свинарев Сергей
Обфускация=Закладка. Надо запомнить :)  
Колесов Андрей
Я думаю, что именно так.

И вот что самое забавное (хотя не очень смешно).
Основная тема концеренции - построение БЕЗОПАСНЫХ ОС! Причем исключительно российских.
И как раз тут впервые публично всплывает тема обфускации!

Очень симптоматично!
Это очень четко отражает наше понимание "безопасности" - защита от Запада. От "своих" не только не нужно защищаться, но и нельзя этого делать  :(