 |
Как защищать копирайты |
 |
03.09.2003, 10:15
|
#1
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Как защищать копирайты
Глобально -- субж, а конкретнее -- ситуация:
Есть скрипт поддерживающий скины. Просто набор HTML файлов, который потом собирается в один HTML, и бухается юзеру в браузер.
Так вот, среди тех же скиновсих файлов, есть footer в котором и есть преславутая строка. Так вот тут то и проблема -- человек издалека разбирающийся в ХТМЛ может просто убрать/изменить ее. Желательно, чтобы эта строка генерировалась php скриптом. Конечно изменить ее может и тот кто разбирается в php, но таких на свете далеко меньше...
Кстати проблема на самом деле большая. На devshed был длинный топик, и в конце концов согласились на zend. Ну сами понимаете не решение.
|
|
|
10.09.2003, 04:58
|
#2
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Вынеси пару ф-ций и кусок отвечающий за генерацию футера в отдельный файл, а потом подключай его как
include('hxxp://myhost.com/scripts/footer.php');
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
10.09.2003, 07:58
|
#3
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Да нет, так не получится -- может один скин с белым фоном, другой с черным -- для какого генерировать?
Я думал, написать функцию, которая будет проверять, мол есть ли в футере инфо о цопирайте, какого цвета фонт, какого размера, ну и если там че то не то, генерировать свой код...
Сами понимаете развозня...
|
|
|
10.09.2003, 08:14
|
#4
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Похоже я непонятно выразился.
Смотри например у тебя все в одном флаконе, т.е. скрипт в одном файле:
<?php
// main.php
function func1() {}
function func2() {}
function func3() {}
...
function funcNN() {}
function genFooter() {}
// тут какой-то код
?>
Теперь берем и разделяем код на два файла:
<?php
// main.php
include('hxxp://myhost.com/scripts/footer.php');
function func1() {}
function func2() {}
...
function funcNN() {}
// тут какой-то код
?>
<?php
// footer.php
function func3() {}
function func4() {}
function genFooter() {}
?>
Т.е. ты выносишь какую-то часть кода без которого скрипт не будет наромально работать в отдельный файл, хранишь его на своем сервере и никому не отдаешь. А расспространяешь лишь main.php
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
10.09.2003, 11:29
|
#5
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
А, ладно, что то вроде remotely hosted, ну приблизительно.
Ну тут то надо иметь сервак, притом знать на 100%ов что но будет у тебя и завтра. Да и по крайней мере, не стоит труда -- человек все равно может скачать файл и поменять ссылку.
Вобщем дело не из легких...
Да а кстати, может как ни будь сделать че то вроде zend... :think, например кодировать один файл ассиметричной кодировкой...
|
|
|
10.09.2003, 11:53
|
#6
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Кодировщиков хватает. Кроме Zend есть как минимум еще два коммерчесских и один фришный ( http://pear.php.net/package-info.php?package=bcompiler).
Их проблема в том что на сервере должен стоять модуль декодирования.
А про скачивание и меняние ссылки... Тут можно сделать присмерно так:
<?php
...
include($inc_dir.'footer.php');
...
?>
А собирание $inc_dir можно размазать по коду.
В footer.php добавить "динамическую" инициалиализацию переменных, необходимых для нормальной работы скрипта.
Еще можно засунуть в поставку фейковый footer.php.
В footer.php добавить кучу разных проверок и т.д. и т.п.
Конечно при желании все это можно обойти. Но по крайней мере можно затруднить обход.
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
11.09.2003, 09:47
|
#7
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Ну обойти все можно -- так или иначе, но все равно линкать на свой серв никак не хочется.
Насчет модуля -- он же всегда бесплатный(?)
|
|
|
11.09.2003, 10:04
|
#8
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Модуль декодирования - всегда бессплатный. А вот кодирования в основном платный, да к тому же стоит немалых денег. Если не ошибаюсь от $300.
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
11.09.2003, 13:28
|
#9
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Quote:
Originally posted by hayk
Модуль декодирования - всегда бессплатный. А вот кодирования в основном платный, да к тому же стоит немалых денег. Если не ошибаюсь от $300.
|
Да, причем тот же zend можно купить за $300 только если докажешь что у тебя малый доход. Вот так вот.
Кстати, ты упомянул pear. А разве он не встроен в php?
|
|
|
11.09.2003, 13:38
|
#10
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Ну Zend - да, но как я говорил есть еще парочка подобных тулов, которые значительно дешевле.
PEAR состоит из двух частей: модули написаные на PHP и модули написаные на C (PECL).
После того как PEAR зарелизили в стандартную поставку PHP входит только ядро PEAR. Все остально надо устанавливать используя инсталятор. А модули из PECL надо еще и компилировать.
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
12.09.2003, 13:09
|
#11
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Ну не знаю -- что то можно придумать без кодировки, или имплементировать кодировку через php.
|
|
|
12.09.2003, 13:30
|
#12
|
Moderator
Join Date: 03 2002
Location: Russia
Posts: 123
Rep Power: 0
|
Без кодирования (компилирования) - только callback'и (homecall'ы).
Если имплементить кодирования, а значит и декодирование через php то это лишняя трата времени. На php максимум можно obfuscator (кажется так пишется) сделать. Но это лишь затруднит изучение кода.
__________________
Життя - це не тільки будні © Nemiroff
|
|
|
12.09.2003, 15:15
|
#13
|
панаехавший
Join Date: 06 2003
Location: форпост
Age: 38
Posts: 4,007
Rep Power: 0
|
Да и к тому еще сильно портит жизны (обфускатор этот).
Ну подумаю еще, спасибо...
|
|
|
All times are GMT. The time now is 17:52. |
|
|