3 Сообщения: 276 Зарегистрирован: 23.07.04 Откуда: UA
Добавлено: 18 Февраль 2005, 14:41:45
На данный момент я пользуюсь софтинкой Flashincrypt v2.7. Защищает свфки от SwfDecompilera 2005 (проверено) и от ActionScript Viewera последних версий (не проверено, но утверждается разработчиками)
nujna zzas4ita ot decompoileatora a tak skazaty ...eaeto uje delal doxlyi nomer
Да любая защита дохлый номер - поставил элементарную от импорта на дурака, а остальное все равно лююбой программер расковыряет - пусть не за час, но за день точно.
А потом какой смысл? После визуального просмотра все ваши "великие проекты" можно с нуля воспроизвести - это даже проще, чем ломать и переделывать.
На сколько я знаю, ломание и переделывание флэшки по стоимости и трудозатратам = созданию новой. Единственное ради чего ее могут ломать - ради скриптов, но опять же скриптами программеры интересуются, для которых не составит проблемы снести защиту.
vot kak otve4aet 4elovek kotoryi etim zanimaetsea "nashel"
dembickin.narod.ru(sorry esli adres ne pravilynyi pisal kak pomnyu a ne s browsera
"""
это письмо можешь публикнуть на форуме.
rr> можно ли реально защитить swf от декомпиляции
- можно. разумеется до определенной степени.
потенциально желающих заглянуть в твой код можно разделить на две
категории: на честных и нечестных.
честные (сколько бы их нибыло), пойдут официальным путем, т.е.
обратятся к тебе или в твою компанию за исходником. Для них ты
должен дать контакты, чтобы они не были вынуждены ломать.
Итак, остаются нечестные.
Абсолютная защита не так уж и дорога и ее стоимость не опреджеляется
бесконечностью. Пример со взводом охраны у гаража - это пример
абсолютной защиты.
- Почему? Ведь можно нанять два взвода!
- Ответ кроется в анекдоте про неуловимого Джо: он неуловимый не
потому, что его никто не может словить, а потому, что он нахер
никому не нужен.
Полно других гаражей без охраны. пойдут туда.
Так и с защитой: ее уровень нужно сделать таким, чтобы расходы на ее
вскрытие превышали доход в случае такого вскрытия.
Никто просто не будет геморроиться с защищенной флэшкой, если полно
незащищенных.
Да, я давно занимаюсь развитием темы защиты флэшек. Скорей как
менеджер а не как программер.
В любом случае, могу сказать следующее: в мире есть порядка 10-20
человек, которые могут и хотят это делать. У нас в стране таких 2-3
человека и эти услуги довольно дороги, покольку требуют довольно
долгой и кропотливой работы с байткодом.
Обычный flash разработчик типа меня или тебя должен потратить не один
месяц (год) изучая эти вопросы, чтобы начать делать более-менее
приличную защиту."""
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
pojavilasy ideyka kak zas4ititsea ot KIDOSA swf no eto toko ideyka propisyvaesh gdeto new date (koro4e s4et4ik vremeni) i v sled kadre uslovie esli vremea = > segodnea fscommand quit true eto zas4ita ot otdalennoy raboty
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
pojavilasy ideyka kak zas4ititsea ot KIDOSA swf no eto toko ideyka propisyvaesh gdeto new date (koro4e s4et4ik vremeni) i v sled kadre uslovie esli vremea = > segodnea fscommand quit true eto zas4ita ot otdalennoy raboty
ctrlaltdel, спасибо за цитату - как будто у меня в мозгу извилину (ту, что 18-я справа возле помойки, если считать от забора, что возле травы) один в один декомпилировали. Самое главное в дизайне - это ИДЕЯ (общий дзэн, зрительный ряд, графические решения, а для флэша - еще и чувство времени, ритма и т.д.), а вот ПОВТОРИТЬ все это для более-менее грамотного дизайнера - дело только времени и усидчивости. Более того, если этим займется чуть талантливый человек, то он сделает копию гораздо лучше оригинала (есть даже классические примеры из живописи). Но, т.к. стоимость наших творений пока не оценивается 6-ти значной цифрой в у.е. (наверное, надо предварительно красиво умереть на пивной дуэли с ХТМЛ-верстальщиком), то и людей, которых есть резон напрямую воровать - вообще НЕТ!
Я давно, уже 5 лет занимаюсь Flash`ем , и сказать могу одно, что самое эффективное - это использовать комплексные меры защиты.
Приведу примеры:
1. Использовать примитивную галочку deny import
2. Юзать по возможности Flash Player 7, используя возможность domen security
3. http://www.flash2be.com/xpi/archives/fla/fla163protect.php 4. Создаем в папке пустой мувик, и через него грузим остальные через LoadMovie(). На странице контейнере с пустым мувиком ставим Pragma No-Cache, чтобы файл не кэшировался. Если Вы как все нормальные люди юзаете Apache, то в папке, где лежат остальные мувики, кладем файл .htaccess(запрещаем его смотреть отовсюду кроме сервера).
5. В добавление к 4 - если знаем PHP, то в файл контейнер получает названия файлов, которые надо загрузить через loadMovie() , через PHP -файл.Через LoadVars(). В файле PHP мы создаем новую случайную папку и копируем туда файлы swf из папки, которая известна только в файле PHP. Потом пользователя отлавливаем по сессиям и удаляем папку после его выхода.
Это всё, что пришло сразу мне в голову. Если ещё подумать, то можно придумать кучу наворотов по защите. Но для этого нужен большой разносторонний опыт. Поэтому не напрягатесь и просто учитесь делать профессионально.
Вот ещё анекдот вспомнил в тему про абсолютную защиту:
Невеста собирается на свадьбу, волнуется...
Спрашивает у мамы: Мама! Мама! А что мне одеть в первую брачную ночь.
Мама: Ничего!
Дочь: Как ничего?
Мама: Да так, ты хоть комбинезон надевай! Раз запланировали тебя трахнуть, всё равно трахнут.
0 Сообщения: 421 Зарегистрирован: 05.02.04 Откуда: Новосибирск
Добавлено: 18 Февраль 2005, 23:55:48
6. Разрешение запуска мувика только с определённого адреса / домена.
7. Периодические запросы на хозяйский сервер, шифрование адреса для затруднения поиска вызывающего кода.
8. Добавление кучи "мусора", маскирующего реальную защиту.
и ещё раньше предложенное.
ctrlaltdel, что, "для галочки" не хватит? Вполне достаточно, на мой взгляд.
А "защиты от декомпилера" (если это постановка именно шефа(в чём я сомневаюсь), а не Ваша личная) нет даже у "настоящих" программ, чего про флешу-то говорить? Ральная защита, как это уже неоднократно говорилось, это максимальное затруднение "очистки" кода от "защитных" функций. Эффект в том, что последние ставятся намного проще и быстрее, чем снимаются.
Хочу немного поправить коллегу ,sphere, не злоупотребляйте защитой. Ведь при введении "защитных функций" размер Ваших файлов растет как на дрожжах. Не забывайте для чего изначально создавался Flash - по сути, как легкий вебовский векторный файл. И не заставляйте потенциального клиента ждать. Пусть даже у Вас и сопрут, просто делайте быстрее и по больше нового, чтобы за Вами было невозможно поспеть. главное заказчик будет доволен, а всё остальное - защита... как приятное дополнение.
0 Сообщения: 421 Зарегистрирован: 05.02.04 Откуда: Новосибирск
Добавлено: 19 Февраль 2005, 10:26:28
idweb, речь, насколько я понимаю, идёт не о лёгком векторном файле, п о ПРОЕКТЕ К тому же, не настолько кардинально увеличивается размер при подобной защите. Но в целом -- согласен.
tak lyudi povtoreayu tema sozdana ne dlea zas4ity swf iz weba a dlea zas4ity swf ne ot ska4ivania a ot togo 4tob decompilirovaty naprimer esty u menea na rukax flashka i ee nado zas4itity ot decompileazii... a ne ot ska4ivania po moemu razniza zdesy o4evidna ….vseo ravno spasiba
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
6. Разрешение запуска мувика только с определённого адреса / домена. 7. Периодические запросы на хозяйский сервер, шифрование адреса для затруднения поиска вызывающего кода. 8. Добавление кучи "мусора", маскирующего реальную защиту.
и ещё раньше предложенное.
ctrlaltdel, что, "для галочки" не хватит? Вполне достаточно, на мой взгляд.
А "защиты от декомпилера" (если это постановка именно шефа(в чём я сомневаюсь), а не Ваша личная) нет даже у "настоящих" программ, чего про флешу-то говорить? Ральная защита, как это уже неоднократно говорилось, это максимальное затруднение "очистки" кода от "защитных" функций. Эффект в том, что последние ставятся намного проще и быстрее, чем снимаются.
eto imenno postanovka shefa potomu4to esli kompilynut vinovat budu ea
i es4e po povodu vozmojnosti zapuska fayla s opredelennogo domena.…..podskajesh ??(proekt ne dlea weba...proekt-prezentashka kotoraya kopitsea na cd )
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
soglasen 4to skazal idweb, no delo v tom 4to proekt nujno zas4itity ( nu tam ili kopiright vstavity pri najatii opred klavish ili 4eto podobnoe (4tob mojno bylo prosledity) a problema v tom 4to decompileatory vse scripty vydayut...i sledovatelno vseo eto nujno sdelaty tak 4tob nelyzea bylo decompilirovaty....vot ona glavnaya tema.…..
a nas4et zas4ity ot web sca4ivania.…….pristo movie gruzity v movie.….v 1 muvik postepenno podgrujaty 2.3.4.5.6.7.8.i tak do 10000
i vreadli ktoto zaxo4et ix ska4ivaty.… tak odno vremea delal tokioplastic
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
? а если он тебе скажет прыгнуть голым с 25 этажа и не разбится? ты скажеш -так нельзя а он тебе - "а ты подумай?" и будеш думать?
как же меня парят такие люди вокруг. Это ведь вся таже серия - "зарплату не платят"
люди да когда же вы обретете собственное достоинство то!
We have built a little program (with drag&drop-functionality) to protect your swf-files from the recovery with all IMPERATOR °FLA versions below 1.7.
Юзайте её, и скажите шефу, что защиты не бывает. Это как ремни при автомобильной аварии. Они лишь увеличивают шансы на выживание, но не гарантируют его.
ctrlaltdel, это что за бред вы несёте?
Программисты должны напрочь забыть русский язык, буквы, словообразования лишь только потому будто они ДУМАЮТ о себе как о программистах?? нуну
Разностороннее развитие приветствуется.
P.s.
кстати комменты на кирилице писать - в тыщу раз круче.
3 Сообщения: 276 Зарегистрирован: 23.07.04 Откуда: UA
Добавлено: 19 Февраль 2005, 17:14:42
Для защиты AS кода существуют также обфускаторы (пример http://genable.com/aso/), которые изначально создавались для защиты java кода от реверс-инжиниринга. Обфускатор делает код неудобочитаемым после декомпиляции, но и зачастую после обфускации некоторые функции оказываются corrupted и swf'ka перестает работать должным образом. Это их минус. Я экспериментировал всего с парой обфускаторов и могу сказать что их эффективное использование возможно только в комплексе с другими мерами защиты, упомянутыми выше.
0 Сообщения: 421 Зарегистрирован: 05.02.04 Откуда: Новосибирск
Добавлено: 20 Февраль 2005, 13:48:37
ctrlaltdel,
Цитата:
tak lyudi povtoreayu tema sozdana ne dlea zas4ity swf iz weba a dlea zas4ity swf ne ot ska4ivania a ot togo 4tob decompilirovaty naprimer esty u menea na rukax flashka i ee nado zas4itity ot decompileazii...
Цели предложенных способов защиты и "защиты о декомпиляции" совпадают с той разницей, что последней толком не существует.
Цитата:
es4e po povodu vozmojnosti zapuska fayla s opredelennogo domena.…..podskajesh ??(
Акела, а что с тобой? А? Всмысле что то у тебя сообщений мало, совсем ушёл в опозицию?
Кароче, вот типа тупой защиты от ламеров. Набросал за пол часа.
Всё что дальше этого кода не будет работать, если флешка запускается не с nuran.org:
Код:
_global.$as = eval ("ASnative"); var abc = function (v) { var r = $as (3, 0) (""); var t = ($as (100, 1) (v)).split ($as (3, 0) (",")); for (var i = 0; i < t.length; i++) r += $as (251, 14) ($as (3, 1) (t[i]) >> 1); delete i;delete t;delete delimiter;delete $as;return r; }; $as (1, 0) (this, ["abc,$as"], 1, true); if (this[abc ("190%2C234%2C228%2C216")] != abc ("220%2C234%2C228%2C194%2C220%2C92%2C222%2C228%2C206")) return; trace ('hallo');
Профи если сильно захочет - хакнет эту защиту за нечего делать, а ламер не поймёт даже что это такое.
Но вот мне к примеру вломы было бы расшифровывать этот код, я бы просто бросил затею рипать флаху.
Таким же способом можно закодировать к примеру имена загружаемых SWF, или вообще динамически
генерить их на сервере каждый день разные, или привязывать к сессии. Или ещё чего делать.
Короче защит от ламеров полно.
Защит от настоящих профи почти нет.
nuranius, то есть по сути это обукновенная БАЛДА которая ниче не делает но вся проблемка в том что декомпайлер то.…. всё равно открывает как и раньше да дело в том что придется повозится чтоб разобрать что и к чему относится но ФАКт остается ФАКтом и от компилятора не протектит но все равно спасибо что ответил и хоть чето попробовал предпринять
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
Если это воткнуть в первый кадр флешки, и после (ниже) написать свой код, то нижний код будет работать только в том случае, если флешка запущена на nuran.org.
Это не защита от декомпилятора, это просто простенький код запутывания кода для взломщиков.
Ещё раз повторяю, что НЕ с NURAN.ORG это работать не будет, всмысле код который находиться ниже этого в одном с ним кадре не будет работать. Аналогичным образмо можно вставит проверку даты, инициализацию функций, переменных, не объявляя явно их названия, а вызвать их через какой то слабенький (и не только) шифровальщик.
nuranius, понял но это не совсем то что мне нужно
а на счет шифровальщика- какой именно можешь указатьили линк дать
а стоить в твоём скрипте изменить 1 строку и всё заработает
Код:
_global.$as = eval("ASnative"); var abc = function (v) { var r = $as(3, 0)(""); var t = ($as(100, 1)(v)).split($as(3, 0)(",")); for (var i = 0; i<t.length; i++) { r += $as(251, 14)($as(3, 1)(t[i]) >> 1); } delete i; delete t; delete delimiter; delete $as; return r; }; $as(1, 0)(this, ["abc,$as"], 1, true); if (this[abc("220%2C234%2C228%2C194%2C220%2C92%2C222%2C228%2C206")] != abc("220%2C234%2C228%2C194%2C220%2C92%2C222%2C228%2C206")) { return; } trace("hallo");
Код:
проверь меняеш 1 строку и уже всё пашет но всё равно спасибо... чтото интересненькое в этом есть...
_________________ Вы смеётесь над нами , потому что мы отличаемся от вас,
а мы смеёмся над вами, потому что вы НЕ отличаетесь друг
от друга
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.