Работа с недобросовестным заказчиком.

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Работа с недобросовестным заказчиком.

Сообщение Вячик13 » 04.07.2011 09:12:21

Вынужден работать с недобросовестным заказчиком. Хотелось бы иметь гарантии, что со мной расчитаются. Поделитесь, пожалуйста, методами, пользуясь которыми в Lazaruse можно установить какую-нибудь защиту. Желательно, чтобы её можно было снять дистанционно, передав пользователю соответствующий код.
Вячик13
незнакомец
 
Сообщения: 5
Зарегистрирован: 10.06.2011 16:32:08

Re: Работа с недобросовестным заказчиком.

Сообщение Nik » 04.07.2011 09:21:37

Методов много. Главное, встроить механизм ввод кода (причём сверять лучше хэш, чтобы сам код в hexр-редакторе не светился), без которого программа нормально не работает (или работает с ограничениями). Например как-то так:

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

2. Можно встроить в программу механизм самоуничтожения через определённый срок (скажем, оговорённый вами и заказчиком срок оплаты + пара дней).

3. Как вариант, не полное самоуничтожение, а блокировка (вывод при старте сообщения о необходимости оплаты и окна ввода кода). Проверено, работает ;)
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: Работа с недобросовестным заказчиком.

Сообщение dunin » 04.07.2011 09:37:47

Вариант первый: покупаете лицензию на кокой-нибудь хороший криптор с опцией выдачи ключей, например ASProtect.
Вариант второй: защищаете программу самостоятельно. Вариантов масса. От квалифицированного хакера не спасет (впрочем как и в первом варианте), но если работаешь с одним заказчиком, то квалифицированному хакеру ваша программа не сдалась...

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

Вариантов тут масса - все зависит от фантазии и квалификации программиста. Это один из вариантов (сам использовал), на самом деле их тоже великое множество.

Понятное дело, что программа сразу поставляется с готовым ключом. И при отсутствии оплаты после определенного срока ключ заново не выдается. При наличии полного расчета можно выдать вперед на сто лет.
:)

Добавлено спустя 2 минуты 33 секунды:
Nik писал(а):...
2. Можно встроить в программу механизм самоуничтожения через определённый срок (скажем, оговорённый вами и заказчиком срок оплаты + пара дней).
...

Нельзя. Заказчик может и в суд подать при уничтожении (невозможности использования) каких-то там очень нужных ему данных. Прецеденты были. Чем закончилось не знаю. Не со мной (тьфу-тьфу), где-то в инете натыкался.
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Работа с недобросовестным заказчиком.

Сообщение minoshi » 04.07.2011 09:48:51

вариант "demo-версия -> оплата -> полная версия".

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

Ну и еще один момент: если продукт - это программа, предназначенная для работы занимающей много времени, то достаточно эффективно действует периодически всплывающее окно с напоминанием о том, что это все-таки демо и надо платить. Для утилит типа "запустил-отработала-закрыл" - этот момент не актуален.

Ну и как вариант садизма - ограничение работы самой программы по времени с последующим закрытием БЕЗ сохранения. :)
Аватара пользователя
minoshi
постоялец
 
Сообщения: 279
Зарегистрирован: 17.05.2008 21:23:38

Re: Работа с недобросовестным заказчиком.

Сообщение dunin » 04.07.2011 09:56:42

minoshi писал(а):...встречал пару раз заказчиков, которые надеялись после получения demo-версии просто ее взломать. Видимо начитались про дизассембреры и проч... я долго смеялся и поднял цену...

Самая эффективная защита от хакера - стоимость взлома (затраченные усилия) выше стоимости программы. Взлом теряет смысл. :wink:
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Работа с недобросовестным заказчиком.

Сообщение kipar » 04.07.2011 11:29:34

dunin писал(а):Нельзя. Заказчик может и в суд подать при уничтожении (невозможности использования) каких-то там очень нужных ему данных. Прецеденты были. Чем закончилось не знаю. Не со мной (тьфу-тьфу), где-то в инете натыкался.

Надо блокировать работу самой программы, а пользовательские данные не трогать.
kipar
новенький
 
Сообщения: 78
Зарегистрирован: 04.03.2010 12:15:54

Re: Работа с недобросовестным заказчиком.

Сообщение GrayEddy » 04.07.2011 11:55:00

Смотрите в сторону OnGuard для Lazarus. Здоровый пакет для защиты, первоначально разработан компанией TurboPower для Delphi, позднее стал оперсоурснным и перенесен на Lazarus.
Примерно ококло 10 схем защиты (сеть, триал, генерация серийника, ключей и кодов, регистрация, защита экзешника :), и.т.д. ) + примеры.
GrayEddy
постоялец
 
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Re: Работа с недобросовестным заказчиком.

Сообщение Вячик13 » 04.07.2011 12:43:17

По поводу OnGuard для Lazarus. Если можно, пожалуйста, ссылочку.
Вячик13
незнакомец
 
Сообщения: 5
Зарегистрирован: 10.06.2011 16:32:08

Re: Работа с недобросовестным заказчиком.

Сообщение GrayEddy » 04.07.2011 13:08:05

http://sourceforge.net/projects/lazarus-ccr/files/OnGuard/
Лучше взять из SVN

Есть ссылки на OnGuard на wiki Lazarus, но они битые, официальный движок сайта http://www.lazarus.freepascal.org недавно поменялся, вследствие чего сломали ссылки.

http://lazarus-ccr.svn.sourceforge.net/viewvc/lazarus-ccr/components/onguard/ - просмотр SVN через браузер.
GrayEddy
постоялец
 
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Re: Работа с недобросовестным заказчиком.

Сообщение dunin » 04.07.2011 13:31:02

GrayEddy писал(а):Смотрите в сторону OnGuard для Lazarus. Здоровый пакет для защиты, первоначально разработан компанией TurboPower для Delphi, позднее стал оперсоурснным и перенесен на Lazarus.
Примерно ококло 10 схем защиты (сеть, триал, генерация серийника, ключей и кодов, регистрация, защита экзешника :), и.т.д. ) + примеры.

Встроенный криптор? Зергут, спасибо. Посмотрим. :)
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Работа с недобросовестным заказчиком.

Сообщение Vadim » 04.07.2011 15:35:31

Лучшая защита программы - с десяток хмурых парней типичной сисадминской наружности. :)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Работа с недобросовестным заказчиком.

Сообщение vada » 05.07.2011 09:45:45

OnGuard вещь классная.
Одна проблема - терморектальным методом взламывается любой шифр меньше чет за сутки. :P
Аватара пользователя
vada
энтузиаст
 
Сообщения: 691
Зарегистрирован: 14.02.2006 13:43:17

Re: Работа с недобросовестным заказчиком.

Сообщение Nik » 05.07.2011 13:28:05

vada писал(а):терморектальным методом взламывается любой шифр меньше чет за сутки. :P


Хорошие специалисты управятся быстрее: http://termorect.narod.ru/ ;)

Извиняюсь за флуд/оффтоп :)
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot] и гости: 18

Рейтинг@Mail.ru