Каков наилучший способ остановить копирование и использование приложения без разрешения владельца? - PullRequest
9 голосов
/ 22 января 2009

Каков наилучший способ избежать копирования и использования приложения без ведома владельца?

Есть ли способ отследить использование? Это означает, что приложение периодически связывается с достаточным количеством информации, чтобы мы могли знать, где оно находится и является ли оно законным. Далее, конечно, закройте его, если это не законно.

Ответы [ 7 ]

23 голосов
/ 22 января 2009

Программное обеспечение, которое «звонит домой», будет быстро исключено подавляющим большинством ваших пользователей. Просто лицензируйте его соответствующим образом и продавайте.

Люди, которые профессионально используют ваше программное обеспечение, либо заплатят за него, либо не будут его использовать. Корпорации, как правило, осуждают потенциальные судебные процессы.

Люди, которые хотят использовать ваше программное обеспечение без оплаты за него, будут продолжать это делать, несмотря на все ваши усилия по противодействию им. Как только программное обеспечение окажется в их руках, оно станет вашим. Не злая пользователей, ваш единственный выход является легальным.

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

16 голосов
/ 22 января 2009

Не делай этого, не пытайся, даже не думай об этом.

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

Люди, которые собираются пиратствовать на вашем программном обеспечении, сделают это, и все эти «функции безопасности», которые вы встраиваете, скорее всего, в конечном итоге только причинят неудобства вашим истинным сторонникам: людям, которые законно приобрели ваше программное обеспечение. Эти драконовские схемы DRM / борьбы с пиратством только вызывают возмущение среди пользователей программного обеспечения.

14 голосов
/ 18 сентября 2009

Аппаратные ключи - лучший способ, если вы действительно обеспокоены пиратским ИМО. Посмотрите на большие промышленные пакеты CAD / CAM стоимостью в тысячи или десятки тысяч или программное обеспечение для производства AV / Music, они практически все имеют защиту от ключей. Ключи можно эмулировать или переворачивать, но не без значительных затрат времени, гораздо больше, чем просто замена нескольких JE на JNE в вашей сборке.

Звонить по телефону - это не то, что нужно , если вы не предоставляете услугу, для которой требуется подписка и постоянные обновления (например, антивирусные продукты) в рамках вашей бизнес-модели. Вы должны немного уважать своих пользователей и их конфиденциальность. У вас могут быть совершенно невинные намерения, но что, если суд обязал вашу компанию передать эту информацию (как правительство США поступает с Google и его поисковыми терминами) - вы бы могли / могли бы бороться с этим? Что если вы когда-нибудь в будущем продали свою компанию, и новые владельцы решили продать всю эту историческую информацию маркетинговой компании? Конфиденциальность заключается не только в том, чтобы доверять компании не злоупотреблять вашими данными, но и в том, что она старается защитить ваши данные. Что довольно далеко в списке приоритетов для большинства компаний. Таким образом, в сущности, мониторинг пользователей - не очень хороший путь.

2 голосов
/ 18 сентября 2009

Есть несколько подходов, которые вы можете использовать, но есть три, которые будут гораздо более эффективными, чем любой другой.

A. Не создавай это.

Программное обеспечение, которое не существует, никогда не страдает от несанкционированного использования.

B. Не отпускай это.

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

С. Дайте всем разрешение на его использование.

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

2 голосов
/ 22 января 2009

Лучший (и в значительной степени единственный) способ надежно предотвратить пиратство - это иметь клиент-серверное приложение, а не автономное, где нетривиальная часть работы выполняется сервером, и пользователям необходимо зарегистрироваться. Тогда вы сможете хотя бы обнаружить и заблокировать одновременное использование одной и той же учетной записи.

1 голос
/ 22 января 2009

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

0 голосов
/ 18 сентября 2009

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

...