Verfahren zur Lizenzvergabe und -Verwaltung
Beschreibung
Die Erfindung bezieht sich auf ein Verfahren zur Vergabe und Verwaltung von Netzwerk-Softwarelizenzen. Das Verfahren ist in Rechnernetzen zur flexiblen Vergabe von Softwarelizenzen einsetzbar.
Beim Vertrieb einer Software wird üblicherweise nicht die Software selbst, sondern eine Softwarelizenz verkauft. Softwarelizenzen stellen eine Nutzungsvereinbarung dar, die den Hersteller insbesondere vor unbefugter Benutzung oder Vervielfältigung schützen sollen.
Bei Schutzmaßnahmen unterscheidet man u. a. zwischen passivem und aktivem Softwareschutz. Passiver Softwareschutz erfolgt, wenn der Hersteller dem Kunden die Software im Vertrauen auf korrekte Verwendung überlässt. Dies ist häufig bei Endkundensoftware der Fall, beispielsweise bei Office-Produkten, Steuerberechnungsprogrammen, Fotoverwaltung oder anderen häufig verwendeten Produkten. Der Begriff „passiv" ist dabei dahingehend zu verstehen, dass keine tatsächlichen Schutzmechanismen die unbefugte Nutzung oder Verbreitung verhindern.
Aktiver Softwareschutz erfolgt, wenn der Hersteller die Software oder den Datenträger mit Mechanismen ausstattet, die eine unbefugte Nutzung oder Verbreitung behindern oder verhindern. Hierzu werden in der Praxis folgende Methoden eingesetzt:
a) zum Schutz von Einzellizenzen:
• Verfallsdatum: die Software erhält dabei nach der Installation eine Laufzeit, innerhalb derer sie mit erweitertem Funktionsumfang funktioniert, nach deren Ablauf die Funktionalität jedoch eingeschränkt oder eingestellt wird. Diese Methode ist bei Shareware- oder Demoversionen verbreitet, um dem Kunden die Möglichkeit zu geben, sich von der Funktionalität einer Software zu überzeu-
gen. Das Freischalten der Software kann später durch Erwerb einer „Vollversion" oder Eingabe eines Freischaltcodes erfolgen.
• Kopierschutz des Datenträgers: der Datenträger wird durch spezielle Mechanismen vor nichtautorisierter Vervielfältigung geschützt. Dieses Verfahren wird häufig bei Endkundensoftware eingesetzt, hat aber den Nachteil, dass die Software durch Verwendung des Originaldatenträgers trotzdem unerlaubt auf anderen Computern installiert werden kann. Zudem werden Kopierschutzmechanismen häufig durch spezielle Mechanismen neutralisiert, so dass das Kopieren in der Praxis trotz Kopierschutz durchgeführt werden kann.
• freier Registrierungsschlüssel: der Kunde erhält dabei einen Code, mit dem die Software freigeschaltet wird. Ohne diesen Code kann eine nichtautorisierte Weitergabe und Nutzung der Software nicht erfolgen. Wird jedoch der Code weitergegeben, ist der Schutz wirkungslos.
• gebundener Registrierungsschlüssel: der Kunde erhält einen Code, der aufgrund individueller Informationen berechnet wurde. Beispiele für dazu verwendete persönliche Daten sind der Name des Benutzers (dann ist die Software benutzergebunden) oder Identifikationsmerkmale des Computers, zum Beispiel die Datenträgernummer der Festplatte, die weltweit eindeutige Mac- ID der Netzwerkkarte oder Kombinationen hiervon (dann ist die Software hardwaregebunden). Die personengebundene Methode ist beispielsweise bei PDA's (z. B. PalmPilot) bereits verbreitet und ein wirksamer Schutz vor ungewünschter Vervielfältigung. Die hardwaregebundene Registrierung hat den Nachteil, dass die Software an einen Computer gebunden ist und ein Computerwechsel (z. B. bei Neukauf) zum Ausfall der Software führt.
• Dongle: der Kunde erhält neben der Software eine Hardware, die mit einem PC verbunden wird und beim Betrieb der Software diese aktiviert. Dies stellt einen weiteren hardwaregebundenen Softwareschutz dar und besitzt den Vorteil, von Computer zu Computer übertragbar zu sein.
um Schutz von Mehrfachlizenzen:
• Lizenz-Server mit fester Zuordnung: Der Kunde erhält ein Kontingent an Softwarelizenzen, die von einem zentralen Lizenzserver verwaltet werden. Die Lizenzen sind bestimmten Rechnern oder Benutzern zugeordnet, so dass nur befugte Installationen aktiviert werden. Beim Starten eines installierten Pro-
gramms entscheidet der Lizenzserver, ob die Software freigeschaltet wird. Auf diese Weise wird das unbefugte Installieren auf anderen Rechnern beziehungsweise die Nutzung durch unautorisierte Personen wirkungsvoll verhindert. Allerdings ist die Bindung an einen bestimmten Rechner häufig hinderlich, beispielsweise bei Austausch eines Computers.
• Lizenz-Server mit flexibler Zuordnung: Der Kunde erhält ein Kontingent an Softwarelizenzen, die von einem zentralen Lizenzserver verwaltet werden. Die Lizenzen sind keinen bestimmten Rechnern zugeordnet, es wird nur die Anzahl der gestarteten Anwendungen überwacht. Die Software kann deshalb innerhalb eines Netzwerkes beliebig oft installiert werden; die Software kann allerdings zur selben Zeit nur so oft gestartet werden, wie Softwarelizenzen verfügbar sind. Der Benutzer startet seine Software und stellt über das Netzwerk eine Verbindung zum Lizenzserver her. Der Server stellt das Starten der Software fest und verringert den Zähler der zur Verfügung stehenden Lizenzen. Beim Verlassen der Software wird dies wiederum vom Lizenzserver festgestellt, und die Anzahl der verfügbaren Lizenzen wird wieder inkrementiert. Der Vorteil dieser Methode liegt darin, dass durch zeitversetztes Nutzen der Lizenzen mehr Mitarbeiter die Software verwenden können als Lizenzen erworben wurden. Dies ist insbesondere vorteilhaft bei Software-Produkten, die nur gelegentlich verwendet werden. Diese Methode verringert somit in solchen Anwendungsfällen die Softwarekosten.
• Pauschale Netzwerklizenz: Der Kunde erhält bei dieser Methode ein pauschales Kontingent an Softwarelizenzen für häufig verwendete Produkte (z.B. Office-Produkte). Alle Rechner des Netzes können die Software benutzen. Ein zentraler Lizenzserver wird nicht benötigt. Diese Form der Netzwerklizenzen wird beispielsweise häufig in Universitäten verwendet (sogenannte Campuslizenzen) oder in Firmen mit Pauschalverträgen für Standardprodukte. Der Schutz vor unbefugter Vervielfältigung ist jedoch gering.
Netzwerklizenzen mit Lizenz-Vergabe durch Lizenzserver haben sich für die multiple Verwendung von Software durchgesetzt und bieten einen effektiven Softwareschutz. Bei besonders hochwertiger Software stellen einige Hersteller den Lizenzserver sogar selbst (beispielsweise über das Internet) zur Verfügung, so dass bei jedem Betrieb der Software ein Kontakt zum Hersteller erfolgen muss. Die Bindung an das
Netz schützt den Softwarehersteller zwar vor wirtschaftlichem Schaden, behindert jedoch eine flexible Verwendung der Software.
Ein gravierender Nachteil der Netzwerklizenzen besteht somit in der Bindung an das Netzwerk. Bei Netzwerkausfall oder Abkopplung des Computers vom Netzwerk ist ein Softwarebetrieb nicht mehr gewährleistet. Ist der Lizenzserver oder das Netzwerk nicht verfügbar, oder ist der Nutzer mit seinem Computer unterwegs und hat keinen Netzwerkzugang, so kann die Software nicht genutzt werden.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren zur Vergabe und Verwaltung von Netzwerklizenzen anzugeben, das keine andauernde Verbindung mit einem Lizenzserver erfordert.
Diese Aufgabe wird durch ein Verfahren zur Vergabe und Verwaltung von Netzwerk- Softwarelizenzen mit den im Anspruch 1 angegebenen Merkmalen gelöst. Vorteilhafte Ausgestaltungen sind in weiteren Ansprüchen angegeben.
Mit der Erfindung werden demnach zwei Verfahrensvarianten vorgeschlagen, bei denen eine Kombination von Methoden des Softwareschutzes im Fall von Einzellizenzen mit solchen im Fall von Netzwerklizenzen eingesetzt wird. Die Verfahrensvarianten unterscheiden sich zwar durch die jeweils zugrundeliegenden Lizenzbedingungen, es werden jedoch prinzipiell die gleichen erfindungsgemäßen Maßnahmen ergriffen, um eine Software-Weiterbenutzung auch bei unterbrochener Netzverbin- dung zu ermöglichen. Dies wird durch Vergabe einer Nutzungserlaubnis in Form eines Tokens durch einen Lizenzserver erreicht, der die jeweilige Nutzungserlaubnis mit einer Begrenzung der Nutzungsdauer versieht.
Das erfindungsgemäße Verfahren hat u. a. den Vorteil, dass eine flexiblere Nutzung der lizenzierten Software ermöglicht ist, und durch die zeitliche Begrenzung der Nutzungserlaubnis trotzdem dem Schutzbedürfnis des Software-Herstellers entsprochen wird. Eine Netzverbindung zwischen einem die lizenzierte Software nutzenden Rechner und dem Lizenzserver ist nur während der Anforderung und Vergabe der jeweiligen Nutzungserlaubnis erforderlich. Damit ist eine vom Netz unabhängige Softwarenutzung ermöglicht.
Eine weitere Erläuterung der Erfindung und deren Vorteile ergibt sich aus der nachstehenden Beschreibung eines Ausführungsbeispiels anhand von Zeichnungsfiguren.
Es zeigen:
Fig. 1 ein Rechnernetz mit einer Anzahl von Netzwerklizenzen, und
Fig. 2 ein Rechnernetz mit einem Zeitrahmen für eine Netzwerklizenz.
Fig. 1 zeigt ein Rechnernetz 1 , in welchem ein Lizenzserver 2 und fünf Clientrechner 3.1 bis 3.5 vorhanden sind, die hier kurz mit Server bzw. Client bezeichnet sind. Der Server 2 vergibt und verwaltet softwaregesteuert drei Softwarelizenzen 4.1 bis 4.3, die keinen bestimmten Clients zugeordnet sind. Die lizenzierte Software ist in allen Clients die die Software benötigen installiert. Allerdings dürfen aufgrund der Lizenzbedingung nur maximal drei Clients zugleich die Software anwenden. Mit schraffierten Flächen sind Nutzungserlaubnisse für die lizenzierte Software dargestellt, wobei in Fig. 1 eine Situation gezeigt ist, in der dem Client 3.1 eine temporäre Nutzungserlaubnis aufgrund der Lizenz 4.1 erteilt ist.
Um eine solche Anwendungs- oder Nutzungserlaubnis zu erhalten, fordert der jeweilige Client, hier Client 3.1 , diese über eine Netzverbindung 5 beim Server 2 an. Wenn noch nicht alle drei Lizenzen vergeben sind, erteilt der Server 2 die Erlaubnis mittels eines Tokens, dem ein Verfallsdatum zugeordnet ist, also seine Gültigkeit nach einer festgelegten Dauer, z. B. 30 Tage, verliert. Nach Übertragung des Tokens zum Client, z. B. 3.1 , bleibt dort eine Nut∑ungserlaubnis 4.11 beispielsweise für 3 Tage gespeichert. Der Client 3.1 kann daher nach Empfang des Tokens vom Netz getrennt werden und trotzdem die Software bis zum Ablauf der 30-Tage-Frist nutzen.
Wenn vor Ablauf der Gültigkeitsdauer von z. B. 3 Tagen wieder eine Netzverbindung besteht und ein neuer Token angefordert wird, kann eine Verlängerung der Nutzungserlaubnis ohne Unterbrechung der Anwendung erreicht werden. Falls jedoch
keine neue Anforderung erfolgt, erlischt die Nutzungserlaubnis und die Software wird im Client 3.1 gesperrt.
Im Server 2 wurde zugleich mit der Vergabe der Nutzungserlaubnis 4.11 die Anzahl der verfügbaren Lizenzen von 3 auf 2 dekrementiert. Nach Ablauf der Gültigkeitsdauer der Nutzungserlaubnis 4.11 wird im Server 2 die Anzahl der verfügbaren Lizenzen wieder auf 3 inkrementiert. Soweit eine Netzverbindung 5 gegeben ist, kann auch eine vorzeitige Rückgabe des Tokens, bzw. der Nutzungserlaubnis erfolgen, worauf ebenfalls im abgebenden Client die Softwarenutzung gesperrt und im Server die Anzahl verfügbarer Lizenzen inkrementiert wird.
Das angestrebte Ziel der Einhaltung der Lizenzbedingungen und der Möglichkeit des flexiblen Einsatzes der Lizenzen, sowie der Einschränkung der Notwendigkeit einer Netzverbindung wird mit dem beschriebenen Verfahren erreicht. Auch in den Clients laufen die Vorgänge zur Software-Freigabe und -Sperrung softwaregesteuert ab, abgesehen von der Token-Anforderung und vorzeitigen Rückgabe.
Fig. 2 zeigt den gleichen Aufbau eines beispielhaften Rechnernetzes 1 wie Fig.1 , mit in allen Clients 3.1 bis 3.5 installierter Software. Allerdings liegt diesem Beispiel eine andere Lizenzvereinbarung zugrunde. Gemäß einer Lizenz 6 darf die Software zwar in allen Clients 3.1 bis 3.5 gleichzeitig genutzt werden, jedoch nur so lange, bis eine vereinbarte Gesamtdauer D erreicht ist. Um dies zu gewährleisten müssen die Clients 3.1 bis 3.5 beim Server 2 eine temporäre Nutzungserlaubnis, z. B. 6.1 anfordern. Der jeweilige Client, z. B. 3.1 erhält daraufhin mittels eines Tokens eine temporäre Nutzungserlaubnis 6.1 mit einer vereinbarten Gültigkeitsdauer d. Nach Erhalt des Tokens kann auch bei dieser Verfahrensvariante eine Netzverbindung entfallen und die Software bis zum Ablauf der Gültigkeitsdauer d angewendet werden. Es versteht sich, dass auch bei dieser Variante sowohl eine vorzeitige Tokenrückgabe, als auch eine Gültigkeitsverlängerung in der vorbeschriebenen Weise möglich sind.
Zur Ermittlung der lizenzgemäßen Restlaufzeit wird im Server jeweils mit Ablauf einer Nutzungserlaubnis die Dauer d von der aktuellen Restlaufzeit subtrahiert, bzw. bei vorzeitiger Tokenrückgabe eine entsprechend kürzere Nutzungsdauer. Auch bei die-
ser Verfahrensvariante erfolgt nach Wegfall der Nutzungserlaubnis eine Sperrung der Anwendung der lizenzierten Software.
Bei beiden, in Fig. 1 und Fig. 2 dargestellten Verfahrensvarianten können auf einfache Weise die Nutzungsanteile einzelner Clients an der Softwarelizenz ermittelt werden, beispielsweise um Kosten zuzuordnen. Soweit auch mit dem Lizenzgeber in definierten Perioden eine Abrechnung entsprechend dem tatsächlichen Umfang der Softwarenutzung erfolgen soll, lässt sich auch dieser Umfang - wie ohne weiteres ersichtlich ist - einfach ermitteln.
Bezugszeichenliste
0 Rechnernetz
0 Server
2.0 bis 3.2 Client
4.1 bis 4.3 Lizenzen
4.11 temporäre Nutzungserlaubnis
5 Netzverbindung
6 Netzwerklizenz
5.0 temporäre Nutzungserlaubnis
D bei Lizenznahme vereinbarte Gesamtdauer der Softwarenutzung d Teildauer der Softwarenutzung