Как добавить лицензирование в приложение Ubuntu?

Я занимаюсь разработкой коммерческого приложения для Ubuntu Software Center. Поскольку оно является коммерческим, я не хочу, чтобы пользователи могли просто скопировать / загрузить приложение из другого места и поместить его в ПК, не покупая его в первую очередь. Это привело меня на страницу с лицензионным ключом на Ubuntu.com.

Как видите, описание слишком простое. Существуют ли какие-либо учебные пособия или руководства, в которых подробно описывается наилучшая практика установки лицензий на программное обеспечение в Ubuntu?

2
задан 25 January 2013 в 18:50

2 ответа

Для начала, лицензирование / drm не предотвращают пиратство. Если кто-то не уважает ваш IP, он найдет способ обойти ваш drm. К сожалению, это мир, в котором мы живем сегодня.

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

У нас есть разработчики, которые используют его для отправки по электронной почте ключа, который должен установить пользователь, и у нас есть разработчики, использующие его для загрузки ключа в определенное место при установке / покупке приложения. Некоторые требуют ключ для любого использования приложения (приложение не функционирует без ключа), а некоторые допускают ограниченное использование приложения без ключа и полное использование с ключом.

0
ответ дан 25 January 2013 в 18:50

Похоже, вы просили систему DRM. Лицензирование обычно означает «описание того, какие права имеет конечный пользователь».

Как указал Zoopster, не существует стандартного способа реализации такой системы. Более того, нет надежного способа. Даже крупнейшие коммерческие компании рано или поздно видят, что их программное обеспечение «взломано».

Кажется, это не рекомендуется , но если вам все еще нужна система DRM, разработка вашей собственной системы DRM не должна быть сложной, если у вас есть базовое понимание веб-приложений.

Пример

У вас может быть очень простая база данных с «ключами» (обычно называемыми серийными ключами, ключами активации и т. Д.).

  • Каждый раз, когда вы «продаете» копию, генерируется случайный ключ и добавляется в базу данных. Сгенерированный ключ также передается (например, по электронной почте) пользователю.
  • Затем пользователь вводит этот ключ во время установки или первого использования приложения.
  • Ваш установщик / приложение отправляет этот ключ в службу проверки ключей, и служба «отвечает» положительным ответом, позволяя установщику / приложению продолжить работу.
  • Если проверка прошла успешно, вы можете удалить ключ из базы данных, чтобы предотвратить его повторное использование. Альтернативное решение - разрешить несколько установок с одним ключом (например, использовать «счетчик» для каждого ключа).

Реализация

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

И так как вы, похоже, заинтересованы в использовании Ubuntu Software Center, вам нужно сосредоточиться на «проверке при первом запуске», потому что ваше приложение будет распространяться в виде пакета .deb (то есть ваше приложение устанавливается менеджером пакетов, а не вашим собственным установщиком).

0
ответ дан 25 January 2013 в 18:50

Другие вопросы по тегам:

Похожие вопросы: