The CLV1 protocol is now publicRead the spec

Utility 02 / 05

Know every machineEven after a reinstall

Fingerprints part by part, clear move rules, seats returned when a machine goes quiet

Devices & HWIDMachines known part by part

Move rules

defaults · set per plan

Moves
2 per 30 days
Wait between moves
24 hours
Silent machine
seat freed after 72 hours
Who may move
you and the buyer

TPM keys · server ready, native SDKs next

How it works

  1. 01

    The machine introduces itself

    The SDK sends each component, not one single hash

  2. 02

    The server compares parts

    A little drift is the same machine, a lot is another one, with the reason

  3. 03

    Moves under rules

    Buyers free a machine within the limits you set

Everything in it

  • Matched part by partNew disk, new card, fresh Windows, same seat
  • Refusals with reasonsThe parts that changed are written down, allow it again in one click
  • Move rulesMoves per month, the wait between them, who may move
  • Seats come backA machine silent too long gives its seat to the next one
  • Device blocksBlock a machine once, it is blocked across the app
  • Hardware keysThe server accepts TPM keys, native SDKs are next

In code

device.ts
const clavis = new ClavisClient({
  appId,
  appPublicKey,
  device: await describeThisMachine(), // each part, not one hash
});

await clavis.activate(key); // a new disk or a fresh Windows keeps the seat

// Moving to another PC? Free this seat first, within the move rules
const { remaining } = await clavis.transfer();

Which plan has it

Basic
Up to 3 machines per key, every move rule
Premium
Up to 100 machines per key for studios and labs
Compare plans

Read more in Protect Hub

Your softwareYour keys

Next utilityProtect 24/7

How can we help?

Frequently asked

What is ClavisAUH?

A licensing and authentication service for desktop software: license keys, device binding, end-user sign-in and signed responses. All run from one dashboard

Why can't a cracker fake your server?

The SDK only trusts answers signed with your app's private key. That key never leaves our servers, so a fake server can't sign and gets rejected

What ends up in my binary?

Your app id and public key. Nothing secret, because each device makes its own key pair on first run

Does it work offline?

Yes. Every plan gets a signed offline token for 7 days, and your app checks it locally. Premium lets you choose how long. A revoked license can keep working offline for that time, unless Online-Only Mode is on

Which languages are supported?

JavaScript and TypeScript today. C++, C# and Python are next, on the same open protocol

Is Basic really free?

Yes. No time limit, no card. Move to Premium when you need more

Get in touch