Обфускация
Обфускация (от англ. to obfuscate — сбивать с толку, запутывать) — это приведение исполняемого кода или исходного текста программы к виду, который сохраняет ее функциональность, но затрудняет понимание, анализ алгоритмов работы, а также модификацию при декомпиляции.
Цели обфускации
- Продемонстрировать неочевидные возможности языка и квалификацию программиста (если запутывание производится не инструментальными средствами, а вручную).
- Оптимизировать программу для уменьшения размера кода и ускорения работы.
- Осложнить декомпиляцию/отладку и изучение вредоносных программ, чтобы предотвратить обнаружение их вредоносной функциональности.
- Затруднить декомпиляцию проприетарных программ, чтобы предотвратить обратную разработку или обход систем проверки лицензий и DRM.
- Нарушить авторские права программистов и скрыть авторство.
В поисковой оптимизации обфускация javascript-файлов использовалась для запутывания поисковых ботов при декомпиляции кода, нередко в обманных целях. На сегодняшний день это неактуально.
Технологии
- На уровне машинного кода. Обфускация применяется в таких частях программы, как проверка регистрационного кода, т. е. не критичных к скорости, но критичных к безопасности. Простейший метод запутать машинный код — вставить в него недействующие конструкции (
or ax, ax
). - На уровне исходных текстов. Исходный текст программы на скрипт-языках (JavaScript, VBScript и т. п.) доступен пользователю. Менее читаемым его можно сделать путем форматирования и замены имён.
- На уровне промежуточного кода. Обычные языки, такие как C++ и Паскаль, компилируют исходный код в машинный. В отличие от них языки платформы .NET, а также NetP и Java, компилируют исходный код в промежуточный (байт-код), содержащий достаточно информации для восстановления исходного кода. Поэтому для перечисленных языков используется обфускация промежуточного кода.
Другие термины на букву «О»
AdSenseAJAXAllSubmitterAltApacheAPIBegunBlogunCAPTCHACMSCookieCopylancerCPACPCCPLCPMCPOCPSCPVCRMCS YazzleCSSCTR, CTB, CTI, VTRDescriptionDigital-агентствоDigital-маркетингDMOZDoS и DDoS атакиEmailFaviconFeedBurnerFTPGoGetLinksGoogle AdWordsGoogle AnalyticsGoogle ChromeGoogle MapsGoogle webmasters toolsGoogle Мой бизнесhCardhProducthRecipehreflanghtaccessHTTP-заголовкиHTTP-протоколHTTPS-протоколInternet ExplorerIP-адресJavaScriptJoomlaKeywordsKPILanding PageLiexLiveinternetLTVMash-upMiralinksMozilla FirefoxMSNNofollow и noindexOperaPageRank и тИЦPerformance MarketingPHPPinterestPPAPPCPush-уведомленияRobots.txtROI (ROMI)RookeeRotapostRSSSafariSapeSEO-продвижениеSEO-трафикSeoPultSeozavrSERPSidebarSitemap.xmlSocial Media OptimizationSSL сертификатыSubcribe.ruSubscribe.DirectTextbrokerTitleTwitterUTMWeb-порталWebMoneyWhoisWordpressXenuXML выдача ЯндексаXSS атакиYouTubeАватарАвторизацияАГСАдаптивность сайтаАдминистраторАккаунтАлгоритмы ЯндексаАмбассадорАнкорАпдейтАпрувАутентификацияБагБаза данныхБайнетБаннерная рекламаБаннерная слепотаБидБиржа ссылокБитые ссылкиБуржунетБыстрые ссылкиБэки поплылиВаловая прибыльВеб-аналитикаВеб-сервисВебвизорВейтерВирусный маркетингВнешние ссылкиВнутренняя перелинковкаВнутрякВодаВоронка продажВыпадение сайтаВыручкаГендерГенератор дорвеевГестбукГлубина просмотраГолосовой поискГрабберДампед ранкДемпингДенверДиверсификацияДизамбигуацияДилерДистрибьюторДифференциацияДокументные операторы ЯндексаДоменДорвейДорвейщикДропшиппингДубли страницИдентификаторы сессийИндексация сайтаИнсайтИнтернет-маркетингИнтернет-сайтИнтерфейсИнфляцияИнформеры ЯндексаИсследование юзабилитиКвизКлишеКлоноводКоды ошибокКоды перенаправленияКоллтрекингКомьюнитиКонверсияКонтентКонцепцияКредитКэшЛидЛидыЛиквидностьЛинкаторЛогистикаЛояльностьМаржаМаркетингМаркетинговый аудитМассфолловингМедийная рекламаМенеджерМетатегиМикроданныеМикроформатыМисспелМобильный трафикМодераторМониторингМордоворотМотивацияНПСОптимизация сайтаОтложенная конверсияПартизанский маркетингПартнерские программыПоведенческие факторыПоддержка сайтовПодкастингПоисковые роботыПоисковый аудитПоисковый спамПоказатель отказовПресс-релизыПрокси-серверыРанжированиеРегистратор доменаРекламаРелевантностьРепутационный маркетингРерайтингРетаргетингРеферерРитейлРСЯСебестоимостьСемантическое ядроСервисы «вопрос – ответ»Сети сайтовСинонимайзерСквозная аналитикаСклейка зеркалСловоформаСниппетыСоциальные сетиСплит-тестированиеСпросСсылкаСтатические URLСтратегияСупервайзерТендерТехнический анализ сайтаТизерная рекламаТрастовость сайтаТрафикУникальность контентаУслугаУТП: уникальное торговое предложениеФильтры GoogleФильтры ЯндексаФишингФлеймФлудФорумыФранчайзингФреймворкФреймыФьючерсХостингЦитируемость сайтаЧПУ-адресаЧто такое SMM. Как он помогает бизнесуЧто такое контекстная реклама: краткая выжимка основных особенностей инструментаЧто такое маркетинговая стратегия: виды и особенности разработкиЭмпатияЮзабилитиЮзабилити-аудит сайтаЯзык запросов ЯндексаЯзык сценариевЯндекс ИКСЯндекс КаталогЯндекс.ВебмастерЯндекс.ВидеоЯндекс.Метрика
Теги термина