Yii Framework Forum: Защита кода - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Защита кода Rate Topic: -----

#1 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 15 May 2009 - 01:53 PM

Добрый вечер!

Хочу к своей коммерческой разработке прикрутить небольшую штуку, чтобы можно было защитить код от воровства.

Хочу где-то в индексе или yii.php соединятся с БД основного сервера и запрашивать лицензионный ключ. Как можно установить соединение с БД в таком файле? Посоветуйте, какой лучше для этого использовать файл, который блокировал бы работу всего сайта при выполнении определенного условия?
0

#2 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 16 May 2009 - 04:32 AM

Вроде получилось, проверку устроил в конструкторе CApplication, т.е. инициализирую там класс, который подклюбчается к БД основног осервера и смотрит лицензионный ключ. Насколько это хорошее решение? Понимаю, что не идеальное, но я еще хочу:
- Зашифровать файл (малоизвестным, но достачно неплохим шифрощиком)
- Попытаться положить файл на основной сервер и инклудить его оттуда - тут пара проблем: надо чтобы php.ini позволял нам удаленные файлы инклудить, второе - по умолчанию Yii ищет классы локально внутри себя...(
0

#3 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 16 May 2009 - 04:33 AM

Т.к. ты исходники будеш распостранять то всю твою защиту смогут обойти.
Весь код будут видеть и смогут смоделировать такуюже структуру базы данных у себя. поэтому в твоей защите пропадает какой либо интерес если не будет шифрования самих исходных файлов. Используй ZendGuard или другие продукты в этом направлении.
0

#4 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 16 May 2009 - 04:36 AM

Ты не понимаеш что у людей есть все твои исходники. Твои проверки в самом обточеном варианте в любом случае будут выгоядеть как :

if (ключ_получил и ключ отличный) {
// выполняем функции которые всеравно находятся в исходниках
} else {
// сыпим ошибки
}

Так вот в любом случае пользователю проще удалить нафиг твою проверку на лицензирование и просто обратиться напрямую к исходникам. как я уже сказал вариант только шифрование исходников если ты не собераешся выпускать коды под нормальной лицензией. все такие защиты как ты предлагаеш ломаются за полчаса. если ты решиш написать супер защиту самого главного файла что б люди невидели какие функции ты будеш запускать для старта - так прикрутят просто отличный дебагер что б пролистать все функции которые запускаются. короче гиблая у тебя идея как я уже сказал.

либо не распостраняй код, либо полностью шифруй и клей защиты либо напиши SOAP интерфейс который будет кушать поочередно код с сервера (но всеравно надо шифровать SOAP клиент на стороне покупателя) либо откажись от создания ком. приложений которые ты собераешся распостранять исходным кодом.
0

#5 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 16 May 2009 - 06:15 AM

Ну так при шифрование и так понятно, я его и собираюсь использовать, т.е. буд все эти детские проверки шифровать. А Зенд обходят только так, это не проблема.

Короче я понимаю, что если кому-то приспичит, то обойдут, но моя задача - сделать минимально защиту, чтобы от дурака она сработала и если что дураку мы дали по голове, ну а умному надо будет так он из любого положения вытащит нужные данные, тут уж хоть что попиши  :)
0

#6 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 16 May 2009 - 08:37 AM

тогда смысл от защиты на дурака? умный разберет вашу систему и выложит в интернет как её вскрывать. не вижу смысла делать это вобще если незнаете как сделать что б и умный её не обошол.

то что вы начитались про ZG я конечно рад, но если вы его не использовали и не взаламывали - ненадо писать что его обходят только так. покажите мне доступный декодер последней версии зенда, очень интересно посмотреть.
0

#7 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 16 May 2009 - 12:22 PM

во-первых не надо с такой агрессией на меня набрасываться  :), во-вторых защиты от умного вы сами показали, что нет, следовательно ее не написать, или может вы знаете как? В таком случае и рассказали бы. Про декодеры зенды - насчет последней версией не знаю, но в целом - погуглите и найдете массу полезного.
0

#8 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 16 May 2009 - 12:51 PM

Да в том то и дело что я гуглил это дело часто и отлично понимаю состояние зенда на рышке шифрования в данный момент.

Расскажите тогда по теме в двух словах что будет из себя представлять проект который вы собераетесь распостранять среди людей и хотите защитить его. и самое главное какие цели приследуются при защите (если лицензия истекла тогда скрипты перестают работать? база проекта находится у вас на сервере или распостраняется вместе с программой?)
0

#9 User is offline   xomaa 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 82
  • Joined: 17-January 09

Posted 16 May 2009 - 01:29 PM

малость не  в тему.... ;) а лицензия Yii позволяет просто так вот использовать его в закрытых и платных проектах???? ???
0

#10 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 16 May 2009 - 03:19 PM

Yii распространяется по лицензии BSD (читайте хотя бы педивикию о этой лицензии: http://ru.wikipedia.org/wiki/BSDL)

Ну а что касается моего проекта, это наш CMS, который мы очень активно внедряем на сайты клиентов. И проблема не в том, что он мегакрут и наворочен, нет, отнюдь. Вполне себе самодостаточный двиг, дело в том, что в городе очень сильна конкуренция и того и гляди уведут и перенимут себе его, т.к. город маленький, а др.компании-монстры уже постарели и им было бы кстати что-то подобное взять. Вот чего и боюсь.
Вот я наверное и объяснил цель защиты нашего продукта. Это отнюдь не подростковая кичливости, просто реальное положэение дел на локальном рынке в нашем городе.
БД распространяется с проектом если вы про БД с данными сайта, а если с данными лицензий - то на нашем сервере, но вот этот момент пока временный. Я пока не знаю как лучше сделать, собственно потому тут и написал, хотя и понимаю что затеял заезженную тему. Статей перерыл немало, вот например тут увидел абсолютно тоже самое, что вы говорите: http://habrahabr.ru/blogs/php/29301/
Поэтому не думайте, что я это прибежал и решил защитить, я основательно хочу подойти к делу, вот и прошу совета.
Кстати, о ZEND много сказано в той статьей на хабре, а про нас - он дороговат пока для нашего кармана. Мы купили вот такую штуку на пробу: http://zorex.info - кстати тут есть и онлайн шифратор файлов, еще он делает привязку по домену и ip, вообщем неплохая вещь и недорого.
0

#11 User is offline   xomaa 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 82
  • Joined: 17-January 09

Posted 17 May 2009 - 06:55 AM

Quote

Yii распространяется по лицензии BSD (читайте хотя бы педивикию о этой лицензии: http://ru.wikipedia.org/wiki/BSDL)

прочитал! Спасибо! ;)
0

#12 User is offline   Rsol 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 122
  • Joined: 29-May 09
  • Location:Severodonetsk [UA]

Posted 30 May 2009 - 04:02 AM

Quote

Мы купили вот такую штуку на пробу: http://zorex.info - кстати тут есть и онлайн шифратор файлов, еще он делает привязку по домену и ip, вообщем неплохая вещь и недорого.


Уже есть какие-то выводы по использованию zorex? Действительно хорошая вещь? Как влияет на производительность?
0

#13 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 30 May 2009 - 04:31 AM

Ну о производительности трудно говорить, т.к. во-первых не замерял, во-вторых не такой уж и большой объем был, чтобы "на глазок" ощутить спад производительности.

что касается самой системы: защита, что достаточно удобно, представляет собой приложение на php, кторое можно поставить себе на сервер, что я и сделал, для его работы требуется база MySQL. Модуль защиты - подключаемый скрипт на php, зашифрованный в несколько слоев. Функции обфускатора нет, в целом выбран был потому, что из бесплатных все в основном имеют дешифраторы, а из платных в основном дорогущие, да и тоже могут быть дешифрованы (например как зенд, судя по отзывам и наличию даже спец.сайтов), а у этого и ценник мизерный, и поддержка работает нормально и небольшое комьюнити сформировалось => он не столь популярен, поэтому и вероятность его дешифрации тоже ниже и интерес к нему.

Хороший обзор кстати тут есть: http://www.manhunter...odifikacii.html
0

#14 User is offline   carat 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 60
  • Joined: 12-February 09

Posted 30 May 2009 - 08:36 AM

Quote

Хочу к своей коммерческой разработке прикрутить небольшую штуку, чтобы можно было защитить код от воровства.

делай сайт на CGI
0

#15 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 30 May 2009 - 01:40 PM

Обожаю, когда начинают такие советы давать  ;D Наверное, если я его сделал на php на то есть свои причины и мы этот проект поддерживаем больше 2 лет, как то переползать на cgi только ради того, что там двоичные исходники вряд ли эффективно.
0

#16 User is offline   carat 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 60
  • Joined: 12-February 09

Posted 30 May 2009 - 05:30 PM

Quote

переползать на cgi только ради того, что там двоичные исходники

не только. если устоялась логика, можно и переходить, поддерживать будет сложнее, но работать будет быстрее. и главное ты полностью контролируешь ситуацию и клиента держишь в кармане.
0

#17 User is offline   Hitman 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 95
  • Joined: 08-February 09
  • Location:Russia, Petrozavodsk

Posted 31 May 2009 - 01:16 AM

а как предлагаете перенести yii на cgi?  ;D
0

#18 User is offline   xomaa 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 82
  • Joined: 17-January 09

Posted 31 May 2009 - 12:48 PM

перепишем Yii на C !! кто за ?? :) ;)
0

#19 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 31 May 2009 - 12:58 PM

Quote

перепишем Yii на C !! кто за ?? :) ;)


если ты про asp.net то я категорически против
уж очень тормознутая фигня
0

#20 User is offline   xomaa 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 82
  • Joined: 17-January 09

Posted 01 June 2009 - 12:09 AM

нет, я про старый добрый Си !!!
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users