@beduin01
Лицензию на приложение планирую выдавать на год. Будет две версии. Standard и Pro.
Вопрос вот в чём. Как максимально просто чтобы не переусложнять реализовать работу с серийными номерами.
Мысли такие. Сделать какой-то кастомный алгоритм генерации серийников. Хоть тот же base64 с чем-то поверх, чтобы каждый первый его не смог взломать.
В сам серийник вшивать дату начала и конца лицензии. Если пользователь докупает Pro лицензию просто выдавать ему новый серийник.
Вопросы — как разумнее всего хранить информацию о регистрации? Просто куда-то сохранять файл лицензии и перечитывать его каждый раз на предмет не протух ли он? Или тут есть какие-то подводные камни?
Как понимаю любые серверные проверки всё слишком усложнят и толку много не принесут (софт то нишевый и особо пиратить не будут).
Какие вообще есть идеи-подходы? Можете поделиться опытом или какие-то статьи порекомендовать где описывают проблемы и подводные камни?
Решения вопроса 0
Ответы на вопрос 7
@d-stream
Соответственно генерация файла лицензии и подписание — закрытой частью ключа, верификация — открытой (классика)
Кончилась лицензия — сгененрировать и выслать новый файл.
Литература — любая доступная про ассиметричное шифрование
@Griboks
Любые оффлайн методы защиты ломаются за пол дня.
@wataru
Все остальное ломается.
Следующий плохой вариант: делать слепок системной информации, при активации лицензии подписывать его на сервере приватным ключем. Программа открытым ключем проверяет, что файл лицензии корректен (расшифровывает и смотрит, что системная информация совпадает).
@CityCat4
Второй вариант (MS, Autodesk) — постоянная серверная проверка. Запускается программа — обращение к серверу лицензий. Нет записи — прости-прощай, не остановишь жизнь (C) (Это, разумеется, отламывается и вариант для тех, кто не боится прилета)
@maksam07
Самый профитный вариант должен быть через веб-сайт
@Adamos
— бесплатную, которая будет постоянно лезть на ваш сервер и без него неминуемо превращаться в тыкву
— и платную, владельцы которой покупают не только чистую совесть, но и независимость от вас и фактора автобуса
А проверки, которые могут лишить купившего лицензию возможности пользоваться продуктом просто потому, что вы куда-то подевались (сменили работу или страну, не заплатили за сервер) — крайне нехорошо с позиции клиента.
@mayton2019
Типа аппаратное решение задачи в железе. Тогда получается что вы продаете софт + аппаратуру установка которой очень легкая. Но при этом пиратить и копировать такое решение невозможно.