-
Уважаемые форумчане. Я недавно завершил разработку ПО, которое теперь хочу распространять по схеме Shareware , т.е. будет и демка. Так вот осталось только определится с системой активации, регистрации и защиты от нелицензионного использования.
Вся соль заключается в том что я буду продавать программу людям, которые будут её использовать и дома и на работе, причем логично что при этом они должны её купить у меня один раз.
Развивая эту мысль пришел к идее того что программу можно распространять привязываясь не к компьютеру (HardwareID), а к флешке на которой программа находится, т.е. к какому-то идентификатору флешки (назовем его FCODE). Т.е. схема работы приложения такая: 1. Пользователь скачивает программу и может её использовать в демо-режиме в любом месте и на любом накопителе (ограничение 5 запусков). 2. Если пользователь желает купить программу, он копирует её на свою флешку, запускает её оттуда, передает мне полученный программкой FCODE, далее я на основании FCODE генерю у себя соответственный код активации (ACODE). Пользователь вводит его в программку, она сохраняет его тут же в ini файле. 3. Всякий раз при запуске программа сравнивает по спецалгоритму FCODE от флешки, с которой её запустили, и ACODE который сохранен в ini, и если они соответственны - запускается, не соответственны - запускается в демо-режиме.
Отсюда у меня к вам вопросы: 1. Имеет ли право на жизнь такая схема активации ? 2. Можно ли как-то получить FCODE, он действительно различен у всех флешек, даже noname? 3. Какие плюсы минусы вам кажутся будут присущи такой системе ? 4. У всех ли пользователей есть флешка ? 5. Какие методы борьбы существуют с таким способом активации? 6. Какие способы защиты Вы можете предложить если программу человек может использовать как в одном месте так и в двух (дом и работа) ?
Для более предметного разговора скажу что ориентировочная стоимость программы 1000 руб., и к флеш накопителям она никакого отношения не имеет, т.е. функциональность у неё в другом.
С Уважением, infom.
-
> Я недавно завершил разработку ПО, которое теперь хочу распространять > по схеме Shareware ,
а утебя лицензия есть, средства разработки купил?
-
> а утебя лицензия есть, средства разработки купил?
да.
-
> 2. Можно ли как-то получить FCODE, он действительно различен > у всех флешек, даже noname?
у китайских может быть, что угодно и все с одним номером.... думаю так но не проверял, но вот блютусы китайские и все с одним мак-адресом часто попадаются.
-
> infom (27.10.08 13:17)
если так, серьезно требуется защита, многие используют USB-електронные ключи, правда это стоимость повысит и очень значительно. Зато есть ключ - работаещь с программой нет - облом.
-
Есть еще вариант, сам высылай флешки, а на нем Reg.key - какой-нибудь привызанный к номеру этой флешки, а флешки хорошие бери фирменные, то может вероятность совпадения сведешь к нулю или по крайней мере голова болеть не будет, какой флешкой пользуется клиент.
-
> koha! (27.10.08 13:48) [5] > Есть еще вариант, сам высылай флешки, а на нем Reg.key - > какой-нибудь привызанный к номеру этой флешки, а флешки > хорошие бери фирменные
Будет ли это дешевле электронного ключа USB - вопрос.
Автор, цену проги можно озвучить? Из любопытства.
-
> KSergey © (27.10.08 13:50) [6]
> Для более предметного разговора скажу что ориентировочная > стоимость программы 1000 руб.,
-
> Sergey © (27.10.08 13:50) [6]
> Автор, цену проги можно озвучить? Из любопытства.
- Цена:
> Для более предметного разговора скажу что ориентировочная > стоимость программы 1000 руб.
Думаю, шо приличный захист не может стоить мало грошей.
-
> > если так, серьезно требуется защита, многие используют > USB-електронные ключи, правда это стоимость повысит и очень > значительно. Зато есть ключ - работаещь с программой нет > - облом.
Это отпадает, так как зачастую сразу после опробования демо пользователю захочется мгновенно её купить, а отсылка своей флешки - это время. А на сколько ориентировочно может подняться цена ?
-
> infom (27.10.08 14:23) [9]
> А на сколько ориентировочно может подняться цена ?
Ну не знаю, на стоимость такого ключа, наверное, + усилия по разработке, есть фирмы, которые предлагают, такие ключи, нужно погуглить, я как то натыкался в итернете на такое, но щас не помню.
-
> 5. Какие методы борьбы существуют с таким способом активации?
найти место проверки и поставить безусловный переход, туда куда у тебя будет переход при совпадении.
-
> 4. У всех ли пользователей есть флешка ?
;)))
а если в качестве флэшки использовать фотоаппарат или mp3-плеер? или, что еще проще, какую-нибудь карту памяти + кард-ридер?
-
> 1. Имеет ли право на жизнь такая схема активации ?
> 3. Какие плюсы минусы вам кажутся будут присущи такой системе > ?
Имеет, но не забывать с собой флешку, и втыкать ее каждый раз когда тебе программа понадобится... Неудобно это. Если программа мне не позарез нужна, я бы, как пользователь, от нее отказался.
> 4. У всех ли пользователей есть флешка ?
Опыт показывает, что у подавляющего большинства. Но флешку бывает другу отдаешь, или дома оставляешь, или в кармане забыл и выстирал ее тайдом...
> 5. Какие методы борьбы существуют с таким способом активации?
Те же, что и с другими - уже упомянутый безусловный переход в месте проверки, либо перехват API-вызова получения FCODE и принудительное возвращение нужного значения (для которого ACODE известен/подобран/куплен).
> 6. Какие способы защиты Вы можете предложить если программу > человек может использовать как в одном месте так и в двух > (дом и работа) ?
Классический, с простым ключом, генерируемым на основе имени/e-mail пользователя. Почаще выпускаем новые версии, просматриваем интернет на наличие опубликованных недобросовестными пользователями ключей и в блеклист их, чтобы к следующим версиям не подошли.
Интернет-способ. Если программа имеет отношение к интернет (браузеры, качалки, трепалки, онлайн-игры, почтовые клиенты, etc.), то самый надежный способ - авторизация на сервере. При запуске, программа коннектиться по заранее заданному адресу, и сервер запоминает, что некий user1 запустил программу с ip адреса xx.xx.xx.xx. Если программа запущена на другом компьютере, первая копия узнает об этом от сервера (периодический опрос сервера, например) и закроется. Таким образом, в один момент времени будет запущена одна копия программы. Чтобы сложнее было сломать этот метод, программа может получать от сервера какую-нибудь информацию, без которой ее функционирование невозможно (небольшой, но важный кусок кода). Тогда, безусловный обход коннекта к серверу ничего не даст.
Можно использовать интернет-способ как альтернативу флешечному. Если пользователь хочет носить программу на флешке - дать ему ACODE и пусть ходит с флешкой. Если носить флешку пользователю лень, он получает сетевой ICODE, устанавливает программу везде, где она ему нужна, а программа проверяет можно ли ей запускаться онлайн, благо интернет у нас есть практически везде.
-
> сервер запоминает, что некий user1 запустил программу с > ip адреса xx.xx.xx.xx
и прокси-сервера идут лесом...
> Если программа запущена на другом компьютере, первая копия > узнает об этом от сервера (периодический опрос сервера, > например) и закроется.
очень весело я легальный пользователь, запустился тут некий пират запустился с таким же кодом, и у меня вдруг все рушится яйца отрывать за такое, обоим - и автору, и пирату
> благо интернет у нас есть практически везде
да ты оптимист
-
> и прокси-сервера идут лесом...
Ну я не знаю почему и куда идут прокси сервера, но проблемы не вижу. Важен сам факт наличия соединения, а не адрес, с которого это соединение установлено. При этом проверяется уникальность пользователя установившего соединение (для этого и нужен ICODE, хеш которого передается серверу; в качестве ICODE можно использовать например обычный user/password), а не уникальность ip адреса. Даже с одним ip адресом, порт будет разный. Эта же пара user/password добавлена на сервер, так что сервер знает, что этот пользователь легальный.
> очень весело > я легальный пользователь, запустился > тут некий пират запустился с таким же кодом, и у меня вдруг > все рушится > яйца отрывать за такое, обоим - и автору, и пирату
Не "все рушиться", а приложение закрывается с вменяемым собщением. Вы связываетесь с автором или тех. поддержкой, меняете комбинацию user/password (получаете новый ICODE). При этом, раз пират знает ваш user/password, то видимо вы сами где-то его проворонили, так что надо не автору что-то отрывать, а пользователю сделать внушение по поводу безопасности своих личных данных. После смены, очевидно, старый ICODE перестает быть действительными, и пират ничего не получает.
> > благо интернет у нас есть практически везде > > да ты оптимист
Ну, может и оптимист. Я проблем с интернетом последние года три не ощущаю (живу в небольшом городе, коих в России большинство, население около 100-150 тыс. человек). Единственное, стоимость от всеми любимой Москвы отличается изрядно, но с доступом к сети нет никаких трудностей (интернет гонят по ADSL, есть две-три конкурирующие компании которые продают интернет по кабелю (оптика и витая пара внутри дома), а еще всякий спутниковый, skylink например). Вот, со следующего месяца у нас вводят долгожданные безлимиты - 512 кбит за 1300 рублей в месяц - еще недавно о таком и мечтать не мог. Так что, если судить с моей колокольни - все совсем даже не плохо.
-
По-моему от пиратства ни одна защита не может дать 100% гарантии. Оно было и будет, какие-бы схемы не изобретались. А вот минусы для честных пользователей - будут расти в пропорциональной зависимости от сложности защиты :) Имхо, нужно сделать классическую защиту с серийником и смирится с тем что ее все равно будут крякать. Майкрософту вроде как это денег зарабатывать не мешает :) У пиратства есть и плюсы - это лучшая реклама софту. А учитывая что программа недорогая и то что наблюдаются положительные перемены в сознании относительно оплаты лицензии - многие попробывав пиратку, захотят купить лицензию. Я уверен что хорошему ПО - не будет мешать наличие пиратства: за хорошие вещи всегда не жалко денег. Ну а если софт плохой - его и крякать никто не захочет :)
-
Спасибо, видимо идея пока достаточно сырая, но рациональное зерно в ней конечно же имеется, думаю первая версия будет с обыкновенной активацией, а дальше я посмотрю уже насколько продвинутся разработки этой системы защиты.
-
А что хоть за программа? Можно ли ознакомиться с демкой, тк заинтересовала фраза
> Это отпадает, так как зачастую сразу после опробования демо > пользователю захочется мгновенно её купить,
)
-
есть вариант с привязкой к каким-либо реквизитам пользователя, если прога для юр. лиц, к примеру, и при этом в выдаваемых ею печатных формах/файлах присутствуют реквизиты предприятия или какая-то их часть. тогад можно рассылать ключик.
-
Кстати, бывают в мире динамические IP, если кто не в курсе.
|