Online
Online binds the licence to the first machine that successfully checks in and requires continued confirmation on the schedule signed into the licence.
Activation flow
Section titled “Activation flow”- Issue the licence without collecting a fingerprint.
- The customer starts your application on the intended machine.
- The SDK sends the licence and that machine’s hashed fingerprint to DYCRYPT, over an authenticated endpoint belonging to your product.
- DYCRYPT answers, and signs its answer with the product’s key.
- The SDK verifies that signature before believing anything in the response.
- The first verified check claims the licence.
- A later check with a different machine fingerprint is refused.
The answer is signed
Section titled “The answer is signed”Online depends entirely on the check being real. If a check could be faked, the licence would never bind and the offline window would reset forever.
So DYCRYPT signs every answer, and the SDK refuses any answer it cannot verify against the product’s public key. A server that does not hold the private key cannot produce one, no matter what it puts in the JSON. Redirecting your issuer hostname therefore blocks checks rather than forging them, and blocked checks end in STALE.
This is on by default and takes no configuration beyond the check credentials shown in the product’s Quick Start Guide. See the licence check API for the exact protocol.
Signed timing rules
Section titled “Signed timing rules”The product defines:
- Check every: how often your application should attempt a check.
- Allowed offline for: the maximum time since its last successful check.
Both values are signed into the licence. SDK configuration may check more often or allow less offline time, but cannot weaken these limits.
If the maximum passes, the SDK returns STALE with valid: false. Show a reconnect message rather than calling the licence corrupt.
Application integration
Section titled “Application integration”Call check() on startup and again on the interval your application owns. The SDK starts no background scheduler for you. A successful result records the check so subsequent local judgments can enforce the signed maximum window.
When a customer replaces hardware, use Release machine in the licence detail. The existing installation stops matching and the next successful check claims the licence. DYCRYPT keeps the move count visible.
A renewed licence answers check() with valid: false and status: "ACTIVE" — the signature has expired but the issuer confirms the licence itself is current. That combination means a new file exists; it does not mean the old one is still good. If the product has turned on self-service fetch, call fetchLatest() at that point instead of asking the customer to install a new file by hand. See the licence check API for the endpoint.
Choose Online when revocation, current installation visibility, and strict machine enforcement — one machine, or the number of seats you sell — outweigh the network dependency.