Я делаю сервер активации, который позволит пользователям активировать свое программное обеспечение. Проблема в том, что они владеют открытым ключом. Для метода проверки необходим открытый ключ для проверки подписи файла лицензии. Меня беспокоит то, что кто-то может сгенерировать свой собственный файл лицензии, используя два ключа (открытый и закрытый), а затем изменить открытый ключ на клиенте, что подделает его текущую лицензию.
Есть ли способ избежать этого? Где должен храниться открытый ключ? Необходимо учитывать, что проверка выполняется на клиенте, а подпись создается на сервере.
Спасибо.