Мы часто используем различные инструменты разработки,напримерIntelliJ IDEA
、Navicat
、Visual Studio、G
olan и т. д., все эти программы имеют одну особенность: они взимают плату. Как правило, нам необходимо приобрести лицензию, а затем ввести эту лицензию в программное обеспечение, чтобы использовать его. Вот вопрос: Как он авторизует ПО в оффлайне?
Лицензия должна содержать следующее основное содержание:
цифровая подпись
:Технология борьбы с подделками,способен пройтиоткрытый ключ
Данные, подлежащие проверке, должны бытьзакрытый ключ
выдан владельцем。Поэтому, если толькозакрытый ключ Уступи дорогу(Обычно размещается на сервере),В противном случае никто не сможет его подделать.
Генерация лицензий выполняется сервером с использованием асимметричного шифрования.закрытый ключ
для разрешенияцифровая подпись
,Клиент использует соответствующийоткрытый ключ
для разрешенияцифровая подписьпроверять,Проверка проходит, а затем проверяется лицензионный контент.
Применить временную метку
Приложение имеет метку времени выпуска. Если разрешенное время лицензии меньше этой метки времени, его нельзя использовать, даже если системное время больше (во избежание изменения системного времени). Это ограничивает возможность использования новых версий приложений с истекшим сроком действия. лицензии.
Вышеописанное является стандартной практикой авторизации лицензий на программное обеспечение. Конечно, есть и относительно низкоуровневые методы. Общая идея такова:
Программа 1.NET Winform считывает CPU и MAC-адреса онлайн-устройств один за другим и даже считывает информацию о материнской плате.
2. Проверьте в программе, принадлежит ли прочитанная выше информация текущему устройству.
здесь,без всякого презренияWсообщить разработчикузначение,Многие специалисты в области автоматизации используют Winform для разработки.,Я просто думаю, что этот подход действительно немного бесхитростный.
Ссылка на часть контента: https://juejin.cn/post/7140328102709690398.