Я поддерживаю службу WCF. Поскольку было решено разместить версию службы на общедоступном сервере, в демонстрационных / тестовых целях необходимо добавить некоторую безопасность, касающуюся того, кто может получить доступ к функциям. Итак, я подумал о добавлении ключа к каждой функции, которую клиент должен предоставить для проверки своего доступа.
Но поскольку программное обеспечение является лицензионным (на определенный период времени) и устанавливается локально на сервере клиента при покупке, я подумал, что элегантным решением может быть вставка даты истечения срока действия в ключ, поэтому я не Не нужно класть какой-нибудь лицензионный файл или что-то в этом роде.
Я думаю о том, чтобы указать определенную дату (срок годности), я мог бы сгенерировать короткую строку (например, 8 символов, букв и цифр), которая кажется пользователю случайной и которую он не может изменить на действительную, но которую я может расшифровать и получить дату, когда он был использован для его генерации.
Я думал о шифровании простой даты, но алгоритмы, которые я знаю, генерируют недружелюбные для суперпользователей результаты.
Я ценю любые предложения, большое спасибо!





Вы можете попробовать изменить дату на одно число, например количество дней с 4 июля 2017 года, или какую-нибудь полуслучайную дату начала. Если это слишком прозрачно, используйте формат с сохранением шифрования некоторого типа, чтобы зашифровать счетчик дней до того же количества цифр, используя стандартный ключ.