Deactivating a license and moving it to a new machine: receipts, offline proofs, and transfer limits
DEV Community
Deactivating a license and moving it to a new machine: receipts, offline proofs, and transfer limits
Freeing a seat sounds like the easy half of node-locking — the customer clicks "deactivate this device" and the seat is available again. But a deactivation is a claim the client makes about its own state, and the client is the one party you cannot trust. Online, the problem is ordering and retries: release on the server before or after wiping locally, and what happens when one of the two fails. Offline, the problem is proof: a machine with no network has to hand the customer something that convinces the server a seat was really given up. And for dead machines — the laptop that fell in a lake — the problem is abuse: every forced release is a chance to multiply seats. This post reads the Keyright SDK and server policy for all three: the idempotent online release, the HMAC deactivation receipt bound to the activation''s instance secret, why the lease TTL bounds what a lying client can gain, and the transfer cooldown and rolling limits that keep "I lost my machine" from becoming a seat generator.
0 comments
No comments yet.