Лучший способ генерировать коды активации для программного обеспечения?

StackOverflow https://stackoverflow.com/questions/1336941

  •  20-09-2019
  •  | 
  •  

Вопрос

Каков хороший способ случайного генерирования некоторых, которые нельзя быть очень, до-допуски, сгенерированные коды активации для использования для активации программного обеспечения? Я делаю систему автоматического заполнения для веб-приложения.

Я использую C#.

Это было полезно?

Решение

Другие советы

Это зависит от ваших целей. GUID прост в создании, но это боль, если пользователь должен ввести его вручную. Это нормально, если активация происходит (скажем), нажимая URL -адрес, указанный в электронной почте, или если вы можете ожидать, что пользователь скопирует и вставьте значение из электронной почты активации.

В других случаях (например, программное обеспечение, заправленное с переворачиванием, при этом код активации физически печатается на упаковке), пользователь будет вручную вводить код. В этом случае вам лучше использовать метод, похожий на то, что используют Microsoft и Blizzard: генерируйте код, состоящий из пяти групп из пяти случайных буквенно -цифровых символов (пропустите гласные, если вы хотите устранить риск, что код активации будет содержит что -то вроде 4shit) и проверяйте каждый код, сгенерированный по основному списку для дубликатов. (Хотя я думаю, что шансы даже 100 000 последовательности, извлеченной из {1, 2, ... 34^26 - 1}, содержащей дубликат, довольно маленькие. Трудно сказать наверняка, потому что единственный способ я знаю расчет это переполняет двойник.)

Guid.newGuid (). ToString ()

Если вы не возражаете против длины 36 персонажа.

Вы, вероятно, должны просто использовать GUID

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top