Getting started

From a new account to a protected app in six steps.

PWF Auth sells your program safely: every customer gets a licence key, the key is locked to their PC, and the program keeps checking in while it runs, so a key you ban or pause stops working within seconds. This page takes you from a new account to a protected app.

1. Create your account

Open Get access, enter your name, email and a strong password. The panel opens on the Dashboard.

Turn on two-step sign-in straight away in Profile → Security. It protects every key you sell. See Your account & security.

2. Add an application

Go to Applications and press New application. Give it the name of your program and its current version. Each program you sell is one application, with its own keys, sessions and updates.

Already selling with an older build? Choose Use an existing secret and paste the secret that is inside that build, so customers who already have it keep working. Details in Applications.

3. Copy the app secret

On the application card open ⋯ → Copy secret. The secret is 64 characters long. Your program uses it to talk to PWF Auth: every request and every answer is encrypted and signed with keys made from it.

The secret ships inside your program, so treat it like a password: keep it out of public source code and obfuscate release builds.

4. Make keys

Open Licences and press Generate. Pick how many keys, how many machines each key may use and the length: days, weeks, months or lifetime. The clock starts on the customer's first sign-in, not when you make the key. Moving from another system? Use Import to bring the old keys over. See Licences.

5. Add licensing to your program

Install the SDK for your language, sign in with the key and start the heartbeat. For C# and VB.NET:

Terminal
dotnet add package PWFAuth
VB.NET
Dim client As New PwfClient("your-64-character-app-secret")
AddHandler client.SessionEnded, Sub(s, e)
                                    MessageBox.Show(e.Message)
                                    Application.Exit()
                                End Sub

Dim login = Await client.LoginAsync(txtKey.Text.Trim())
If Not login.Success Then
    MessageBox.Show(login.Message)
    Return
End If
client.StartHeartbeat()   ' keeps the session alive and enforces bans

The full walkthrough, with error handling and moving a licence to a new PC, is in C# and VB.NET. For Python, JavaScript, Java, PHP, Dart or C++, the SDK generator writes a ready client file for your app.

6. Watch it work

Run your program and sign in with one of the keys. Within a few seconds the session appears in Sessions and on the dashboard. Now try the kill switch: press End session or ban the key, and your program closes on its next check-in. How protection works explains exactly when.

Something missing or unclear? Tell us on Telegram.