Подтвердить что ты не робот

Как защитить от копирования приложение Java?

Я хочу продать свое приложение Java с помощью PayPal. Когда платеж получен, клиент отправляет одноразовую ссылку для загрузки в мое приложение.

Мой вопрос: как я могу запретить людям отправлять файл .jar своим друзьям/загружать его в Интернете?

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

Может быть, какой-то cd-ключ сделает трюк? Есть ли какие-либо ресурсы cd-key для Java там? Или я должен построить собственный алгоритм? Здесь возникает еще одна проблема, обратная инженерия.

Пожалуйста, помогите мне решить эту проблему:)

4b9b3361

Ответ 1

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

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

Ответ 2

На самом деле существует ряд решений по управлению лицензиями, которые могут помочь, но проблема REAL заключается в том, что все они могут быть взломаны. Я лично пробовал самые дорогие для самых дешевых. Наконец, я перевернул свой собственный, и каждый раз, когда запускается программное обеспечение, я проверяю детали программного обеспечения (mac id и т.д.) На записанные данные на моем сервере. Поскольку мое программное обеспечение тесно связано с Интернетом, все в порядке, но я уверен, что он будет взломан на один из этих дней.

То, что вам, вероятно, нужно, это регулярно полировать Интернет и находить, где ваше программное обеспечение пиратское, вопреки распространенному мнению, вы можете фактически остановить их в большинстве случаев. Просто подайте DMCA на загружающий веб-сайт (большинство из них будут соответствовать), и вы сможете удалить свое программное обеспечение примерно в 80% случаев. Я сделал и испытал это на своем программном обеспечении. Некоторые люди не удаляют, но я обнаружил, что за 1,5 года, которые я делал, мои продажи улучшились.

Я также пользуюсь услугой - http://spotpiracy.com, которая помогает мне находить эти ссылки помимо моих собственных исследований вручную (у меня есть парень, посвященный к этому).:)

Ответ 3

У каждого есть свое мнение по этому вопросу, поэтому ожидайте много разных советов. Здесь я беру на себя:

  • 1. Обфускайте свой код (рекомендуется proguard)
  • 2. Предлагайте БЕСПЛАТНУЮ версию с полными возможностями для пробного периода
  • 3. Используйте процедуру серийного номера, основанную на регистрации электронной почты пользователей или другой уникальной информации

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

Ответ 5

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

Я бы сказал, что вы посмотрите, как это делает Atlassian. Они продают программное обеспечение Java, и, по-видимому, делают все хорошо. http://www.atlassian.com/ Попробуйте загрузить, например. JIRA и играть с установкой. Это даст вам хорошее представление о том, как работает их схема лицензирования, и о том, что пользователи могут разумно ожидать от профессионального программного обеспечения.

Ответ 6

В мои старые дни С++ я сталкиваюсь с пиратством, используя защиту кода MAC-адреса, очень красиво и на самом деле никакое тело не украло мое программное обеспечение, чтобы защитить защиту от MAC-адресов, потому что я всегда заставляю ОС перечитывать реальный mac, избегая mac переопределяет. Это было на С++-кодировании, имеющем прямой доступ к локальным ресурсам.

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

Я думаю, что в качестве резюме невозможно защитить Java-программы от пиратства. я не знаю, как старые золотые дни С++:)