Мне нужно сгенерировать и проверить ключи продукта и задумывались об использовании системы открытого/закрытого ключа.Ключи для ключей шифрования: шифрование общедоступного и закрытого ключей
сгенерировать наши ключи продукта на основе
- имени клиента (который может быть переменной длиной строки)
- 6 цифр серийного номера.
Было бы хорошо, если ключ продукта будет иметь управляемую длину (16 символов или около того)
Мне нужно шифровать их на базу, а затем distrubute систему дешифрования/проверки. Поскольку наша система написана в управляемом коде (.NET), мы не хотим распространять систему шифрования, а только расшифровку. Мне нужен открытый секретный ключ, кажется, хороший способ сделать это, зашифровать одним ключом, который я храню и распространять другой ключ, необходимый для decrpytion/verification.
Что такое подходящий механизм для выполнения вышеуказанных требований?
ПРИМЕЧАНИЕ: Это не должно остановить пиратство; это уменьшить вероятность того, что начинающие пользователи установят компоненты, которые им не нужны/не разрешены.
Это не дает мне ответа на вопрос, который был «Что такое соответствующий механизм для этого с вышеуказанными требованиями?» –
Как я уже сказал, PKE действительно не соответствует вашим потребностям. Если вы просто хотите прекратить начинающих пользователей, просто скройте выбор установки, если это не позволяет недокументированная опция командной строки. Затем документируйте этот параметр только для тех, кому необходимо установить необходимый компонент. –
Конечно, чтобы избежать исправления, есть такая вещь, как подписание кода. – ErikHeemskerk