В общем вопрос такой. На чем основывать систему лицензирования ПО?
Помню раньше сталкивался со схемой: Генерируется закрытый сертификат, и на его основе генерируются короткие ключи, которые к нему подходят но между сабой не идентичны по набору. Кто ни будь знает как оно называется?
Помню даже shell script писал для генерирования и верификации, но к сожалению это было давно и форматнул :D
Тогда просто почитайте что такое сертификаты, что такое центр авторизации.
Выдаете клиенту сертификат, который действует в течение определенного времени.
У себя проверяете кто с каким сертификатом к вам подключается, левые сертификаты отбрасываете.
а если на стороне организовать некую базу пользователей в которой будет login и статус true or false, ваша клиентская часть по при старте подключается к серверу смотрит статус логина и если логин не тру говорит мол заплатите.