Теперь от слов перейдем к делу. Первая тема первого обсуждения:
"Защита ваших flash'ek"
Несколько тезисов по этой теме:
1. Запрет кеширования.
2. Защита от сохранения. Возможно ли?
3. Защита от копирования на другие сайты. (по _url?)
4. Как защитить от выдирания графики, звуков, скрипта дебаггерами?
Вот что думаю я, по этому поводу:
Для начала посмотрим: кому надо присваивать чужое?
1. вашим конкурентам (в случае с графикой с сайта, менюшками, скриптами из игр)
2. но в большинстве случаев - обыкновенным пользователям, которые имеют привычку тащить к себе на комп 80% из того, что им попадается на глаза.
Рассмотрим сначала защиту от обычных пользователей. Для этого достаточно применить методы 1 и 2. Юзеров, как правило интересует игра/мультик, а не его скрипт и тд.
Допустим, половина пользователей - коллекционеры и любители флэшек (таким был я в свое время вполне удачно вытаскал из Сети примерно 500 игр ) => у них, возможно, есть софт для сохранения флэшей на комп. Многие софтины берут уже закачанные флэшки из кэша (Find Flash). Запрет кеширования - и половина "коллекционеров" обламывается ) Другие проги - это плагины к браузеру, как только они замечают флэшку, сразу выдают меню с предложениями сохранить (Flash Catcher) Но сохраняют они только то что видят!
Если флэшка на странице будет пустой, только с проверкой по урл и лоад моваем... Так:
adress = _url
if(adress != "http://www.mysite.ru/flash.swf"){
text = "Воровать нехорошо.";
//а если добавить "ваш ip записан и отправлен в отдел по защите авторских //прав ФСБ" Ну да ладно, это я замечтался...
}
else{
loadMovie("igra.swf", 0)
}
В общем, прога сохранит пустую флэшку со скриптом, которая, в придачу, будет пугать пользователя отделом по защите авторских прав

Убираем, еще 40-45% коллекционеров... Остаются несколько самых упорных и настойчивых, которые вскроют пустую флэху посмотрят скрипт. А скрипт явственно указывает что игра-то лежит не на
http://www.mysite.ru/flash.swf, а
http://www.mysite.ru/igra.swf. Эти самые упорные забьют последнюю ссылку в браузер и получат-таки флэшку. Но, чтоб до такого дойти, юзеру надо знать чуточку флэш или хотя бы html. Конечно, никто не мешает записать скрипт позапутанее, и в самой igra.swf сделать еще одну проверку на url...
Но если уж флэшка окажется на компе юзера, там он её будет мучить контрол-ентерами или флэшплеерами с перемоткой. В общем, обойдет кадры с ограничением. Это всё печально и говорит о том что стопроцентной защиты нет. Но зато из охотников за флэшками до вашего творения доберутся уже 5-10% а не все 100% И то самых упорных и образованных...
Мысль 1: А если сделать пустую флэшку с урл-проверкой (flash.swf) (см. выше), в нее грузится igra.swf, в которой тоже проверка но уже на то, что она должна быть загружена в flash.swf ! Получается так юзер сохраняет - flash.swf, который для него бесполезен. Даже если он узнает адрес igra.swf и загрузит его в браузере, игра не заработает, потому что не загружена внутрь flash.swf, который загрузит игру только при правильном урле. Замкнутый круг. 100% защита. разве нет? (это пока только теория, на практике еще не опробовал.)
Мысль 2: Вы можете опровергнуть предыдущую мысль, сказав что контрол-ентер и флэшплееры с прокруткой никто не отменял и пользователь просто прокрутит флэшку с кадра с надписью "Защищено. И работать я на твоем компе не буду" на кадр с welcome-scrinom и кнопочкой старт Да? А может контрол-ентер и полоса прокрутки управлять муви-клипами? То-то же! Зачем нам переход на кадр "Защита", пусть лучше поверх всего вылезает большой наглый мувик с той же надписью. Ведь можно сделать, что сколько кадры не крути, мувик не исчезнет, а так и останется закрывать собой весь экран. Так же рекомендую, если вы делаете игру-бродилку, где несколько разных зон, пусть все зоны, враги и прочее будут в одном мувике. Да, будет немного сложнее делать игру, но зато никто не сможет пролистать зоны Foward'om и Back'om, а будет честно проходить всю игру. (теория - только первая часть, вторую, насчет зон, я как-то давно делал - всё так как написано.)
Если скрестить Мысль 1 и Мысль 2 получается такое: пусть даже некоторые настырные личности доберутся, до спрятанной флэшки и сохранят её на комп... Фиг они её потом запустят! Только online и только с вашего сайта!
Это была защита от пользователей-коллекционеров, теперь перейдем к более страшным - любителям-хирургам и потрошителям-профессионалам. Последних сравнительно мало (я имею ввиду, людей которые могут ВОСПОЛЬЗОВАТЬСЯ полученной информацией). То есть, чтобы открыть флэшку дебаггером особого ума не надо, в крайне случае чел может выдрать из нее звуки, ну при умении - графику. А скрипт? Ну и выдерет скрипт. Но воспользоваться им сможет не каждый! Одна из заповедей программирования: Чужой код - чужие мысли. Так что сначала пусть разберутся с нашими мыслями (а мы постараемся сделать их как можно запутанее) а потом пусть пользуются нашим кодом. Если смогут!
К сожалению, единственный способ защиты кода - писать как можно запутанее и непонятнее. (да и самому не запутаться) И здесь стопроцентной защиты быть не может.
Весь текст - это моё мнение, перед ним должно стоять большое ИМХО. Если вы думаете по-другому, пожалуйста выскажите свое мнение, так как тема защиты своих творений - одна из самых сложных и одного мнения здесь быть просто не может.