Каков наилучший способ остановить копирование и использование приложения без разрешения владельца?
Каков наилучший способ избежать копирования и использования приложения без ведома владельца?
Есть ли способ отследить использование? Это означает, что приложение периодически связывается с достаточным количеством информации, чтобы мы могли знать, где оно находится и является ли оно законным. Следующая вещь, конечно, выключи, если это не законно.
8 ответов
Аппаратные ключи - лучший способ, если вы действительно обеспокоены пиратским ИМО. Посмотрите на большие промышленные пакеты CAD/CAM стоимостью в тысячи или десятки тысяч или программное обеспечение для производства AV/Music, они практически все имеют защиту от ключей. Ключи можно эмулировать или переворачивать, но не без значительных затрат времени, гораздо больше, чем просто замена нескольких JE на JNE в вашей сборке.
Звонить домой не стоит, если вы не предоставляете услугу, для которой требуется подписка и постоянные обновления (например, антивирусные продукты) в рамках вашей бизнес-модели. Вы должны немного уважать своих пользователей и их конфиденциальность. У вас могут быть совершенно невинные намерения, но что, если суд обязал вашу компанию передать эту информацию (как правительство США делает с Google и его поисковыми терминами) - вы бы могли / могли бы бороться с этим? Что если вы когда-нибудь в будущем продали свою компанию, и новые владельцы решили продать всю эту историческую информацию маркетинговой компании? Конфиденциальность заключается не только в том, чтобы доверять компании не злоупотреблять вашими данными, но и в том, что она старается защитить ваши данные. Что довольно далеко в списке приоритетов для большинства компаний. Таким образом, в сущности, мониторинг пользователей не очень хороший путь.
Программное обеспечение, которое "звонит домой", будет быстро исключено подавляющим большинством ваших пользователей. Просто лицензируйте это соответственно и продайте это.
Люди, которые используют ваше программное обеспечение профессионально, либо заплатят за него, либо не будут его использовать. Корпорации, как правило, недовольны потенциальными судебными исками.
Люди, которые хотят использовать ваше программное обеспечение без оплаты за него, будут продолжать это делать, несмотря на все ваши усилия по противодействию им. Как только программное обеспечение окажется в их руках, оно станет вашим. Не злая пользователей, ваш единственный выход является легальным.
Если ваш продукт по разумным ценам, некоторые люди будут платить за него, а некоторые нет. Это просто то, с чем вам нужно иметь дело заранее, и это должно быть учтено в вашем бизнес-плане.
Не делай этого, не пытайся, даже не думай об этом.
Это битва, которую вы не можете выиграть. Если люди хотят пиратские ваши программы, они будут. Вам будет стыдно за то, что умный реверс-инженер может написать однобайтовое двоичное исправление для подрыва всех ваших схем защиты.
Люди, которые собираются пиратствовать на вашем программном обеспечении, сделают это, и все эти "функции безопасности", которые вы встроите, скорее всего, в конечном итоге приведут к неудобствам только для ваших истинных сторонников: людей, которые законно приобрели ваше программное обеспечение. Эти драконовские схемы DRM / борьбы с пиратством вызывают недовольство только среди пользователей программного обеспечения.
Лучший (и в значительной степени единственный) способ надежно предотвратить пиратство - это иметь клиент-серверное приложение вместо отдельного, где нетривиальная часть работы выполняется сервером, а пользователи должны зарегистрироваться. Тогда вы сможете хотя бы обнаружить и заблокировать одновременное использование одной и той же учетной записи.
Есть несколько подходов, которые вы могли бы использовать, но есть три, которые будут гораздо более эффективными, чем любой другой.
А. Не создавайте это.
Программное обеспечение, которое не существует, никогда не страдает от несанкционированного использования.
Б. Не отпускай это.
Если у вас есть единственная копия, и вы сохраняете ее таким образом, то очень высоки шансы, что не будет никакого несанкционированного использования.
C. Дайте всем разрешение на его использование.
Если вы не хотите, чтобы кто-либо использовал его без разрешения, вы можете дать разрешение всем, и не будет посторонних пользователей.
Есть возможность отслеживать использование. Вы можете сделать это, отправив по телефону свой инструмент домой и отправив необходимую информацию. Проблема в том, что, во-первых, никому не нравится программное обеспечение, которое звонит домой с этой целью, а во-вторых, с помощью простого шлюза уровня приложения, вы можете заблокировать приложение, чтобы позвонить домой! То, что вы описываете в своем вопросе, является распространенной проблемой распространителей программного обеспечения, и ее нелегко решить!
Я еще не упомянул еще одну вещь: вы можете добавить множество настроек в файл конфигурации приложений и начать со смешных значений по умолчанию. Затем выполните установку и настройку лично, чтобы никто, кроме вас, не смог понять, как все должно быть установлено. Это может быть мэром для людей, которые просто пробуют, достаточно ли копии. (Обязательно добавьте настройки, которые зависят от всевозможных системных настроек, таких как DLL-версии, связанные с версией ОС, которые должны быть загружены, и т. Д.). Не очень удобно, хотя;-)
Мы принимаем лицензию, привязанную к компонентному подходу. При этом компонент является либо IP/MAC-адресом, либо идентификатором компьютера. Таким образом, приложение будет работать только в том случае, если ключ и компонент действительны. Да, приложение можно скопировать, но оно просто не будет работать без нового ключа, так как компонент будет изменен. Как правило, мы используем собственный сгенерированный идентификатор машины и собственный кейген, который включает дополнительный срок действия для демонстрационных периодов.
Пользователи вынуждены звонить домой, чтобы лицензировать свое программное обеспечение у нас. Учитывая характер и ценность, связанные с нашими продуктами, этот подход хорошо работает для всех заинтересованных сторон.