"valid": true, "expires_at": "2026-01-01", "features": ["themes", "auto-updates"], "remaining_days": 365
LC-2025-ABCD-1234-XYZZ
function decryptLicense(encoded) const data = Buffer.from(encoded, 'base64'); const iv = data.subarray(0, 12); const tag = data.subarray(12, 28); const ciphertext = data.subarray(28); const decipher = crypto.createDecipheriv(ALGORITHM, SECRET_KEY, iv); decipher.setAuthTag(tag); let decrypted = decipher.update(ciphertext); decrypted += decipher.final(); return JSON.parse(decrypted); Webcatalog License Key
"license_key": "encoded-key", "machine_id": "device-fingerprint" const iv = data.subarray(0
Response:
"license_key": "...", "machine_id": "..." const tag = data.subarray(12
POST /api/v1/license/deactivate Request: