что ттакое обфусицированный код

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить
Аватара пользователя
fizic
Родился
Сообщения: 18
Зарегистрирован: Вс авг 23, 2009 17:51:13
Откуда: Тюмень

что ттакое обфусицированный код

Сообщение fizic »

Объясните пожалуйста что такое обфусицированный код. Шарился инете так там с этим полная лажа ни одной нормальной статьи. Заранее большое спасибо.
dvdianov
Вымогатель припоя
Сообщения: 552
Зарегистрирован: Пт май 15, 2009 14:32:29
Откуда: Москва
Контактная информация:

Re: что ттакое обфусицированный код

Сообщение dvdianov »

Обфусцированный. С одной И.
http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%84%D1%83%D1%81%D0%BA%D0%B0%D1%86%D0%B8%D1%8F
Если проще - код, исходник которого открыт (под нажимом общественности открыт мързкой собственнической компанией) или может быть получен дизассемблированием (обработкой бинарника), но который специально запутали, чтобы человек разобрался с трудом.
Пример первого варианта - переменные из разного количества подчеркиваний или тире, но это просто.
Пример второго - намеренное введение лишних подпрограмм и цепочек.
Ещё проще - комп понимает код без проблем, а человек забьет и пойдет взламывать другую прогу :).
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: что ттакое обфусицированный код

Сообщение ARV »

термин "обфускация" обозначает буквально "запутывание" и применяется только к интерпретирующим языкам программирования, таким, как Java или C#. дело в том, что исходные тексты таких программ не могут быть скрыты - они ведь не компилируются, и исполняются интерпретатором. предварительная компиляция в байт-код мало что дает, т.к. по байт-коду довольно хорошо восстанавливается первоначальный исходник. ну а производители ПО не хотят, чтобы их программы могли быть легко взломаны - если есть исходник, то взлом не представляет сложности.
так вот, обфускация - это обработка исходного текста программы программой-обфускатором, которая делает исходник нечитаемым человеком, но вполне понятным интерпретатору. например, если в вашей программе есть объект SecretService, а в нем есть метод DisableSaveFile - даже козе понятно, что SecretService.DisableSaveFile = true означает, что запись файлов заблокирована секретной службой :))) а обфускатор просто ПЕРЕИМЕНОВЫВАЕТ SecretService во что-то нечитаемое типа e_12_sdf5_11_334 и в итоге исходная строка превращается в e_12_sdf5_11_334.wwevfskh_2123_w = 23 - можно по этой строке угадать, что тут как раз и устанавливается блокировка важной функции?
если бфускатор постарается - узнать исходный текст будет практически нереально!
даже если из обычной программы Си убрать все переносы строк, т.е. записать программу в одну строку - разобраться в ней будет непросто...

надеюсь, я понятно объяснил суть обфускации?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
fizic
Родился
Сообщения: 18
Зарегистрирован: Вс авг 23, 2009 17:51:13
Откуда: Тюмень

Re: что ттакое обфусицированный код

Сообщение fizic »

Вполне).
Ответить

Вернуться в «Теория»