URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 91126
[ Назад ]

Исходное сообщение
"Представлен неподдающийся обратному инжинирингу метод запуты..."

Отправлено opennews , 02-Авг-13 23:17 
Группа учёных из массачусетского, колумбийского, техасского  и калифорнийского университетов предложила (http://newsroom.ucla.edu/portal/ucla/ucla-computer-scientist...) новый способ (PDF (http://eprint.iacr.org/2013/451.pdf)) запутывания кода программного обеспечения (obfuscation), с целью приведения его к нечитаемому виду, непригодному для восстановления алгоритма работы. В отличие от применяемых ныне методов запутывания кода новый способ оперирует техникой  функционального шифрования, что не даёт возможности провести обратный инжиниринг и восстановить хотя бы в общих чертах суть закодированного приложения.


Код преобразуется в зашифрованное на уровне функциональности представление, остающееся работоспособным, но требующее для восстановления исходного вида решения математической задачи, выполнение которой на современных компьютерах потребует нескольких сотен лет вычислений. Используемое при математическом преобразовании кодирование преобразует изначальный код в последовательность цепочек, напоминающих математический пазл. Созданный пазл пригоден для выполнения - закодированная программа остаётся полностью функциональной, но для того чтобы восстановить общую картину и понять логику организации работы требуется сложить все элементы пазла, те просчитать все исходы возможной функциональности, что является непосильной для современных компьютеров задачей.

<center><a href="http://newsroom.ucla.edu/portal/ucla/artwork/4/7/5/2/7/24752... src="http://www.opennet.me/opennews/pics_base/0_1375470183.jpg" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>

URL: http://newsroom.ucla.edu/portal/ucla/ucla-computer-scientist...
Новость: http://www.opennet.me/opennews/art.shtml?num=37587


Содержание

Сообщения в этом обсуждении
"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:17 
Удивительная новость на ресурсе, посвященному опенсорсу.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено PavelR , 02-Авг-13 23:21 
"Врага надо знать в лицо".

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:46 
Они что, полиморфные вирусы изобрели? Мне кажется, вирусописатели придумали подобные трюки лет 20 назад. Как раз с подобной целью. Что от аверов их все-равно не особо спасло. Не получается влобовую - изучат вызовы и поведение в целом. Не идеально, но достаточно для понимания что за хрень и как с ней бороться.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено angra , 03-Авг-13 00:30 
Нет. Основной код полиморфа выполняется в расшифрованном виде. Дешифратор заполняется мусором и антиотладочными трюками. Две копии вируса не похожи друг на друга, но если перехватить момент дешифрации, то получаем чистый код основной части вируса.

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

Так что ничего общего с полиморфами данное исследование не имеет. Но тем, кто хочет понять о чем ребята говорят, придется серьезно налечь на матан и функан.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено souryogurt , 03-Авг-13 01:45 
Есть полиморфные вирусы которые не только дешифратор, но и "полезную" нагрузку генерируют с мусором. Но в целом вы правы.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:18 
> Нет. Основной код полиморфа выполняется в расшифрованном виде.

Половина полиморфиков кроме этого еще и густо разбавляет "полезный" код "бесполезным" крапом (суммарный эффект от которого равен нулю). Что очень доставляет антивирусным аналитикам и антивирям, которые более не могут детектировать код по шаблону :)

> Дешифратор заполняется мусором и антиотладочными трюками.

У половины полиморфиков нет никакого "дешифратора": при порождении очередной копии бяка просто берет саму себя и креативно добавляет кучу дряни в код. Суммарный эффект этой дряни, разумеется, равен нулю. Но поди там разберись что в этой копии полезный код, а что такая вот дрянь. На коде не написано для чего он там запихан. И как-то совсем не очевидно что вот эти 5 команд и вон те 10 команд через 20 килобайт кода - взаимно компенсируются по тихому.

Так что похоже что граждане академики выступили Капитанами и просто озвучили трюки придуманные 20+ лет назад авторами более-менее приличных полиморфиков.

> друга, но если перехватить момент дешифрации, то получаем чистый код основной части вируса.

См. выше - фокус с впихиванием уймы постороннего кода и отсутствием какой либо дешифровки известен уже весьма давно. Некоторые полиморфики даже умудрялись отполиморфить уже обработанную копию. Которая при этом дополнительно распухала но общая логика, разумеется, не менялась. В результате были иногда  довольно жирные экспонаты, которые сами себя разбавили мусором несколько раз. Могу себе представить какой кайф для авера получить экспонат на мег кода, где несущего смысл кода - 5Кб, а остальное - ничего не значащие команды, суммарный эффект которых по факту равен нулю, только об этом никто не знает кроме полиморфного генератора в момент генерации, который это скомпоновал :)

> А в данном случае дешифрации вообще не происходит ни на каком этапе.

См. выше.

> Так что ничего общего с полиморфами данное исследование не имеет.

Нормальные полиморфики именно так и работали всю жизнь.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено FF , 03-Авг-13 10:50 
Ты новость читал? Тогда в сад, писатель.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 14:02 
> Ты новость читал? Тогда в сад, писатель.

Как раз почитал. И понял что это подозрительно напоминает мне трюки авторов полиморфиков 20-летней давности...



"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 03-Авг-13 20:31 
> Нормальные полиморфики именно так и работали всю жизнь.

ты попутал полиморф и метаморф. вот метаморфы как раз и переписывают себя; причём эксперименты с переписыванием так, чтобы не просто было непохоже, а реально тасовались и пути исполнения, и частично даже алгоритмы — были. упёрлись, правда, в то, что размеры получаются совершенно неприличные, и на асме это писать задолбаешься.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено True , 03-Авг-13 16:15 
>Они что, полиморфные вирусы изобрели?

Нет. Всего лишь Perl.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено kurokaze , 04-Авг-13 16:07 
>Нет. Всего лишь гвидобейсик.

Исправил, не благодари


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено ffirefox , 03-Авг-13 01:57 
Это враги из параллельной вселенной. GPL такой код не пройдет, а у BSD никому и вовсе не сдался. А пропирасты пусть перед друг другом выпендриваются.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:44 
А Вы уверены, что GPL подобный код не пройдёт? Американский суд может решить иначе.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Aceler , 03-Авг-13 17:02 
В апстрим-то он точно не попадёт, потому что не пройдёт review :-)

А вот в микрософте очень обрадуются.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 17:17 
> А вот в микрософте очень обрадуются.

Да, микрософту это подойдет. Если код, созданный микрософтом, гарантированно никто никогда не сможет прочитать, это будет благом для сообщества. Ибо незачем растлевать неокрепшие умы.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено анон , 03-Авг-13 03:47 
а как тебе неломаемые игры/программы?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Sabakwaka , 03-Авг-13 04:02 
> а как тебе неломаемые игры/программы?

Ура! Превратятся в покупаемые! :)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Организация Объединённых Тюленей , 03-Авг-13 08:21 
Непокупаемые.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Evolve32 , 03-Авг-13 10:50 
Так это же и хорошо. Может хоть небольшая доля людей задумается о свободной альтернативе. Если, конечно, они действительно станут не ломаемые, в чем я сомневаюсь.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:23 
> а как тебе неломаемые игры/программы?

Не ломается только компьютер который забыли включить. Все остальное - весьма зависит от.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 14:44 
> Не ломается только компьютер который забыли включить.

Ломается! Еще как ломается! Вот его выключили, несколько лет не включали, потом попробовали включить - а он, собака, не включается! Поломался! ;)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:23 
Так не бывает. Если нельзя модифицировать программу модифицируют окружение в котором она запускается.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Aceler , 03-Авг-13 17:03 
> а как тебе неломаемые игры/программы?

В описываемой методологии не сказано, во сколько раз замедляется исполнение зашифрованного кода, так что в играх сильно вряд ли.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Crazy Alex , 03-Авг-13 12:28 
хм, взять gpl-код, засунуть в проприетарный продукт, вот так обработать... только интересно, что там от быстродействия остаётся

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 17:20 
> хм, взять gpl-код, засунуть в проприетарный продукт, вот так обработать...

А вот это - реальная опасность. Плюсанул. Реальная возможность проприетарщикам воровать открытый код и эффективно прятать улики. Возможно, это и является целью проекта.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено True , 03-Авг-13 16:18 
> Это враги из параллельной вселенной. GPL такой код не пройдет, а у
> BSD никому и вовсе не сдался. А пропирасты пусть перед друг
> другом выпендриваются.

Пишешь программу, шлепаешь лицензию GPL или BSD, исходники нате пожалуйста и продаешь по $9.99 каждую копию.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено kurokaze , 04-Авг-13 16:09 
> Пишешь программу, шлепаешь лицензию GPL или BSD, исходники нате пожалуйста и продаешь
> по $9.99 каждую копию.

Не получится, ты быстро обанкротишься, продашь квартиру и почку и станешь бомжом.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 19:43 
Почему сразу враги? Если отпетые проприетасты внезапно начнут выпускать люто тормозящие программы, то это ж гут.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено arka , 02-Авг-13 23:25 
Сейчас выстрелит BSD? :)

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:49 
> Сейчас выстрелит BSD? :)

У них наверняка пистолет еще не готов. И вообще, при попытке выстрелить окажется что надо изобрести порох, придумать пули, сбилдить пистолет, и вот тогда, через пару столетий, можно стрелять.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено SubGun , 03-Авг-13 07:43 
Зато, когда изобретут, это будет гасс-пушка, в то время как остальные будут с рогатками бегать.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:24 
> с рогатками бегать.

Вы только забыли уточнить что с рогатками они будут бегать лишь потому что доигрались с ядерным оружием и устроили reboot своей эволюции случайно :)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Aesthetus Animus , 03-Авг-13 08:43 
> доигрались с ядерным оружием и устроили reboot своей эволюции случайно :)

Но это не отменяет того факта, что у нас будет "гасс-пушк" (wtf? это типа пушка Гаусса? Не важно, проще говоря, вундервафля), а вас - рогатка.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 10:05 
> Но это не отменяет того факта, что у нас будет "гасс-пушк" (wtf?
> это типа пушка Гаусса? Не важно, проще говоря, вундервафля), а вас - рогатка.

Ну да. Правда не в этой жизни. Или в параллельной вселенной. А так все ничего.


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 03-Авг-13 20:34 
> Но это не отменяет того факта, что у нас будет «гасс-пушк» (wtf?
> это типа пушка Гаусса? Не важно, проще говоря, вундервафля), а вас
> — рогатка.

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


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено Аноним , 04-Авг-13 08:57 
Проблема еще и в том что нужда стрелять обычно приспичивает в момент когда на тебя прется какой-то хмырь, не слишком дружественный и уж конечно не собирающийся ожидать пока некто закончит сборку пистолета.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено kurokaze , 04-Авг-13 16:10 
> Зато, когда изобретут, это будет гасс-пушка, в то время как остальные будут
> с рогатками бегать.

США рельсотронами оснастит суда к 2020, а вы да, будете бегать с рогатками


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 04-Авг-13 17:37 
> США рельсотронами оснастит суда к 2020, а вы да, будете бегать с
> рогатками

рельсотрон не панацея.


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено Аноним , 05-Авг-13 01:51 
> рельсотрон не панацея.

Ну учитывая дальность и пробиную силу, с развитием систем наведения можно будет подойти за пределы действия береговых батарей и вынести их :)


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено Neus , 05-Авг-13 22:17 
А теперь представь какого размера аналогичную пушку можно разместить на берегу

"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено Evgueni , 11-Авг-13 15:43 
Проблема не в размере пушки, а в скорости сгорания пороха. Так что ресольтрон — это перспективное оружие.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено MrClon , 04-Авг-13 22:51 
>> Сейчас выстрелит BSD? :)
> У них наверняка пистолет еще не готов. И вообще, при попытке выстрелить
> окажется что надо изобрести порох, придумать пули, сбилдить пистолет, и вот
> тогда, через пару столетий, можно стрелять.

Помнится про Linux что-то похожее говорили в своё время (:


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Buy , 02-Авг-13 23:27 
Все нормально. Запутать необратимо код, а потом открыть исходники под GPL. Изучайте, модифицируйте, используйте. Все условия соблюдены.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:49 
> Все условия соблюдены.

Ага, щаз. Было мнение что обфусцированный код - исходниками не является.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:46 
Разумеется, очень обоснованное мнение. Судьи в США также считают?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:26 
> Разумеется, очень обоснованное мнение.

Ну это мнение FSF и их юристов.

> Судьи в США также считают?

Ну если вы хотите проверить - идите и попинайтесь с FSF в суде. Как раз и узнаете как считают судьи.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено linux must __RIP__ , 05-Авг-13 08:58 
> Разумеется, очень обоснованное мнение.
> Ну это мнение FSF и их юристов.

позвольте - а как же на счет обфускации патчей ядра со стороны RedHat ?


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Led , 06-Авг-13 06:10 
>> Разумеется, очень обоснованное мнение.
>> Ну это мнение FSF и их юристов.
> позвольте - а как же на счет обфускации патчей ядра со стороны
> RedHat ?

Дурачок, нет там никакой "обфускации". Это тебе с твоими дружками-ламерами из оракла всё что сложнее helloworld.c кажется "обфускациями.

P.S. Неоднократно выбирал одиночные коммиты/фиксы из RHEL'овских патчей. Это несложно - может, потому что я в школе учился, а не в оракловской-майкрософтовкой бурсе для дибилов, как ты?


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 15:08 
Вот, кстати, повод задуматься о cледующей версии GPLv3.1

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Sabakwaka , 03-Авг-13 04:24 
> обфусцированный код - исходниками не является.

Не «обфусцированный», а МИНИМИЗИРОВАННЫЙ ! :)
Для вашей же пользы, чтоп быстрее исполнялся :)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:27 
> Не «обфусцированный», а МИНИМИЗИРОВАННЫЙ ! :)

В случае компилируемых исходников это никак не влияет на скорсоть исполнения. Там компилер покруче минимизацию выполняет своим оптимизатором.

> Для вашей же пользы, чтоп быстрее исполнялся :)

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


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Константин , 03-Авг-13 10:52 
Если описанное преобразование является криптографичски стойким, то полученный код будет практически неоптимизируем. Соответственно, программа, скомпилированная из обработанного исходника, будет работать в разы медленнее нормальной (если вообще будет работать), и обработанный код уже не сможет считаться исходником нормальной программы.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 17:24 
> Если описанное преобразование является криптографичски стойким

Со половинкой ключа, сданной в ...



"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 17:23 
>> обфусцированный код - исходниками не является.
> Не «обфусцированный», а МИНИМИЗИРОВАННЫЙ ! :)
> Для вашей же пользы, чтоп быстрее исполнялся :)

Ты, похоже, спутал понятия - обфусцированный, минимизированный, оптимизированный. Быстрее будет исполняться только в последнем случае. Запиши цикл, исполняемый, скажем 3 раза, в виде последовательно исполняемых блоков. Исходный код увеличивается, но быстродействие повышается за счет исключения ряда операторов.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алексей , 02-Авг-13 23:51 
"The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work." -- https://www.gnu.org/licenses/gpl-3.0.en.html

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Evgueni , 03-Авг-13 05:56 
Значит придёт время GPL4 с запрещением обфуркации.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:28 
> Значит придёт время GPL4 с запрещением обфуркации.

Да вообще-то оно не проходит и с 2/3 уже. Так, по мнению юристов.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 01:26 
Удивительна она еще тем, что автор не знаком с русским языком.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:41 
Я думаю, что как раз весьма актуальная для open source штука. Если всё так, как они говорят.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Boboms , 03-Авг-13 11:43 
> Удивительная новость на ресурсе, посвященному опенсорсу.

Да, не стоит смотреть дальше своего носа...


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 16:21 
Закройте глаза, заткните себе уши и старайтесь не замечать обратных тенденций..

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 23:05 
Речь идёт о запутывании программы на уровне _исходного текста_ или на уровне _машинного кода_?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено GG , 03-Авг-13 23:06 
> Речь идёт о запутывании программы на уровне _исходного текста_ или на уровне
> _машинного кода_?

Речь идёт о запутывании программы на уровне исходного текста так сильно, что машинный код из такого текста получается ещё более запутаным, но каким-то чудом всё-равно работает


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено commiethebeastie , 02-Авг-13 23:23 
Фотография справа какбэ намекает на производительность и стабильность конечного решения.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено tessel , 04-Авг-13 22:15 
Индусу просто очень хочется кушать хлеб с маслом.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:24 
Все алгоритмы давно известны, а мимолетная блобопроприетарщина пусть идет в /dev/null

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:24 
Посоны расходимся - пишут что лажа, практически не применить, накладные расходы огромные.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:29 
Дисятки гигов оперативки?)

Это похоже на scrypt ))


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:35 
Скорее на java.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено eoranged , 03-Авг-13 12:29 
А где пишут? Можно линк?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:28 
Чем это лучше боянной обфускации на конечных автоматах?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:31 
> Чем это лучше боянной обфускации на конечных автоматах?

Генрация больших кусков навоза внутри кода


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:51 
> Генрация больших кусков навоза внутри кода

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


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:44 
Сорри, не совсем в курсе, но добавлю одно предположение.
Перевод гиперболического шифрования на язык конечных автоматов позволяет выделить классы ненадежных кривых. Вероятно обфускация на конечных автоматах может быть более верифицируема - и, возможно, доказано нерасшифруема иначе как брутфорсом.
Смотреть их пруфы в статье у меня квалификации не хватает.
Вспоминается что МС как-то подписалась с кем-то из Скандинавии (ПрологЛабс или похоже) на криптинг ДЛЛек в виртуальные машины. Т.е. такое сабджевое уже не первый год (
Скоро бинарники будут все более монолитными и хрен реверсируемыми - DRM, виртуалка и полная обфускация + привязка с прошивкой.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:53 
> Скоро бинарники будут все более монолитными и хрен реверсируемыми - DRM, виртуалка
> и полная обфускация + привязка с прошивкой.

И закончится все это тем что оно само помрет под натиском опенсорса.

Как бывший реверсер могу отметить что глупо ломиться в железную дверь с крутыми замками, если она стоит в чистом поле. Можно просто взять и обойти. Это намного проще :).


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено SubGun , 03-Авг-13 07:45 
Бывший реверсер и вдв-шник. И это в 15 лет. Угу-угу.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:29 
> Бывший реверсер и вдв-шник. И это в 15 лет. Угу-угу.

Ну подумаешь, ошибся в пару раз. Форумным аналитикам простительно.

Эй, аналитик, "какая вероятность того что я на улице встречу динозавра?" :)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 20:37 
> Эй, аналитик, "какая вероятность того что я на улице встречу динозавра?" :)

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


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено тень_pavel_simple , 04-Авг-13 12:08 
>Современная наука считает, что все птицы — динозавры.

альтернативно одарённый представитель науки?


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:56 
Нет, просто лучше-чем-лично-ты осведомлённый человек.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:08 
>> Эй, аналитик, "какая вероятность того что я на улице встречу динозавра?" :)
> Не выходя на улицу? Околонулевая. В противном случае — что-то около ста
> процентов. Современная наука считает, что все птицы — динозавры. Попробуй пройтись
> по улице, не встретив ни одного голубя :)

Вранье. Не 100, а только 50 - то ли встретишь, то ли нет.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 12:27 
> гиперболического шифрования

Конечно же эллиптические кривые. Как же я налажал )))


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 13:30 
> Чем это лучше боянной обфускации на конечных автоматах?

Чем грузины.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено IMHO , 02-Авг-13 23:39 
зачем, ведь есть Perl
> Perl — это тот язык, который одинаково выглядит как до, так и после RSA шифрования… — Keith Bostic

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 10:09 
> зачем, ведь есть Perl

Участники obfuscated C code contest считают вас галимым скрипткидисом, а поклонники брейнфака - просто малодушным слабаком.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено тоже Аноним , 03-Авг-13 12:21 
Посмотрите результаты этого конкурса:
http://www.askdev.ru/question/1969/Code-Golf-%D0%B.../
Написано живыми людьми и без всякой обсфуркации. При этом рефреном звучат комментарии: "а как это работает"? Я вот сейчас глянул - не скажу, чтобы собственное решение показалось мне понятным ;)

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено ИМХО , 03-Авг-13 13:46 
> Участники obfuscated C code contest

гореть тем в аду кто код на С обфускацией гадит


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 14:01 
> гореть тем в аду кто код на С обфускацией гадит

Да ладно, специально обгаженый код бывает прикольным. Например одним большим палиндромом, или там еще чем.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Анонимус_8470100500 , 02-Авг-13 23:40 
>..задачи, выполнение которой на современных компьютерах потребует нескольких сотен лет вычислений.

Умный в гору не пойдёт - умный гору обойдёт.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 02-Авг-13 23:46 
>> Умный в гору не пойдёт - умный гору обойдёт.

Скорее толстый


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Dfox , 03-Авг-13 01:12 
Спасибо за светлое будущее.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено ffirefox , 03-Авг-13 01:38 
Я так понимаю, что никто из этих ученых никогда не ковырялся в машинном коде?
Или код так будет зашифрован, что даже процессор его будет выполнять не понимая, что выполняет?

Непонятно, зачем еще запутывать программный код, если нижний уровень это машинные коды (ассемблер). Ну, не хочешь отдавать исходники - не отдавай.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Восторженный школьник , 03-Авг-13 07:22 
>даже процессор его будет выполнять не понимая, что выполняет?

Вообще-то да.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено SubGun , 03-Авг-13 07:47 
> Непонятно, зачем еще запутывать программный код, если нижний уровень это машинные коды
> (ассемблер). Ну, не хочешь отдавать исходники - не отдавай.

При чем тут исходники? У вас заело?
Данный метод в первую очередь предназначен для защиты от взлома программ. И он уж всяко будет сильнее, чем ASPack и Themida.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:31 
> он уж всяко будет сильнее, чем ASPack и Themida.

Авторы полиморфной вирусни похожие по смыслу трюки придумали лет 20 назад.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено pansa , 04-Авг-13 02:51 
Я вас разочарую, но обфускация предназначена как раз для защиты исходного кода и алгоритма.
Что вы вносите в понятие "взлом программы" тоже не совсем понятно.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 10:02 
>Или код так будет зашифрован, что даже процессор его будет выполнять не понимая, что выполняет?

Он всегда так делает. Что дали то и выполняет.


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 03-Авг-13 20:38 
> даже процессор его будет выполнять не понимая, что выполняет?

ты, наверное, удивишься, но именно так и происходит *абсолютно со всем машинным кодом*. процессор реально ничего не понимает, потому что это каменюка, и «понималкой» не наделена.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено energia , 03-Авг-13 01:47 
Кто-нибудь что-нибудь понял из этой запутанной чуши? Есть предположение, что смысл новости уже зашифрован "на уровне функциональности"

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено YetAnotherOnanym , 03-Авг-13 02:09 
"Представлен неподдающийся пониманию метод запутывания новостей" - это Вы имели в виду?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:52 
Я, например, понял. И я не удивлён, что ничего не поняли Вы.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:11 
>Для восстановления исходного вида требуется решение мат задачи

А никого исходный вид не интересует. Берём отладчик, генерим асм, выбрасываем мусор


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:55 
Смысл в том, что теперь такое западло можно называть СПО.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:31 
> Смысл в том, что теперь такое западло можно называть СПО.

А белое можно называть черным. Лжецам и лицемерам невпервой.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено SubGun , 03-Авг-13 07:49 
> А никого исходный вид не интересует. Берём отладчик, генерим асм, выбрасываем мусор

Ну что, очередной школьник? Фишка блин в том как раз, что "мусор" не выбросить.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:32 
> не выбросить.

Выбросить, но - с неимоверной затратой ресурсов на "оптимизацию" кода. В чем, собственно и пойнт. В общем то любой уважающий себя полиморфик к этому всегда стремился :).


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 08:29 
> выбрасываем мусор

Там только мусор


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 03:39 
Хорошо зашифровали, дальше что, система как то должна понимать этот код. Ладно научили понимать зашифрованный код через программный или аппаратный уровень. Но почему в новости нет информации о том как это шифрование сказывается на производительности конечного результата. Да и никто не может исключить ошибку в алгоритме которая позволит с периода сотен лет сократить процесс до считанных дней. Такое уже происходило неоднократно с многими алгоритмами шифрования, которые тоже начинались со слов, для этого алгоритма требуется сотни лет. Человеческий фактор исключить нельзя даже у группы ученных

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено SubGun , 03-Авг-13 07:51 
Это да, лень - штука такая.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 10:01 
"При использовании метода, код программы преобразуется в зашифрованное на уровне функциональности представление, при котором зашифрованный код остаётся исполняемым"

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено pavlinux , 03-Авг-13 05:33 
Мутатень всё это, алгоритмы и шифры уже ломают лазерами....
Та же IBM хакала то ли ГОСТовский шифр, то ль кого-то из *Fish_ей
через расчёт потребления мощности на кристалле.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 14:50 
Очень интресно. Можно ссылочку?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено XVilka , 03-Авг-13 19:34 
Пожалуйста. Из свежего https://media.blackhat.com/us-13/US-13-OFlynn-Power-Analysis... и https://media.blackhat.com/us-13/US-13-OFlynn-Power-Analysis...

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 20:14 
Спасибо за интересные ссылочки про побочные каналы.

Но, хотелось узнать, как можно лазером сломать алгоритм. %)

>алгоритмы и шифры уже ломают лазерами....  


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено pavlinux , 04-Авг-13 04:43 
> Спасибо за интересные ссылочки про побочные каналы.
> Но, хотелось узнать, как можно лазером сломать алгоритм.

Лазером низя, как и отладчиком.
А вот воспользоватся результатами работы этих приборов - можно.

Как я понял суть была в том, что на микруху приклеивают некий кристалл,
из какого-то материала, который под действием ЭМИ от микрух искривляет
луч лазера. Ну и на выходе эти параметры  сравниваются с начальными.

Программно задают некие шаблоны шифруемого текста (например все нули или единицы),
и изучают отклонения на всём периоде шифрования. В том шифре строго на 6-ом и 17-ом (цифры не точные)
раундах, возникали скачки ЭМИ. Как дальше это использовали не писали.

Но по любому, отклонение от равномерной работы алгоритма в шифре - это провал. :)  


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 21:49 
Спасибо за столь подробный ответ. Кристалл - это серьезно. 8)

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено AS , 03-Авг-13 07:01 
а если я в как-бы ящике виртуалку другую обфусцирую то я интелект прячу да ??

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 14:09 
Ваш интелект не спрячешь.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 07:24 
Это похоже на гомоморфное шифрование?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Crazy Alex , 03-Авг-13 12:33 
да, нечто близкое

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Baz , 03-Авг-13 10:14 
а давайте так зашифруем весь интЫрнет (МС)

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 11:09 
Дали бы примеры кода зашифрованного и нет.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Andrey Mitrofanov , 03-Авг-13 11:20 
> Дали бы примеры кода зашифрованного и нет.

Все говорят "дали бы", а ты _купи_!


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено AnonymousSL , 03-Авг-13 12:49 
Оригинал статьи не читал. Как я понял, код будет зашифрован в исполняемый код некоей виртуальной машины, внутри которой текущий код тоже нужно будет преобразовать, чтобы получить реальное исполнение для ВМ, а потом выполнить. Кто читал подробно, скажите, так?
Могу предположить, что сама ВМ тоже является одним из вариантов текущей ВМ и поэтому выявить алгоритм самой ВМ в общем виде будет не такой простой задачей.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 13:33 
> Оригинал статьи не читал. Как я понял, код будет зашифрован в исполняемый

"Не читал, но осуждаю" (с)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено AnonymousSL , 03-Авг-13 14:59 
Правильно говорить: "Пастернака не читал, но осуждаю"

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:10 
> Правильно говорить: "Пастернака не читал, но осуждаю"

Я в курсях, как правильно. Все поняли.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 14:12 
Ничего в pdf'ке интересно, -- они рассматривают топологию скотта и делают её гомеоморфное преобразование с рандомизацией. Фактически неявно опираются на предположение, что NP/=P. Скука..

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено paver , 03-Авг-13 15:25 
Не понял причины негативного отношения к новости. Как сабж вредит (делу) СПО?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:11 
> Не понял причины негативного отношения к новости. Как сабж вредит (делу) СПО?

Эти недоумки своим существованием СПО вредят. А прыгать с крыши никак не желают.



"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 16:01 
название pdf-файла напомнило роман, где пожарники из-за тоталитаризма книги жгли.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Anonymouse , 03-Авг-13 18:55 
А там  не любую функцию можно спрятать, а вроде только из класса NC
http://en.wikipedia.org/wiki/NC_(complexity)
>Our first result is a candidate construction of an indistinguishability obfuscator iO for all polynomial-size,

log-depth circuits (i.e. NC)
Не?


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 20:21 
А че там с производительностью таких программ? На скорость выполнения кода оно влияет или нет?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 03-Авг-13 20:21 
ад наступает

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:11 
> ад наступает

Мы все умрем! (с)


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено cordatus , 03-Авг-13 21:02 
Круто, круто... Да уж, кто за что борется.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено GG , 03-Авг-13 21:46 
Пора пилить GNU GPL v4

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено danfe , 06-Авг-13 06:30 
Зачем?  Еще в GPLv2 явно указано, что "source code for a work means the preferred form of the work for making modifications to it."  Код, который любым способом был переведен в неудобочитаемый (и тем более нечитаемый вовсе) вид, под это определение не попадает ни разу.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Xasd , 04-Авг-13 02:43 
здорово! молодцы!

...но всё равно я не понял -- что за значения нужно подставлять вутрь переменных ---- a[..], g, e[..], z[..]

http://www.opennet.me/opennews/pics_base/0_1375470183.jpg


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 05:34 
Пусть пусть запутывают. Вследствие этого проприетарщина станет ещё более тормозной и непотребной.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 04-Авг-13 13:12 
> Пусть пусть запутывают. Вследствие этого проприетарщина станет ещё более тормозной и непотребной.

А еще за нее деньги платят. А вот патчи к линю в уплату - увы и ах! - не принимают нигде.


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 04-Авг-13 17:32 
> А еще за нее деньги платят. А вот патчи к линю в
> уплату — увы и ах! — не принимают нигде.

этот текст следует понимать так, что ты можешь в магазине за пиво виндой расплатиться? ну-ну, удачи.

а если понимать так, что платят разработчикам и продавцам, то погугли по двум словам: «red hat». и перестань уже нести свою чушь.


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено Xasd , 04-Авг-13 17:38 
кстате в пивном магазине -- я даже фарами от автомобиля врядле смогу расплатиться за пиво :)

..ну или там -- металлическими дорожными знаками :-) :-)


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 04-Авг-13 17:46 
> кстате в пивном магазине — я даже фарами от автомобиля врядле смогу
> расплатиться за пиво :)
> ..ну или там — металлическими дорожными знаками :-) :-)

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


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено EuPhobos , 04-Авг-13 23:47 
Ну вот, а потом удивляемся, почему нынешние %@цать гигабайт оперативы, и 16 ядер не хватает, что бы нормально, быстро и плавно работала винда.
Конечно, когда каждая функция в коде будет выполнять(или уже выполняет) лишнюю крипто-работу, мол "главное что бы не заметили что код ворованный".
Любители по-воровать у GPL, возрадуются.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 01:06 
посоны, не парьтесь! есть и положительная сторона можно таким макаром стеганографии рвать одну программу в другую, например фс с криптоконтейнером в майнсвипера и хрен кто докажет что на компе вообще есть криптоконтейнер

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 01:08 
извините за неровный почерк - пишу с кофеварки

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Zip , 05-Авг-13 01:14 
друзья мои, а никто не задумывался, как это пропирастические программеры будут отлавливать баги в своих зашифрованых поделтях или принимать от пользователей бан-репорты? Если такое шифрование сделает практически недоступным отладку, то и применять шифрование не будут или поделия спросом не будут пользоваться вообще.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Zip , 05-Авг-13 01:24 
Баг-репорты! Опечатался.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алексей , 05-Авг-13 11:02 
Вирусы выходят на новый уровень!!!

Если сделать программу по их методу а потом в нее внедрить кусочек вируса уже никто не сможет - понять как работает программа!!!!


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено asdf , 05-Авг-13 11:31 
Наверное очень весело искать причины сегфолта в таких программах.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено WishMaster , 05-Авг-13 17:03 
Имея двоичный код, можно восстановить последовательность действий, зная последовательность действий можно понять, какой код - мусор.-))

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Led , 06-Авг-13 06:12 
> Имея двоичный код, можно восстановить последовательность действий, зная последовательность
> действий можно понять, какой код - мусор.-))

Школоте языком молоть - не мешки ворочать. Ты, для началя, хотя бы "расшифруй" обычный код, скомпилированный с -O3.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алекс , 05-Авг-13 19:03 
Хочу что бы кто-нибудь пояснил что значит "Сама функция не поддаётся анализу и выполняется в зашифрованном виде, без стадии расшифровки." ?
Только просьба без словоблудства, нормально объяснил.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 19:16 
Математическая функция имелось в виду. На вход дают какие-то данные, на выход - она их выдает. Как посчитать то что она выдаст - непонятно.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алекс , 05-Авг-13 19:30 
Поясню что я имею ввиду.

У нас есть процессор(+память,кэш и т.д.), некий алгоритм (который якобы выпоняется в зашифрованном виде, черный ящик с входом и выходом). Все хорошо только вот что, процессор не умеет расшифровывать ему нужно сказать чтобы он расшифровал, а значит он это положит в память (кэш) это может быть сделано как угодно последовательно (т.е. по частям), параллельно (т.е. сразу все) ну это будет сделано, поскольку как я уже написал выше у процессора нет встроенного алгоритма шифрования/дешифрования я имею ввиду обычный процессор (MIPS, SPARC, x86 и т.д.).
Либо новость не точно написано, либо они смогли зашифровать так что этот набор битиков и байтиков (посути мусор в общем понимании) ложится в процессорные команды - ну тогда это тянет как минимум на охеренную премию и я снимаю перед ними шляпу, потому что то что было сделано до этого полная херня.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 19:39 
Да забудьте Вы уже про зашифрованный код, это к делу не относится (можно по такому же принципу и код зашифровать, но необязательно). Представьте себе программу из кучи условных ветвлений. А по какой ветке пойдет - зависит как раз от этой самой функции. Ну да, будете знать какие команды процессор выполняет, но какой от этого толк, в каждом конкретном случае - выполнится ветка, которую выберет разработчик по каким-то своим критериям, предсказать или повторить - будет невозможно.



"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алекс , 05-Авг-13 19:53 
Ветвление это хорошо, вот только это не является шифрованием (я говорю про статью, а там шифрование написано). Ветвление можно отследить, да сложно но можно.
Именно из-за шифрования и приковал мой взгляд эта статья.

Была (и есть) одна программка если я не ошибаюсь UltraEDIT32 дак вот в ней шифрованный код поднимался в память и там дешифровывался, но кроме всего там была сумасшедшая система ветвления этого кода. Вообщем креки для нее можно найти в инете т.е. взломали (SoftIce им в помощь).

Не канает ответ.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Алекс , 05-Авг-13 19:55 
> Да забудьте Вы уже про зашифрованный код, это к делу не относится
> (можно по такому же принципу и код зашифровать, но необязательно). Представьте
> себе программу из кучи условных ветвлений. А по какой ветке пойдет
> - зависит как раз от этой самой функции. Ну да, будете
> знать какие команды процессор выполняет, но какой от этого толк, в
> каждом конкретном случае - выполнится ветка, которую выберет разработчик по каким-то
> своим критериям, предсказать или повторить - будет невозможно.

Да кстати в статье на английском говорится именно про шифрование.



"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 21:43 
Ответ в теме уже прозвучал. См. "гомоморфное шифрование".

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 05-Авг-13 21:47 
В любом случае, как я это вижу, область применения ограничена. Например, IO-ориентированный код явно в пролете. ?
А для черного ящика (в данном случае - абсолютно черного) без особых требований к производительности - очень неплохо.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 07-Авг-13 16:50 
При необходимости - можно написать и шифрование (алгоритм работы этой кучи ветвлений и будет алгоритмом дешифровки), только смысла в этом будет немного (у нас задача получить программу, которую невозможно понять, а не расшифрованный кусок понятного кода).

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 06-Авг-13 14:40 
где пример скачать? у меня курсовая по этой теме!

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено northbear , 10-Авг-13 10:36 
Ну, полный бред. Индусы, они и в Америке индусы. Чуваки видимо тупо хотят денег и разводят на бабки своих индусских олигархов.

Элементарное рассуждение: Есть класс функций преобразовывающих пространство А в пространство B. Допустим чувак изобрёл крутую функцию преобразования (алгоритм), которая  эффективней других делает это преобразование.
Эти индусы по сути преобразуют эту функцию в другую функцию из этого класса.

Дальше три варианта:
1) Сложность полученной функции меньше сложности исходной функции. Это Нобелевка однозначно...
2) Сложность полученной функции больше сложности исходной. Зачем надо было тогда изобретать такой алгоритм, чтобы потом его изнахратить этой хренью?! Смысл в этой функции будет только, если её сложность всё еще будет меньше других известных алгоритмов. Ну, кто следит за этим думаю поняли что я хотел сказать...
3) Сложность осталось той же... Это очень узкий подкласс функций. Собственно оптимизирующие компиляторы сами занимаются подобными преобразованиями, выбрасывая всё лишнее из кода. Тут уже всё придумано до них... Боюсь после качественного оптимизирующего компилятора от их обфуркации останутся рожки да ножки...  

Развод лохов короче...
Пипец какой-то...


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено arisu , 10-Авг-13 10:47 
ну, на самом деле свести с ума оптимизатор не так уж сложно: он же не рассчитан на патологически идиотский код. при достаточно большом количестве кусочков пазла он просто поднимет лапки и скажет: «баста, карапузики, дальше без меня.»

эффективность выхлопа, правда… ну, пичалечка. но, как известно: «если наша программа у вас тормозит — купите технику помощнее». двойной профит: ещё и стимуляция продаж железа.

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


"Представлен неподдающийся обратному инжинирингу метод..."
Отправлено northbear , 10-Авг-13 20:54 
> ну, на самом деле свести с ума оптимизатор не так уж сложно:
> он же не рассчитан на патологически идиотский код. при достаточно большом
> количестве кусочков пазла он просто поднимет лапки и скажет: «баста, карапузики,
> дальше без меня.»

В математике нет понятия "патологически идиотский код". Есть понятие избыточный код. Там могут быть избыточные переходы, избыточные операции, избыточные промежуточные данные. Вот собственно и всё... Оптимизирующий компилятор на алгоритмах - это как архиватор на обычных данных.

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

С функциями всё сложней, конечно. Но не более того...

> эффективность выхлопа, правда… ну, пичалечка. но, как известно: «если наша
> программа у вас тормозит — купите технику помощнее». двойной профит: ещё
> и стимуляция продаж железа.

В этом случае "защищаемый" алгоритм превращается в неуловимого Джо, который в таком виде нафиг никому не нужен. Программист возьмёт пусть чуть менее эффективный алгоритм, но он будет эффективней этого хлама...

Хотел бы я посмотреть как они это всё отлаживать будут в случае, если алгоритм вдруг будет работать неправильно...  


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 10-Авг-13 17:58 
>Эти индусы по сути преобразуют эту функцию в другую функцию из этого класса.

Во множество функций, как я это понял. Применение которых дает тот же результат, что и исходная. Получение исходной функции - математически трудно выполнимая задача. Т.е. вместо понятного исходного алгоритма получаем кусок макарон.


"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено northbear , 10-Авг-13 20:27 
Вы не поняли. Из алгоритма сортировки пузырьком получить алгоритм быстрой сортировки тоже математически сложная задача, если не сказать больше. Вопрос в том, нужна ли кому-то сортировка пузырьком?

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено Аноним , 13-Авг-13 13:03 
А откуда вы узнаете, что это именно алгоритм быстрой сортировки, перебрав все возможные входные значения? Если он работает на ограниченном наборе как пузырек - это еще не значит, что это именно сортировка.

"Представлен неподдающийся обратному инжинирингу метод запуты..."
Отправлено northbear , 14-Авг-13 12:24 
Я просто привел пример на пальцах... Лично мне всё равно как алгоритм называется, имеет лишь значение, хорошо ли он выполняет свою работу в контексте моей задачи или нет.

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