Licensing
Licensing & activation
How Nebula.NET editions, license keys, seats and activation work.
Nebula.NET comes in two editions: Free and Pro.
Editions
| Free | Pro | |
|---|---|---|
| Identifier renaming | ✓ | ✓ |
| Encrypted strings | up to 2 | unlimited |
| Control-flow methods | up to 2 | unlimited |
| Anti-tamper / anti-debug | — | ✓ |
| Resource encryption | — | ✓ |
| Authenticode signing | — | ✓ |
| Stack-trace de-obfuscation | — | ✓ |
| Support | community | priority email |
Getting a license
Choose a plan on the pricing page and submit the order form. We issue a license key (of the form LIC-…) and email it to you.
Activating
You can activate in the GUI or on the command line.
GUI: open Nebula.NET → Register, paste your key, and confirm.
CLI:
nebula register --key LIC-XXXXXXXXXXXX
nebula license # confirms you're now Pro
Activation is an online step: your machine binds to the license and receives a signed lease. After that, Nebula works offline until the lease renews, so you don’t need a constant connection.
Revocation & build-time verification
Every run (CLI, GUI or the MSBuild integration) resolves your license the same way: an explicit licenseFile, then NEBULA_LICENSE, then the cached activation lease from your last online activation. As the lease nears expiry Nebula re-verifies it online — a valid license renews seamlessly, and a revoked or expired one reverts to the Free edition at the next build.
What this means in practice:
- Build servers need outbound network access around lease-renewal time so the lease can renew (and revocation can be detected). Offline, the cached lease is honored only until it lapses, then the edition drops to Free.
- Revocation isn’t instant — a revoked license keeps working until the cached lease is re-checked online (near its expiry). If you need it enforced sooner, re-run
nebula registeron the machine, which re-checks immediately. - Fail closed for builds: set
requireLicensedEditiontotrueso a missing/revoked/lapsed license (or an Enterprise feature downgraded on a Pro license) fails the build instead of silently producing weakly-obfuscated output.
Seats
A license includes a number of seats — one per machine (developer workstation or build server). When you reach the seat limit, activation on a new machine is refused until a seat is freed.
Moved to a new computer? Contact support with your key and we’ll free the old seat.
Finding your machine id
If support asks for your machine id (for example to free a seat):
nebula machine-id
Troubleshooting
- “Unknown license key” — double-check the key; contact us if it persists.
- “Seat limit reached” — all seats are in use; free one or add seats.
- Still shows Free after activating — make sure
nebula registerreported success, then runnebula license.