Lizenzen

Lizenzen sind der Kern von LicenseChain. Jede Lizenz stellt eine gültige Erlaubnis für einen Benutzer dar, Ihre Software zu verwenden.

Was sind Lizenzen?

A Lizenz Bei LicenseChain handelt es sich um eine digitale Berechtigung, die einem Benutzer das Recht gewährt, Ihre Software zu nutzen. Jede Lizenz enthält Informationen über den Benutzer, den Plan, den er hat, wann dieser abläuft und auf welche Funktionen er zugreifen kann.

Lizenzen sind kryptografisch sicher und können über unsere API in Echtzeit überprüft werden. Sie unterstützen verschiedene Lizenztypen, darunter unbefristete Lizenzen, abonnementbasierte Lizenzen und Testlizenzen.

Lizenzstruktur

Kerneigenschaften

  • Lizenzschlüssel - Eindeutige Kennung
  • Planen - Lizenzstufe (FREE, PRO, BUSINESS, ENTERPRISE)
  • Verifizierungstyp - Verifizierungsstufe (Basic, Advanced, Enterprise)
  • Status - Aktueller Status (AKTIV, ABGELAUFEN, AUSGESETZT)
  • Ablauf - Wenn die Lizenz abläuft

Benutzerinformationen

  • Lautend auf - Name oder Firma des Kunden
  • E-Mail - E-Mail-Adresse des Kunden
  • Merkmale - Verfügbare Funktionen und Fähigkeiten
  • Metadaten - Benutzerdefinierte Daten und Tags

Lizenztypen

Unbefristete Lizenzen

Einmalige Kauflizenzen, die nie ablaufen. Perfekt für Desktop-Anwendungen.

  • Kein Ablaufdatum
  • Einmalige Zahlung
  • Lebenslanger Zugriff
  • Perfekt für Desktop-Apps

Abonnementlizenzen

Wiederkehrende Lizenzen, die regelmäßig erneuert werden müssen. Ideal für SaaS-Anwendungen.

  • Monatliche/jährliche Verlängerung
  • Automatischer Ablauf
  • Wiederkehrende Abrechnung
  • Perfekt für SaaS-Apps

Testlizenzen

Zeitlich begrenzte Lizenzen für Evaluierungszwecke. Ideal zum Ausprobieren vor dem Kauf.

  • Begrenzte Dauer (7–30 Tage)
  • Voller Funktionszugriff
  • Automatische Konvertierung
  • Perfekt für Demos

Lizenzüberprüfung

Echtzeitüberprüfung

Überprüfen Sie Lizenzen in Echtzeit mit Reaktionszeiten von unter 100 ms. Verwenden POST /v1/licenses/verify mit Körper { "key": "LICENSE-KEY" }. Optional hwuid (oder hardwareId) ermöglicht die Hardwarebindung: Wenn die Lizenz Geräte gebunden hat, muss die bereitgestellte Hwuid übereinstimmen, sonst lautet die Antwort valid: false mit reason: "hardware_id_mismatch".

// License verification example
// Verify license key with client
// Check if license is valid and handle accordingly

Hardwarebindung (HWUID)

Die optionale Hardware-/Gerätebindung (HWUID) beschränkt eine Lizenz auf bestimmte Geräte. Schicken hwuid In POST /v1/licenses/verify (z. B. aus Ihren SDKs getHardwareId()). Wenn die Lizenz noch kein gebundenes Gerät hat, führt die erste erfolgreiche Überprüfung mit einer hwuid eine Erstverwendungsbindung durch. Verwenden POST /v1/licenses/bind-hardware (authentifiziert), um explizit zu binden, und POST /v1/licenses/validate-hardware um Schlüssel + Hardware-ID zu validieren. Alle offiziellen SDKs unterstützen optional hwuid Verifizieren und verwenden Sie HMAC-SHA256 mit konstantem Zeitvergleich für die Überprüfung der Webhook-Signatur.

Lizenzbestätigungstoken (Offline-Verifizierung)

Nach einem Online POST /v1/licenses/verify, kann die Core-API zurückkehren license_token (RS256 JWT), license_token_expires_at, Und license_jwks_uri wenn Signierschlüssel auf der API konfiguriert werden. Bewahren Sie das Token sicher auf und überprüfen Sie seine Signatur mit GET /v1/licenses/jwks, erfordern token_use === "licensechain_license_v1", validieren exp und (wenn Sie Pro-App-Lizenzen ausstellen) das aud entspricht Ihrer App-ID. Aktualisieren Sie, indem Sie vor Ablauf erneut „Verify“ aufrufen. Stufe beeinflusst TTL (lc_vt: einfach / erweitert / benutzerdefiniert). Siehe die Sicherheitsleitfaden für asymmetrische Verifizierung und JWKS-Caching.

Best Practices

Sicherheit

  • Überprüfen Sie die Lizenzen immer auf Ihrem Server, nicht nur auf dem Client
  • Verwenden Sie HTTPS für die gesamte API-Kommunikation
  • Implementieren Sie eine angemessene Ratenbegrenzung, um Missbrauch zu verhindern
  • Protokollieren Sie alle Lizenzüberprüfungsversuche zur Prüfung
  • Verwenden Sie Geräte-Fingerprinting, um die gemeinsame Nutzung von Lizenzen zu verhindern

Leistung

  • Cachen Sie gegebenenfalls die Ergebnisse der Lizenzüberprüfung im Cache
  • Verwenden Sie die Offline-Verifizierung für eine bessere Benutzererfahrung
  • Implementieren Sie die richtige Fehlerbehandlung und Wiederholungslogik
  • Überwachen Sie die API-Nutzung und richten Sie Warnungen ein
  • Verwenden Sie Massenvorgänge für die Verwaltung mehrerer Lizenzen

Benutzererfahrung

  • Stellen Sie klare Fehlermeldungen für ungültige Lizenzen bereit
  • Implementieren Sie eine ordnungsgemäße Verschlechterung bei Netzwerkproblemen
  • Zeigen Sie Lizenzablaufwarnungen an, bevor sie ablaufen
  • Bieten Sie einfache Lizenzverlängerungs- und Upgrade-Pfade
  • Unterstützen Sie mehrere Lizenztypen für verschiedene Anwendungsfälle