Блог

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

Андрей Колесов
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:(

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

Интересно

Статьи

RECS`2017: разработчики об опыте применения и перспективах развития СЭД
Если доклады представителей заказчиков на сентябрьской конференции Russian Enterprise Content Summit (RECS) 2017 …

RECS`2017: требования заказчиков определяют тенденции СЭД
Вопросы, связанные с электронным документооборотом, равно как и более общие проблемы управления контентом …

“В Мосгордуме практически решена проблема с “размножением” бумажных документов”
19 сентября в Москве уже в пятый раз прошла ежегодная конференция Russian Enterprise Content Summit …

RECS`2017: проблемы и перспективы СЭД/ECM
Сама последовательность работы сентябрьской конференции Russian Enterprise Content Summit (RECS) 2017 в …

Смогут ли платформы, основанные на блокчейне, распространять контент?
Тему блокчейн сегодня не обсуждает разве что ленивый, и с увеличением интереса к этой технологии …

Решения

Исследование DIRECTUM: Готовы ли российские компании к облакам?
Изменения отношения к облачным технологиям — очевидны. Но нам интереснее увидеть больше конкретики по рынку СЭД, тем …

Анализ и визуализация данных в СЭД CompanyMedia
Универсальное аналитическое решение в составе СЭД CompanyMedia, ориентировано на сбор, агрегацию, обработку и …

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

Автоматизация работы с агентами. Опыт Synerdocs в СПАО «Ингосстрах»
В 2014 году одна из крупнейших страховых компаний России — СПАО «Ингосстрах» — приняла решение …

Переход на электронные документы в отдельно взятой торговой сети. Пример Synerdocs и Wildberries
В конце 2014 года крупнейший российский интернет-магазин Wildberries объявил своим партнерам о переводе обмена …

Блог

Электронное ОСАГО – как способ повышения надежности и защиты от жуликов
Это выглядит довольно странно, но даже сегодня многие люди считают, что использование бумажных докум ...

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

К вопросу об обеспечении юридической значимости электронных документов, переданных на архивное хранение
Вопросу о долгосрочном хранении электронных документов уже, кажется, более десяти лет, а "воз и ныне ...

Мобильный бумажно-электронный документооборот курьерской службы
Служба курьерской доставки – это один из довольно ярких и типичных сценариев использования мобильных ...

Бумажный документооборот жив и, кажется, будет жить у нас еще долго
То, что наш термин "электронный документооборот" является крайне двусмысленным – давно известный фак ...

 

Лидеры читательского рейтинга

Статьи

Записи в блогах

Панорама

На пути к “умному” хранилищу
Вопрос хранения данных для современного бизнеса уже давно является одним из основных. Подробно об этой …
Canon открывает перед партнерами новые горизонты и возможности
В начале осени компания Canon провела в Москве традиционную партнерскую конференцию. Двухдневное мероприятие было …
PoE коммутаторы TP-Link
PoE-коммутаторы от TP-Link предназначены специально для работы по стандартам PoE (802.3af) или PoE+ (802.3at) для подачи питания различным устройствам.

Интересно

 

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

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