Я хотел бы распространять приложение, но иметь лицензионный ключ, который они могут ввести для разблокировки. Что является хорошим алгоритмом для создания краткого ключа, который содержит информацию о том, какую версию они приобрели, а также дополнительные вещи, такие как продолжительность лицензии и т.д.
Я понимаю, что эта защита может быть взломана, но честные люди честны. Я могу или не могу выполнять онлайн-активацию, но в основном я заинтересован в том, чтобы сгенерировать эти ключи.
Мы все видели эту ситуацию, какой алгоритм работает лучше всего? Должен ли я запрашивать текстовое имя пользователя и использовать его для создания уникального ключа продукта на основе собственной информации?
Есть ли система, которая может быть использована для создания почти невозможного для создания действительного ключа?
Возможно, ситуация с открытым/закрытым ключом для шифрования ключей, где только у производителя есть закрытый ключ, и данные могут быть проверены открытым ключом, но открытый ключ не может быть захвачен для создания допустимых ключей.
Поскольку это ключ продукта, было бы здорово, если бы оно было довольно коротким, 64 символа или, может быть, 128 макс, но чем короче, тем лучше, 32 или менее было бы здорово.