API
Licensing API — Machine-Bound Software Licenses
A REST API that issues and validates AES-encrypted, machine-bindable license keys.
- CATEGORY
- API
- STACK
- ASP.NET Core 6
- EF Core
- Quartz.NET
- AES
- Swagger
- SQL Server
- NOTES
- AES · machine-bound · rate limited
- Desktop productlicense key
- Licensing APIASP.NET Core 6 · AES · rate limiting
- License recordsSQL Server · EF Core
01Problem
The company's desktop products shipped without license protection; there was no central system to prevent copying or manage the license lifecycle (issue / validate / renew).
02Solution
With ASP.NET Core 6 I built a REST API that encrypts license keys with AES (Rijndael + Rfc2898DeriveBytes), binds them to a machine on first activation and rejects mismatched machines.
03Technical Details
- MachineBound / KeyOnly license types, concurrent-activation detection
- Heartbeat reduced to a “last-seen stamp” (client period 5 min → 24 h)
- Endpoint protection with AspNetCoreRateLimit
- Scheduled maintenance jobs via Quartz.NET, Swagger documentation
- Tax-ID validation and audit logging