Чего я пытаюсь достичь:
- Привязать каждый лицензионный ключ к определенному компьютеру с помощью идентификатора оборудования (HWID).
- Проверить лицензии на стороне сервера, чтобы проверку нельзя было исправить на стороне клиента.
- Handle крайние случаи, такие как обновление оборудования (поток сброса HWID).
- Немедленно внесите в черный список скомпрометированные ключи без нового развертывания.
Текущий код C#:
Код: Выделить всё
public async Task VerifyLicense(string licenseKey, string hwid)
{
var response = await _httpClient.PostAsJsonAsync("/licenses/verify", new {
key = licenseKey,
hwid = hwid,
sessionid = _sessionId
});
return response.IsSuccessStatusCode;
}
- Является ли сочетание ЦП + материнской платы + MAC правильным подходом для стабильного HWID или существует более надежный метод?
- Как мне следует обрабатывать постепенное ухудшение, если сервер проверки временно недоступен?
- Какой правильный шаблон для периодического сеанса повторная проверка во время длительного сеанса приложения?
Подробнее здесь: https://stackoverflow.com/questions/798 ... ng-in-c-sh