The free license key system
for .NET, with HWID locking
Add licence keys, hardware-ID locking, and an instant remote kill-switch to a C# or VB.NET app with one NuGet package — free, unlimited, forever.
The part of a paid app nobody wants to build
Every piece of paid desktop software needs the same plumbing: issue a key, check it on launch, tie it to the buyer's machine so it isn't shared, and cut off access when a refund or a chargeback lands. Writing that yourself means a server, a database, a crypto scheme, and a support inbox for hardware resets. PWF Auth is that plumbing as a hosted service, with an official .NET package — and it is free at any volume.
Licence check in five lines
This is the whole integration for a C# or VB.NET desktop app. StartHeartbeat is what turns a one-time check into a live session — revoke the key in your dashboard and SessionEnded fires on the user's machine within seconds.
using PWFAuth;
var client = new PwfClient("your-64-char-app-secret");
// Fires when an admin bans, pauses, expires or revokes the key — or the
// server goes unreachable. Sign the user out here.
client.SessionEnded += (sender, e) =>
{
MessageBox.Show(e.Message);
Application.Exit();
};
var login = await client.LoginAsync("XXXXX-XXXXX-XXXXX-XXXXX");
if (!login.Success)
{
MessageBox.Show(login.Message); // safe to show the user
return;
}
client.StartHeartbeat(); // keeps the session alive AND enforces the kill switchWhy developers pick PWF Auth
The reasons teams move over from a paid or limited licensing service.
Every .NET you ship
The PWFAuth package targets netstandard2.0 and net8.0, so .NET Framework 4.6.2+, VB.NET WinForms, WPF, and modern .NET all install the same package. dotnet add package PWFAuth.
HWID, one or many
Bind a licence to a single machine or to several through a max-devices limit, with each device tracked separately. Users request a hardware reset from inside your app; you approve it from the dashboard.
Instant kill-switch
A refund, a chargeback, a leaked key — revoke it and the running client stops within seconds, not at next launch. That is the heartbeat doing its job.
Ship updates too
Publish versioned builds per app and let the client check and download them through the same API, so licensing and updates are one integration instead of two.
From zero to licensed in an afternoon
No server to run, no database to design.
Create a free app
Sign up, create an application, and copy its app secret. No credit card at any point.
Generate keys
Issue keys from the dashboard — day, week, month, or lifetime — or call the API from your own store or bot to issue them on payment.
Add the package
Run dotnet add package PWFAuth, paste the snippet above, and set your max-devices limit. The API reference covers everything else.
License keys in .NET — FAQ
What developers ask before wiring this in.
Try the free alternative
Create a free account, generate your first keys, and integrate in an afternoon.
Also compare: PWF Auth vs KeyAuth · PWF Auth vs Cryptolens · PWF Auth vs Keygen