DE19612999C2 - System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken - Google Patents

System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken

Info

Publication number
DE19612999C2
DE19612999C2 DE19612999A DE19612999A DE19612999C2 DE 19612999 C2 DE19612999 C2 DE 19612999C2 DE 19612999 A DE19612999 A DE 19612999A DE 19612999 A DE19612999 A DE 19612999A DE 19612999 C2 DE19612999 C2 DE 19612999C2
Authority
DE
Germany
Prior art keywords
network
software
computer
module
license
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19612999A
Other languages
English (en)
Other versions
DE19612999A1 (de
Inventor
Hans-Joerg Prof Dr Diersch
Rainer Dr Gruendler
Stefan Dr Kaden
Ingo Michels
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WASY GES fur WASSERWIRTSCHAFT
Original Assignee
WASY GES fur WASSERWIRTSCHAFT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WASY GES fur WASSERWIRTSCHAFT filed Critical WASY GES fur WASSERWIRTSCHAFT
Priority to DE19612999A priority Critical patent/DE19612999C2/de
Priority to US08/821,459 priority patent/US6101606A/en
Publication of DE19612999A1 publication Critical patent/DE19612999A1/de
Application granted granted Critical
Publication of DE19612999C2 publication Critical patent/DE19612999C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Description

Die Erfindung betrifft ein System zur Sicherung geschützter Software gegen unbefugte Benutzung, d. h. nicht lizenzierte Nutzung, in Rechnernetzwerken, wie z. B. Netze von UNIX-Workstations.
Mit der zunehmenden Verbreitung von Rechnernetzwerken wächst auch das Schutzbedürfnis der Softwarehersteller gegenüber einer unzulässigen Benutzung der von ihnen geschaffenen Computerprogramme innerhalb eines Netzwerkes. In jüngerer Zeit gewinnen Rechnernetzwerke an Bedeutung, die aus mehreren ange­ schlossenen Benutzerstationen mit eigenständigen Prozessorkapazitäten, ein oder mehreren Prozessoren, bestehen und den gleichzeitigen Betrieb von ein- und dersel­ ben Software in Rechnernetzen an mehreren Arbeitsplätzen erlauben. Somit erlaubt der Einsatz eines Computerprogramms auf mindestens einem in einem Netzwerk integrierten Rechner grundsätzlich die Möglichkeit einer zeitgleichen Mehrfachnut­ zung der Software auf mehreren Rechnern, auf mehreren Prozessoren und im Multi-tasking-Betrieb auf einem Prozessor, denn ohne die Möglichkeit zeitgleicher Mehrfachnutzung müßten sämtliche Nutzer mehrere Programmexemplare bei gleichzeitiger multipler Nutzung erwerben.
Die Problematik der Lizenzierung von Software in einem Netzwerk besteht also darin, daß die Nutzung und der Schutz einer lizenzierten Software mehrfach und zeitgleich auf mehreren oder allen im Netzwerk integrierten Rechnern möglich sein muß. Ohne einen Softwareschutz entzieht die Mehrfachnutzung dem Softwareher­ steller potentielle Kunden. Dieses gilt sowohl für lokale Netzwerke als auch für sogenannte wide-area-networks, die grenz- oder auch kontinentüberschreitend betrieben werden können.
Gleichzeitig ist es für die Kunden sehr hilfreich, daß die Anzahl der zu erwerbenden Lizenzen einer Software nicht von der Anzahl der Rechner, die für die Nutzung vorgesehen sind, sondern vom tatsächlichen Nutzungsbedarf an der Software abhängt.
Es liegt deshalb im Interesse der Softwarehersteller und auch der Nutzer, für die lizenzierte Software auch in Netzwerken einen wirksamen Schutz vorzusehen, der jedoch den Anwender in der zulässigen, flexiblen Nutzung der erworbenen Lizenz­ software in keiner Weise behindert.
Die bisher eingesetzten Systeme zum Schutz von Software basieren auf zwei grundlegenden Prinzipien. Dies sind einerseits die PC-orientierten Hardlocks, die auch als Dongle bezeichnet werden, und in der Regel an der parallelen Schnittstelle eines Rechners angebracht werden. Der Dongle verwendet normalerweise einen Hardware-Schlüssel, der den Rechner, an dem er physisch angeschlossen ist, zur Abarbeitung eines auf diesem Rechner installierten Programmes authorisiert.
Beispiele für einen solchen Dongle sind in dem WO 91/15816; WO 94/06071 und EP 183 608 offenbart.
Die Nachteile einer solchen Vorrichtung liegen darin, daß der Dongle mit dem Rechner verbunden sein muß, auf dem die Software genutzt wird. Beim Anwenden einer Lizenz auf einem anderen Rechner ist ein Wechsel des Dongles notwendig. Bei der Nutzung von mehreren Softwareprogrammen, die jeweils durch einen Dongle geschützt sind, wird die Anzahl der Dongle hinderlich, weil das notwendige Hintereinanderanordnen der verschiedenen Dongle zu einem technischen Hindernis wird, während gleichzeitig auch die Betriebssicherheit abnimmt, was zu Rechner­ abstürzen oder Hardwarebeschädigung führen kann. Für die Anwendung in Netz­ werken ist ein solcher Dongle ungeeignet, da weder die Anzahl von gleichzeitig laufenden Software-Programmen überwacht werden kann, noch die Lizenzierung von Software-Programmen auf anderen Rechnern möglich ist. Mehrfach-Lizenzen und Lizenz über verschiedene Plattformen, wie Personalcomputer und UNIX-Work­ stations sind nicht verwaltbar.
Gleichzeitig ist damit eine Sicherheitslücke verbunden, da beim Einloggen auf einem PC im Netzwerk über ein externes Terminal, z. B. über WINDD der Fa. Tektronix, eine unkontrollierte Mehrfachnutzung einer geschützten Software möglich ist.
Die zweite Möglichkeit des Softwareschutzes besteht in der Anwendung eines sogenannten Lizenzverwalters in Rechnernetzwerken, der ein auf einem Rechner im Rechnernetzwerk installiertes Programm darstellt. Dieses Programm überwacht die Ausführbarkeit einer vorgegebenen Anzahl von Lizenzen geschützter Program­ me, die sich entweder lokal auf demselben Rechner oder auf einem anderen Rech­ ner des gleichen Netzwerkes befinden. Die Authorisierung zur Programmbenutzung basiert auf der eindeutigen Identifikation jedes Rechners durch seine sogenannte Host-Id bzw. seine Netzwerkadresse.
Beispiele für solche Lizenzverwalter sind Flexlm von Highland Software und Netls von Hewlett Packard sowie das in der JP 6-223040 (A) offenbarte System zur Sicherung geschützter Software gegen unbefugte Benutzung in einem Rechnernetz­ werk. Bei dem zuletzt genannten System werden Lizenzen mittels eines auf einem Rechner befindlichen Software-Lizenzservers verwaltet.
Die Nachteile des auf einem Rechner des Netzwerkes installierten, sogenannten Lizenzverwalters liegen darin, daß die Überwachung der lizenzierten Programme an einen oder mehrere bestimmte Rechner im Netz gebunden ist, die Lizenzierung also von mindestens einem bestimmten Rechner abhängig ist. Bei Ausfall dieses Rech­ ners wegen eines Defektes oder der Entfernung des Rechners aus dem Rechner­ netzwerk, z. B. wegen Alterung oder Reparatur, ist auch auf allen anderen Rechnern des Rechnernetzwerkes keine weitere Arbeit mit den lizenzierten Software-Pro­ grammen möglich. Ebenso ist es nicht möglich, bestehende Lizenzen aus einem Netzwerk auf ein anderes zu übertragen. In diesem Falle ist eine vertrags-pflichtige, aufwendige Umlizenzierung notwendig. Bei dieser Umlizenzierung kann auch nicht verhindert werden, daß der Lizenznehmer die bisherige Lizenz auf dem alten Rechner unrechtmäßig weiter nutzt.
In der US 4 937 863 ist ein weiteres Lizensierungssystem beschrieben, das jedoch nur für eine Workstation/einen Großrechner anwendbar ist und keine Netzwerk­ funktionalität in der Lizensierung und keine Möglichkeit der Übertragbarkeit einer Lizenz aufweist. Dieses System kann zum Beispiel verwendet werden, um die Anzahl der Nutzer und die Ausführung bestimmter Betriebssystemprogramm auf Workstation zu kontrollieren, ist jedoch, wie erwähnt, für Netzwerke nicht ge­ eignet.
Aus der DE 94 20 092 U1 ist ein Modul zum Schutz von Software in einem Computernetzwerk bekannt, das mit dem Netzwerkserver über die parallele Schnitt­ stelle verbunden ist. Der Nachteil eines solchen Moduls besteht darin, daß er nicht hardwareunabhängig ist, sondern an die Schnittstellen und Betriebsprogramme der jeweils verwendeten Rechner angepaßt werden muß.
Die DE 40 10 094 A 1 offenbart ein Verfahren zur Überprüfung der Zugangsberech­ tigung eines Benutzers zu einem Prozessor, bei dem ein Authentifizierungsrechner vorgesehen ist, zu dem ein dem Zugang zu einem Prozeß anfordernder Benutzer mit einem ihm zugeordneten Paßwort Zugang erhält.
Die Erfindung hat sich deshalb die Aufgabe gestellt, einen Softwareschutz in Rechnernetzwerken zu entwickeln, der Hardware- und Betriebssystem - unabhängig ist und damit eine Plattform - übergreifende Lizensierung und Rechnerverwaltung in lokalen Netzen und Wide-area-networks ermöglicht.
Erfindungsgemäß wird die Aufgabe durch ein System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken gelöst, das aus einem Abfragebestandteil, einem Verwaltungsbestandteil und einem Authorisierungs­ bestandteil besteht, wobei der Abfragebestandteil mit dem Verwaltungsbestandteil und der Verwaltungsbestandteil mit dem Authorisierungsbestandteil in bidirektiona­ lem Informationsaustausch steht, gekennzeichnet dadurch, daß der Authorisie­ rungsbestandteil ein mit einem einzigartigen Identifikationscode ausgestattetes, separates, rechnerunabhängiges und in das Rechnernetzwerk beliebig integrierbares Modul umfaßt.
Durch das unabhängig von einem Netzwerkrechner in das Netzwerk integrierte Modul mit seinem Identifikationscode wird ein Softwareschutz erreicht, der die Vergabe und Überwachung von netzwerkweiten Fließlizenzen unabhängig von der Hardwareplattform und unabhängig von speziellen, der Alterung und dem Ver­ schleiß und damit auch der Aussonderung unterliegenden Rechnern ermöglicht. Dieses hat den Vorteil, daß alle Rechner des Rechnernetzwerkes beliebig aus­ tauschbar sind und trotzdem die lizenzierte Nutzung der Software an jedem beliebi­ gen Rechner des Rechnernetzwerkes in der lizenzierten Anzahl möglich ist. Somit sind die Lizenzen auch auf ein beliebiges anderes Rechnernetzwerk übertragbar, indem das Modul aus dem einen Rechnernetzwerk entfernt und in ein anderes Rechnernetzwerk integriert wird. Eine gleichzeitige Weiternutzung der lizenzierten Software in dem alten Netz ist nicht möglich. Die Mitnahme eines Rechners aus dem bisherigen Rechnernetzwerk in das neue Rechnernetzwerk ist somit nicht mehr erforderlich. Auch bei Ausfall eines bestimmten Rechners des Rechnernetzwerkes kann die lizenzierte Software in uneingeschränkter Art und Weise auf anderen Rechnern im Rechnernetzwerk weiter genutzt werden. Damit entfällt auch eine aufwendige und nur einen eingeschränkten Softwareschutz bietende Umlizenzie­ rung, die bisher bei einem Wechsel des mit dem Lizenzverwalter programmierten und mit dem Identifikationscode ausgestatteten Rechners notwendig war.
Das Modul stellt netzwerkmäßig einen unabhängigen Host dar und der Identifika­ tionscode kann entweder eine Host-ID, seine Netzwerkadresse oder eine andere einmalige Kennung sein.
Unter Verwendung dieses Identifikationscodes und von Lizenzinformationen erstellt der Lizenzgeber einen einzigartigen Lizenzierungscode für die zu schützende Software. Veränderungen der Lizenzen sind nur durch Änderung des Lizenzierungs­ codes durch den Lizenzgeber möglich.
Für die Authorisierung der Nutzung geschützter Software benötigt der Nutzer den Identifikationscode, Lizenzinformationen und den Lizenzierungscode.
Diese Lizenzinformationen sollten im allgemeinen den oder die Lizenzgeber, den Namen und die Version der Lizenz/Lizenzen, die Anzahl der Lizenzen sowie Start und Enddatum der Lizenz/Lizenzen umfassen. Weitere oder andere Lizenzinforma­ tionen können bei Bedarf abrufbar gespeichert werden.
In einer bevorzugten Ausführungsform ist das Modul mit allen zur Authorisierung der Nutzung lizenzierter Software notwendigen Informationen ausgestattet, die durch den Identifikationscode, den Lizenzierungscode und die Lizenzinformationen gebildet werden.
In einer anderen bevorzugten Ausführungsform wird der Authorisierungsbestandteil aus dem Modul und einer Datei gebildet, die auf einem beliebigen Rechner des Netzwerkes geladen oder installiert oder in sonstiger Art und Weise durch den Rechner lesbar gespeichert sein kann. Die Datei enthält entweder den Lizenzie­ rungscode oder die Lizenzinformationen oder beides, d. h., Lizenzierungscode und Lizenzinformationen, wobei das Modul gegebenenfalls dann die jeweils noch fehlenden Informationen, in jedem Fall aber den Identifikationscode enthält.
Durch Speicherungen eines neuen Lizenzierungscodes und neuer Lizenzinformatio­ nen können ganz neue Lizenzen für eine andere Software des gleichen Lizenzge­ bers oder eines anderen Lizenzgebers sowie Änderungen bestehender Lizenzen eingegeben werden.
Die Speicherung der für die Authorisierung notwendigen Informationen in dem Authorisierungsbestandteil hat den Vorteil, daß gleichzeitig mehrere unterschiedli­ che Lizenzen, die auch von verschiedenen Lizenzgebern stammen können, gespei­ chert und auf Anforderung zur erlaubten Nutzung freigegeben werden können. Dabei ist es ohne Bedeutung, auf welchem Rechner des Netzwerkes die lizenzierte Software genutzt werden soll. Die Nutzung wird lediglich durch die Anzahl der erlaubten Nutzungen einer Lizenz begrenzt. Das heißt, wenn vertraglich beispiels­ weise zehn Lizenzen einer Software für das Netzwerk vergeben wurden, werden diese zehn Lizenzen rechnerunabhängig bei Bedarf zur gleichzeitigen Nutzung freigegeben, während eine über diese Anzahl hinausgehende Nutzungsanfrage abgewiesen werden würde. Diese Aufgabe übernimmt der Verwaltungsbestandteil.
Der Verwaltungsbestandteil umfaßt eine Software zur Verwaltung der geschützten Software, die entweder auf einem beliebigen Rechner des Netzwerkes geladen oder installiert werden kann oder aber in dem Modul integriert ist.
Die einzelnen Bestandteile des Softwareschutzsystems stehen miteinander in bidirektionalem Informationsaustausch, d. h., der Abfragebestandteil kommuniziert mit dem Verwaltungsbestandteil und dieser wiederum mit dem Authorisierungs­ bestandteil. Dieser Informationsaustausch erfolgt vorzugsweise mit Hilfe von verschlüsselten Protokollen. Die Ablage der Informationen in dem Modul, das vorzugsweise eine elektronische Baugruppe ist, wie zum Beispiel ein CMOS-Spei­ cher, erfolgt ebenfalls mit Hilfe eines verschlüsselten Protokolles.
Jedes Modul ist mit einem einzigartigen Identifikationscode ausgestattet, das heißt, daß kein anderes Modul den gleichen Code hat. Der Verwaltungsbestandteil ist mit Hilfe der installierten oder geladenen Lizenzverwaltungssoftware in der Lage, diesen Identifikationscode zu erkennen und zu verarbeiten. Wird an einem beliebigen Rechner eines Netzwerkes, das mit dem erfindungsgemäßen System ausgerüstet ist, eine lizenzierte Software aufgerufen, stellt deren Abfragebestand­ teil eine Verbindung zu dem nächstgelegenen Verwaltungsbestandteil her. Der Verwaltungsbestandteil wiederum stellt eine Verbindung zu dem Authorisierungs­ bestandteil her, um die erforderlichen Informationen, d. h., den Identifikationscode, die Lizenzinformation und den Lizenzierungscode, zur Freigabe oder Sperrung der Softwarenutzung einzuholen. Wird die erforderliche Information durch das Modul bereitgestellt, das heißt, erkennt der Verwaltungsbestandteil zum Beispiel die Host- ID des Moduls, und stimmen die Lizenzinformationen mit dem Lizenzierungscode überein, wird die Software für den anfragenden Rechner des Netzwerkes freigege­ ben. Wird eine Übereinstimmung der Information mit denen des Verwaltungs­ bestandteils nicht erzielt, also keine authorisierte Nutzung der Software erkannt, erfolgt keine Freigabe zur Nutzung der Software.
Das Rechnernetzwerk kann sowohl ein lokales Netzwerk als auch ein Wide-Area- Netzwerk sein. Das Modul kann an beliebiger Stelle des Rechnernetzwerkes mit Hilfe entsprechender herkömmlicher Netzwerkanschlüsse lösbar integriert werden. Diese Netzwerkanschlüsse sind beispielsweise Netzkabel mit geeigneten Steckver­ bindungen/Steckanschlüssen. Das Modul ist ein separates Hardwareteil, vorzugs­ weise eine elektronische Baugruppe, das von den Rechnern des Rechnernetzwer­ kes unabhängig ist.
Die Erfindung wird nachstehend anhand von Ausführungsbeispielen und den beigefügten Zeichnungen erläutert.
Fig. 1 zeigt eine schematische Darstellung eines Rechnernetzwerkes mit integrier­ tem Modul.
Fig. 2 zeigt ein Flußdiagramm der Authorisierungsprüfung und -freigabe.
Fig. 3 zeigt ein Flußdiagramm der Authorisierungsprüfung und -freigabe gemäß einer weiteren Ausführungsform der Erfindung.
In Fig. 1 ist schematisch ein Rechnernetzwerk dargestellt, das aus insgesamt neun Rechnern R1 bis R9 besteht. Auf einem der Netzwerkrechner, in diesem Fall R1, ist eine Lizenzverwaltungssoftware 12 installiert oder geladen, die mit den Netz­ werkrechnern R1 bis R9 sowie einem in dem Rechnernetzwerk 1 integrierten Modul 10 in Informationsaustausch steht. Die Software 12 könnte in jedem beliebigen Netzwerkrechner R1 bis R9 geladen oder installiert oder in dem Modul 10 selbst integriert sein und hat die Aufgabe, die Nutzung lizenzierter Software Lm zu verwalten (m ist eine ganze Zahl und stellt die Anzahl der Lizenzen einer ge­ schützten Software in einem Netzwerk dar). Die Software 12 wird mit der Lizenz der lizenzierten Software Lm an einen Lizenznehmer geliefert. Die Lizenz kann für unterschiedliche Lizenzarten, z. B. Fließlizenz oder an einer Host gebundene Lizenz, unterschiedlich konfiguriert sein. Die lizenzierte Software Lm umfaßt einen Ab­ fragebestandteil, der die Software 12 anspricht, und die Software 12 vermittelt die weitere Verbindung zu dem von den Rechnern R1, ...., Rn separaten Modul 10.
Je nach Konfiguration des Moduls 10 erfolgt die Abfrage und die Freigabe der authorisierten Nutzung der lizenzierten Software in verschiedenen Abläufen.
In Fig. 2 ist ein Flußdiagramm dargestellt, bei dem der Authorisierungsbestandteil 8 nur aus dem Modul 10 besteht und mit allen zur Authorisierung der Programm­ nutzung notwendigen Informationen ausgestattet ist.
Wird auf einem oder mehreren Rechnern R1, ..., Rn ein geschütztes Programm L1, ..., Lm gestartet, wird durch den Abfragebestandteil 2 des Programmes L1, ..., Lm eine Verbindung zu dem Verwaltungsbestandteil 6 hergestellt, der in diesem Fall eine in einem der Netzwerkrechner R1, ..., Rn geladene Software 12 umfaßt. Die Software 12 könnte auch in dem Modul 10 selbst integriert sein. Diese Software 12 versucht sodann, eine Verbindung zu dem in dem Rechnernetz integrierten Authorisierungsbestandteil 8, in diesem Beispiel dem Modul 10, herzu­ stellen. Ist ein solches Modul nicht vorhanden oder kann dieses wegen fehlender entsprechender Informationen nicht angesprochen werden, sperrt das Programm 12 die weitere Abarbeitung des geschützten Programmes L1, ..., Lm. Wird ein ent­ sprechendes Modul 10 in dem Netzwerk gefunden, veranlaßt das Programm 12 eine Abfrage an das Modul 10 nach dem Identifikationscode, den Lizenzinformatio­ nen und dem Lizenzierungscode und ermittelt, ob eine berechtigte Benutzung des geschützten Programmes L1, ..., Lm vorliegt oder nicht. Die Abfrage kann nachein­ ander oder gleichzeitig durchgeführt werden und umfaßt z. B. die folgenden Schritte:
  • - Ist der Identifikationscode bekannt?
  • - Ist der Lizenzname vorhanden und bekannt?
  • - Stimmt die Programmversion überein?
  • - Liegt das Abfragedatum zwischen Lizenzbeginn und Lizenzende?
  • - Ist die Anzahl der Lizenzen überschritten?
Nur wenn alle Abfragen mit "Ja" beantwortet werden, wird die geschützte Soft­ ware L1, ...., Lm auf dem entsprechenden Netzwerkrechner R1, ..., Rn freigegeben. Wird nur eine der Anfragen mit "Nein" beantwortet, wird keine weitere Nutzung des Programmes erlaubt und das Programm abgebrochen oder für den weiteren Zugriff gesperrt.
Der Informationsaustausch zwischen den Bestandteilen 2, 6 und 6, 8 erfolgt mittels eines verschlüsselten Protokolls.
In einer anderen Ausführungsform der Erfindung, deren Flußbild in Fig. 3 darge­ stellt ist, besteht der Authorisierungsbestandteil 8 aus dem Modul 10 sowie einer auf einem beliebigen Netzwerkrechner R1, ...., Rn geladenen oder installierten oder in sonstiger Weise lesbaren Datei 14. In dem Modul 10 ist lediglich der Identifika­ tionscode gespeichert, während die anderen lizenzbezogenen Informationen in der Datei 14 auf einem Netzwerkrechner R1, ..., Rn enthalten sind, auf dem vorzugs­ weise auch die Lizenzverwaltungssoftware 12 installiert oder geladen ist, so daß die Abfrage an das Modul 10 nur die Übereinstimmung der Host-ID bzw. der Netzwerkadresse mit der Lizenz prüft. Die übrigen Informationen werden aus der Datei 14 abgefragt und in der Lizenzverwaltungssoftware 12 geprüft.
Auch hier sind jedoch wieder mehrere Alternativen möglich. So könnte die Softwa­ re 12 Bestandteil des Moduls 10 sein oder der Lizenzierungscode oder die Lizenz­ informationen können anstelle in der Datei 14 in dem Modul 10 gespeichert sein.
Während jedes Modul bereits mit einem einzigartigen Identifikationscode versehen ist, der bei keinem anderen Modul gleich ist, können die anderen Informationen bezüglich der Lizenzen im Lizenzierungscode jederzeit beliebig verändert werden. Dies erfolgt durch Erstellung eines neuen Lizenzierungscodes durch den Lizenzge­ ber bzw. einen authorisierten Vendor. So können die Anzahl der Lizenzen, der Lizenzname, die Version der Lizenz entsprechend der vertraglichen Regelung zwischen Lizenznehmer und Lizenzgeber jeweils aktualisiert werden und es können auch beliebige neue Lizenzen für andere geschützte Programme aufgenommen werden. Bei Lieferung einer neuen Version der Lizenzsoftware wird auch eine entsprechende Aktualisierung vorgenommen. Eine unberechtigte weitere Nutzung alter Lizenzversionen ist somit nicht mehr möglich. Durch Eingabe des Lizenzbe­ ginns und Lizenzendes kann gleichzeitig die Einhaltung des vertraglich vereinbarten Lizenzzeitraumes geprüft und eine unzulässige Nutzung über diesen Zeitraum hinaus verhindert werden. Sofern die geschützten Programme von einem Lizenzge­ ber stammen, wird auch im Normalfall die gleiche Software für die Lizenzver­ waltung verwendet werden. Wird geschützte Software durch unterschiedliche Lizenzgeber zur Verfügung gestellt, können auch unterschiedliche Lizenzverwal­ tungsprogramme 12 für den Informationsaustausch mit dem Modul 10 notwendig sein. Der Lizenznehmer wird dann entsprechend mit der geschützten Software oder mit einer neuen Version das Lizenzverwaltungsprogramm 12 erhalten, das auf einem der Netzwerkrechner oder im Authorisierungsbestandteil 8 geladen oder installiert wird.
Der Identifikationscode, d. h. die Host-ID, die Netzwerkadresse bzw. eine andere einmalige Kennung, sind immer an das rechnerunabhängige separate Modul 10 gebunden, so daß die Authorisierung zur Nutzung der geschützten Software nur erteilt wird, wenn sowohl der Identifikationscode als auch die anderen Lizenz­ informationen und der Lizenzierungscode durch die Lizenzverwaltungssoftware 12 als richtig ermittelt werden.

Claims (13)

1. System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken, das aus einem Abfragebestandteil, einem Verwaltungsbe­ standteil und einem Authorisierungsbestandteil besteht, wobei der Abfragebestand­ teil mit dem Verwaltungsbestandteil und der Verwaltungsbestandteil mit dem Authorisierungsbestandteil in bidirektionalem Informationsaustausch steht, dadurch gekennzeichnet, daß der Authorisierungsbestandteil (8) ein mit einem einzigartigen Identifikationscode ausgestattetes, separates, rechnerunabhängiges und in das Rechnernetzwerk (1) beliebig integrierbares Modul (10) umfaßt.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß das Modul (10) netz­ werkmäßig einen unabhängigen Host darstellt und der Identifikationscode eine einmalige Kennung ist.
3. System nach Anspruch 1, dadurch gekennzeichnet, daß das Modul (10) netz­ werkmäßig einen unabhängigen Host darstellt und der Identifikationscode eine Host-ID ist.
4. System nach Anspruch 1, dadurch gekennzeichnet, daß das Modul (10) netz­ werkmäßig einen unabhängigen Host darstellt und der Identifikationscode dessen Netzwerkadresse ist.
5. System nach Anspruch 2, 3 oder 4, dadurch gekennzeichnet, daß das Modul (10) mit allen zur Authorisierung notwendigen Informationen ausgestattet ist.
6. System nach Anspruch 5, dadurch gekennzeichnet, daß die zur Authorisierung notwendigen Informationen den Identifikationscode, einen Lizenzierungscode und Lizenzinformationen umfassen.
7. System nach Anspruch 2, 3 oder 4, dadurch gekennzeichnet, daß der Authori­ sierungsbestandteil (8) aus einem Modul (10) und einer auf einem beliebigen Netzwerkrechner geladenen oder von diesem lesbaren Datei (14) besteht.
8. System nach Anspruch 7, dadurch gekennzeichnet, daß die Datei (14) den Lizenzierungscode und/oder die Lizenzinformationen enthält.
9. System nach einem oder mehreren der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Verwaltungsbestandteil (6) eine Software (12) umfaßt.
10. System nach Anspruch 9, dadurch gekennzeichnet, daß die Software (12) auf einem beliebigen Rechner des Netzwerkes (1) installiert oder geladen ist.
11. System nach Anspruch 9, dadurch gekennzeichnet, daß die Software (12) in dem Modul (10) integriert ist.
12. System nach einem oder mehreren der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß für den Informationsaustausch ein verschlüsseltes Protokoll verwendet wird.
13. System nach einem oder mehreren der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß das Modul (10) eine elektronische Baugruppe ist.
DE19612999A 1996-03-22 1996-03-22 System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken Expired - Fee Related DE19612999C2 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE19612999A DE19612999C2 (de) 1996-03-22 1996-03-22 System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken
US08/821,459 US6101606A (en) 1996-03-22 1997-03-21 System for securing protected software from unauthorized use in computer networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19612999A DE19612999C2 (de) 1996-03-22 1996-03-22 System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken

Publications (2)

Publication Number Publication Date
DE19612999A1 DE19612999A1 (de) 1997-09-25
DE19612999C2 true DE19612999C2 (de) 1999-04-01

Family

ID=7790148

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19612999A Expired - Fee Related DE19612999C2 (de) 1996-03-22 1996-03-22 System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken

Country Status (2)

Country Link
US (1) US6101606A (de)
DE (1) DE19612999C2 (de)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6643775B1 (en) * 1997-12-05 2003-11-04 Jamama, Llc Use of code obfuscation to inhibit generation of non-use-restricted versions of copy protected software applications
US20040117663A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Method for authentication of digital content used or accessed with secondary devices to reduce unauthorized use or distribution
US6449651B1 (en) * 1998-11-19 2002-09-10 Toshiba America Information Systems, Inc. System and method for providing temporary remote access to a computer
US7143445B1 (en) * 1999-05-31 2006-11-28 Sony Corporation Information processing apparatus, information processing method, and program storage medium
US7073198B1 (en) * 1999-08-26 2006-07-04 Ncircle Network Security, Inc. Method and system for detecting a vulnerability in a network
US6968384B1 (en) * 1999-09-03 2005-11-22 Safenet, Inc. License management system and method for commuter licensing
US6957348B1 (en) * 2000-01-10 2005-10-18 Ncircle Network Security, Inc. Interoperability of vulnerability and intrusion detection systems
JP4086445B2 (ja) * 2000-03-09 2008-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報送信方法、ネットワーク・プロバイダ・サーバ、情報端末及び情報端末における方法
US20070043675A1 (en) * 2000-05-15 2007-02-22 Siemens Aktiengesellschaft Software license manager
DE10155752A1 (de) * 2001-11-14 2003-05-22 Siemens Ag Lizenzierungsverfahren
DE10023820B4 (de) * 2000-05-15 2006-10-19 Siemens Ag Software-Schutzmechanismus
US7024696B1 (en) * 2000-06-14 2006-04-04 Reuben Bahar Method and system for prevention of piracy of a given software application via a communications network
US7181769B1 (en) 2000-08-25 2007-02-20 Ncircle Network Security, Inc. Network security system having a device profiler communicatively coupled to a traffic monitor
US9280667B1 (en) 2000-08-25 2016-03-08 Tripwire, Inc. Persistent host determination
US6857067B2 (en) * 2000-09-01 2005-02-15 Martin S. Edelman System and method for preventing unauthorized access to electronic data
KR20010025298A (ko) * 2000-12-08 2001-04-06 최현일 인터넷을 이용한 실시간 소프트웨어 불법사용감시방법
US8122119B1 (en) * 2001-02-27 2012-02-21 Flowcharge, Inc. Non-resident metering and billing system for applications and devices
US6622220B2 (en) * 2001-03-15 2003-09-16 Hewlett-Packard Development Company, L.P. Security-enhanced network attached storage device
US7171453B2 (en) * 2001-04-19 2007-01-30 Hitachi, Ltd. Virtual private volume method and system
US9633182B2 (en) * 2001-05-15 2017-04-25 Altair Engineering, Inc. Token based digital content licensing method
US7120429B2 (en) * 2001-08-13 2006-10-10 Qualcomm Inc. System and method for licensing applications on wireless devices over a wireless network
KR20030021555A (ko) * 2001-09-06 2003-03-15 주식회사 시큐어미디어 인터넷을 통해서 인증키의 경매 및 엠브이디를 이용한정보제공방법
JP2003122537A (ja) * 2001-10-15 2003-04-25 Minolta Co Ltd ライセンス管理装置及び同管理システム
WO2003096136A2 (en) * 2002-05-10 2003-11-20 Protexis Inc. System and method for multi-tiered license management and distribution using networked clearinghouses
US20040069109A1 (en) * 2002-10-11 2004-04-15 Sprague Donald G. Free swinging portable cutting work station
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
WO2004109470A2 (en) * 2003-06-06 2004-12-16 Computer Associates Think, Inc. System and method for distribution of software licenses in a networked computing environment
US7389411B2 (en) * 2003-08-29 2008-06-17 Sun Microsystems, Inc. Secure transfer of host identities
US7444396B2 (en) * 2003-08-29 2008-10-28 Sun Microsystems, Inc. Transferring system identities
US8220058B2 (en) * 2003-09-25 2012-07-10 Oracle America, Inc. Rendering and encryption engine for application program obfuscation
US20050069138A1 (en) * 2003-09-25 2005-03-31 Sun Microsystems, Inc., A Delaware Corporation Application program obfuscation
US7353499B2 (en) * 2003-09-25 2008-04-01 Sun Microsystems, Inc. Multiple instruction dispatch tables for application program obfuscation
US7424620B2 (en) * 2003-09-25 2008-09-09 Sun Microsystems, Inc. Interleaved data and instruction streams for application program obfuscation
US7363620B2 (en) * 2003-09-25 2008-04-22 Sun Microsystems, Inc. Non-linear execution of application program instructions for application program obfuscation
US7415618B2 (en) * 2003-09-25 2008-08-19 Sun Microsystems, Inc. Permutation of opcode values for application program obfuscation
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
KR100602107B1 (ko) 2004-05-18 2006-07-19 강승훈 네트워크 환경의 소프트웨어 저작권 관리시스템 및 그 방법
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US20060106920A1 (en) * 2004-11-15 2006-05-18 Microsoft Corporation Method and apparatus for dynamically activating/deactivating an operating system
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8464348B2 (en) 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8438645B2 (en) * 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9436804B2 (en) * 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
CN100524333C (zh) * 2006-06-13 2009-08-05 正璞科技有限公司 防止非法使用软件的方法
US20080004886A1 (en) * 2006-06-28 2008-01-03 The Business Software Centre Limited Software rental system and method
US7720765B1 (en) * 2006-07-20 2010-05-18 Vatari Corporation System and method for using digital strings to provide secure distribution of digital content
JP4250655B2 (ja) * 2006-11-27 2009-04-08 キヤノン株式会社 情報処理システム、情報処理装置、及び情報処理方法
DE102007016200A1 (de) * 2007-04-02 2008-10-09 Deutsche Telekom Ag Verfahren und System zur Durchführung eines Lizenzmanagements mittels eines Telekommunikationsnetzwerks
JP5034109B2 (ja) * 2007-11-01 2012-09-26 Necインフロンティア株式会社 ライセンス管理装置、ライセンス管理方法及びライセンス認証プログラム
US8566960B2 (en) 2007-11-17 2013-10-22 Uniloc Luxembourg S.A. System and method for adjustable licensing of digital products
US8583482B2 (en) * 2008-06-23 2013-11-12 Double Verify Inc. Automated monitoring and verification of internet based advertising
US9633183B2 (en) 2009-06-19 2017-04-25 Uniloc Luxembourg S.A. Modular software protection
US8423473B2 (en) 2009-06-19 2013-04-16 Uniloc Luxembourg S. A. Systems and methods for game activation
US9165332B2 (en) 2012-01-27 2015-10-20 Microsoft Technology Licensing, Llc Application licensing using multiple forms of licensing
US10679151B2 (en) 2014-04-28 2020-06-09 Altair Engineering, Inc. Unit-based licensing for third party access of digital content
US10685055B2 (en) 2015-09-23 2020-06-16 Altair Engineering, Inc. Hashtag-playlist content sequence management
US11799864B2 (en) 2019-02-07 2023-10-24 Altair Engineering, Inc. Computer systems for regulating access to electronic content using usage telemetry data
US11900674B2 (en) 2021-07-08 2024-02-13 Bank Of America Corporation System for real-time identification of unauthorized access

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4937863A (en) * 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
DE4010094A1 (de) * 1990-03-29 1991-10-02 Standard Elektrik Lorenz Ag Verfahren zur ueberpruefung der zugangsberechtigung eines benutzers zu einem prozess
DE9420092U1 (de) * 1994-12-15 1995-02-02 Marx Datentechnik Gmbh Modul zum Schutz von Software

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61175729A (ja) * 1984-11-19 1986-08-07 シユラムバ−ガ− テクノロジ− コ−ポレ−シヨン ソフトウエア保護装置
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US4924378A (en) * 1988-06-13 1990-05-08 Prime Computer, Inc. License mangagement system and license storage key
US5138712A (en) * 1989-10-02 1992-08-11 Sun Microsystems, Inc. Apparatus and method for licensing software on a network of computers
US5033084A (en) * 1990-04-02 1991-07-16 Data I/O Corporation Method and apparatus for protection of software in an electronic system
WO1992020021A1 (en) * 1991-05-08 1992-11-12 Digital Equipment Corporation License management system
US5577209A (en) * 1991-07-11 1996-11-19 Itt Corporation Apparatus and method for providing multi-level security for communication among computers and terminals on a network
GB9218452D0 (en) * 1992-08-29 1992-10-14 Abdulhayoglu Melih Non-copiable software recording medium
JPH06223040A (ja) * 1993-01-26 1994-08-12 Omron Corp ソフトウェアライセンス管理システム
US5455953A (en) * 1993-11-03 1995-10-03 Wang Laboratories, Inc. Authorization system for obtaining in single step both identification and access rights of client to server directly from encrypted authorization ticket
US5495411A (en) * 1993-12-22 1996-02-27 Ananda; Mohan Secure software rental system using continuous asynchronous password verification
US5553143A (en) * 1994-02-04 1996-09-03 Novell, Inc. Method and apparatus for electronic licensing
US5473692A (en) * 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5671412A (en) * 1995-07-28 1997-09-23 Globetrotter Software, Incorporated License management system for software applications
US5708709A (en) * 1995-12-08 1998-01-13 Sun Microsystems, Inc. System and method for managing try-and-buy usage of application programs
US5720036A (en) * 1996-01-05 1998-02-17 Network Imaging Corporation Enterprise multimedia data processing system and method using scalable object-based architecture
US5684951A (en) * 1996-03-20 1997-11-04 Synopsys, Inc. Method and system for user authorization over a multi-user computer system
US5742757A (en) * 1996-05-30 1998-04-21 Mitsubishi Semiconductor America, Inc. Automatic software license manager

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4937863A (en) * 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
DE4010094A1 (de) * 1990-03-29 1991-10-02 Standard Elektrik Lorenz Ag Verfahren zur ueberpruefung der zugangsberechtigung eines benutzers zu einem prozess
DE9420092U1 (de) * 1994-12-15 1995-02-02 Marx Datentechnik Gmbh Modul zum Schutz von Software

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP 06223040 A. In: Patent Abstracts of Japan, Sect. P, Sect.Nr. 1827, Vol. 18, Nr. 606 (17.11.1994), S. 17 *

Also Published As

Publication number Publication date
US6101606A (en) 2000-08-08
DE19612999A1 (de) 1997-09-25

Similar Documents

Publication Publication Date Title
DE19612999C2 (de) System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken
DE69927022T2 (de) Verfahren zur steuerung der benutzung von softwarekomponenten
AT405466B (de) Vorrichtung zum schutz eines elektronischen geräts
EP1184771B1 (de) Verfahren zum Schutz von Computer-Software und/oder computerlesbaren Daten sowie Schutzgerät
DE19963471B4 (de) Vorrichtung und Verfahren zur Verhinderung von Raubkopien von Computerprogrammen
EP0522332B1 (de) Rechner für den Leitstand einer Maschine, insbesondere eine Druckmaschine
EP1935198B1 (de) Freischaltung von hardware in einem managementsystem
WO2006066789A2 (de) Verfahren zur lizenzvergabe und- verwaltung
DE102007063528A1 (de) System und Verfahren zum Schützen eines Sicherheitsbereichs eines Systems
EP1164456A1 (de) Software-Schutzmechanismus
DE19950249C1 (de) Elektronisches Gerät mit Softwareschutz
WO1999012088A1 (de) Verfahren zur steuerung der verteilung und nutzung von software-objekten bei vernetzten rechnern
EP1668821B1 (de) Verfahren zur lizenzierung und/oder zugangsautorisierung für softwaremodule in einer vermittlungseinrichtung
DE19615003C2 (de) Verfahren zur Protokollierung der Nutzung eines Anwenderprogramms auf einem ersten Rechner durch einen zweiten Rechner
WO2005064432A2 (de) Verfahren zum wiederherstellen eines berechtigungscodes
DE19846065C2 (de) Verfahren zur kopiergeschützten Inbetriebnahme eines Anwenderprogramms
WO2017102655A1 (de) Mikrocontrollersystem und verfahren zur kontrolle von speicherzugriffen in einem mikrocontrollersystem
DE10130124B4 (de) Sicherheitsbauelement und Verfahren zur Aktualisierung und Registrierung von Software
WO1993023807A1 (de) Programmsicherungsverfahren zum schutz einer datenverarbeitungsanlage
DE60312159T2 (de) Übertragung von sicherheitsrelevanten Daten zwischen zwei Speichern
DE19537074A1 (de) Testgerät insbesondere für elektronische Steuergeräte in Kraftfahrzeugen
EP0184023A1 (de) Verfahren und Einrichtung zum Schutz vor unberechtigtem Betrieb geschützter Programme in einem Mikrocomputer
DE4329316C2 (de) Verfahren zum Überwachen von Speichereinrichtungen programmgesteuerter Einrichtungen auf eine unautorisiert vorgenommene Einspeicherung von Programmen
DE3709205A1 (de) Schutzschaltung fuer informationsdaten im arbeitsspeicher
DE10147948A1 (de) Verfahren zur Lizenzierung und Delizenzierung von Software

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee