Documentation
HWID locking
HWID locking ties a license to one machine, so a shared or leaked key can't be used on a second device.
A HWID (hardware id) is a stable, per-machine string. Your app computes it and sends it as hwid on /register, /login and /license. LumenAuth only ever stores and compares the hash — the raw machine id never leaves the device un-hashed.
How the lock works
- The first HWID seen for a user is bound to that account.
- Any later login from a different HWID is rejected — the key is stuck to the original device.
- Reset it under Users → Reset HWID in the dashboard so the user can move to a new machine (a support/reset flow you control).
Generating a HWID
Every SDK ships a cross-platform helper so you don't have to write this yourself — it reads a stable id per OS (Windows MachineGuid, Linux /etc/machine-id, macOS IOPlatformUUID) and SHA-256-hashes it:
- JS:
getHwid()· Python:get_hwid()· Rust:hwid()· C#:Hwid.Get()· C++:Client::hwid()
Pass it once when you construct the client and the SDK sends it on every auth call. See the SDKs.