Блог

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

Андрей Колесов
29.05.2017 20:58:23

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

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

Вот как описывает это понятие Википедия:

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


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




Комментариев: 8

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии

30.05.2017 08:45:28

Речь идет о "запутывании" исходного кода?
А двоичный код после этого должен остаться тем же?

30.05.2017 09:42:29

Нет, я так понял (да и по логике так), что запутывается как раз двоичный код, а не исходный.
Во-первых, речь, конечно, идет о проприетарном ПО, а не открытом. О коде, который автор не хочет отдавать кому-то.

Запутывание происходит на этапе компиляции, создания двоичного кода.

Идея заключается в том, чтобы затруднить декомпиляцию, преобразование из двоичного в исходный. Это как бы своеобразное шифрование двоичного кода.

30.05.2017 09:56:26

По видимому, при этом снижается производительность? Интересно, насколько.

30.05.2017 10:00:35

Да, конечно!
По этому поводу есть инфо на слайде (фото выше) - 1.2 - 5.5 раз

30.05.2017 10:19:55

Пардон, не заметил. smile:(
Кстати, а что в этой фразе означает "для одного запутывающего преобразования"? Их что - может быть несколько? Или имеется в виду, что запутываться может не вся программа, а только ее отдельные особо ответственные фрагменты?

30.05.2017 10:48:14

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

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

По этому поводу в который раз вспоминаю выступаление ФСБэшника летом 2014 года - закладки обнаруживаются в основном как раз в российских разработках.

30.05.2017 11:06:17

Обфускация=Закладка. Надо запомнить smile:)

30.05.2017 11:30:18

Я думаю, что именно так.

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

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

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии

Интересно

Статьи

Цифровая трансформация-2018: пять основных трендов
В последнее время о цифровой трансформации много говорят, обычно дискуссии сводятся к степени …

Серверная виртуализация приходит в гостиничный бизнес
Осенью текущего года в центре Нижнего Новгорода открылся новый пятизвездочный отель мирового бренда Sheraton …

Большие данные: три способа превратить бизнес-аналитику в преимущество для бизнеса
Большие данные — это не просто множество данных. Вот как следует их использовать для принятия более …

Блокчейн: время принимать решения, но готовы ли к этому предприятия?
Блокчейн может помочь обеспечить открытые транзакции и инновации, которые нам давно обещают. Но на пути …

ИИ, блокчейн и безопасность — важнейшие технологии 2018 года
Конец осени — начало зимы — обычно в это время ИТ-руководители приступают к составлению планов …

Решения

Сборник статей «Как определить ценность Интернета вещей для бизнеса»
Internet of Things — тренд, который уже сейчас кардинально меняет бизнес во всем мире. И хотя некоторые до сих пор с …

Сервис — это наше «все» в прошлом, настоящем и будущем!
Сервисные центры ГК «Паладин» осуществляют различные виды обслуживания вычислительной техники Hewlett-Packard …

HP SM соединяет лучшие практики с жизнью
Множественный опыт российских и зарубежных компаний показали, что ПО для управления ИТ-услугами помогает упростить …

Администрация Стрежевого подключает к корпоративному документальному серверу eDocLib муниципальные учреждения
Единая информационная система Администрации городского округа Стрежевой (Томская область), базой для которой стали …

Распределительная теплосетевая компания «ОмскРТС» внедрила СЭД «ДЕЛО» в первый месяц своей хозяйственной деятельности
«Территориальная генерирующая компания № 11» (ОАО «ТГК-11»), одна из крупнейших теплоэнергетических бизнес-структур в …

Блог

ИТ как средство повышения эффективности российского судостроения
Так получилось, что менее года назад у меня состоялось два интервью с ИТ-руководителями из города Ры ...

Продолжение разговора о российских ОС по следам OSDAY'2017
На конференции ОSDAY, которая прошла в конце мая в Москве, я общался с ее участниками, встретился с ...

Обфускация: настало время запутывать программный код
Сколько занимался программирование, занимался изучением соответствующих наук и пытался внести посиль ...

IBM делает еще один важный шаг к квантовым вычислениям
16-ти кубитовый квантовый компьютер теперь доступен в качестве сервиса облачной платоформы IBM Cloud ...

Что мешает использованию в бизнес-аналитике внешних данных?
Издавна для бизнес-анализа компании использовали, в основном, данные, накопленные ими самими в ходе ...

 

Панорама

Canon открывает перед партнерами новые горизонты и возможности
В начале осени компания Canon провела в Москве традиционную партнерскую конференцию. Двухдневное мероприятие было …
Ритейл: как повысить продажи с помощью современных ИТ-решений?
Всё начиналось с крайне простых по сегодняшним меркам вещей. Сначала интернет …
ASUS ZenFone 4 Selfie Pro (ZD552KL): снимаются все!
Селфи-снимки стали неотъемлемой частью современной культуры. И потому покупатели, задумываясь о приобретении …
Десятилетний юбилей APC в составе Schneider Electric: конвергенция технологий
Основанная в 1981 г. компания АРС с самого начала своей истории активно развивала направления …
“Мы не продаем системы хранения данных, мы продаем опыт”
Рынок систем хранения данных на флэш-памяти быстро растет и переживает революционные времена. Одноуровневую …

Интересно

 

Создание сайта - студия iMake
© 2017 АО «СК ПРЕСС».
Информация об авторских правах и порядке использования материалов сайта.
Правила поведения на сайте.

На главную PC Week/RE  |  Об издании  |  Архив номеров  |  Подписка на бумажную версию
Другие проекты «СК ПРЕСС»ITRNБестселлеры IT-рынкаByte/РоссияCRN/REIntelligent Enterprise/REPC Magazine/RE.