Infrastrukturelle Ansätze zum Softwarelizenzmanagement

Hinweis: Die nachfolgende Ausarbeitung steht auch in einer PDF-Variante zur Verfügung.

1 Einleitung

Während man im Heimbereich meist noch einen guten Überblick über sämtliche verwendete Softwareprodukte hat, so sieht es im Geschäftsumfeld oft immer noch anders aus.

Das Thema Softwarelizenzmanagement ist in vielen Firmen, vor allem in kleinen und mittelständischen Unternehmen, ein verkanntes Thema.

Durch bilanzpolitische Vorschriften wird zwar im Normalfall in jedem Unternehmen die Hardware regelmäßig inventarisiert und verwaltet, wenn es aber an das immaterielle Gut Software geht, sieht dies jedoch schon ganz anders aus.

Das Thema Softwarelizenzmanagement wird fälschlicherweise geradezu stiefmütterlich behandelt, obwohl genau hier zum einen ein großes Einsparpotenzial genutzt werden könnte und zum anderen sogar empfindliche Vertragsstrafen ausgesprochen werden können, wenn zum Beispiel einer fehlerhafte Lizenzierung vorliegt.

Oft wird in Unternehmen falsch lizenziert oder gegen die Richtlinien verstoßen, wenn auch unwissentlich.

In der nachfolgenden Arbeit soll zuerst mittels Grundlagen ein Einstieg in das Thema Softwarelizenzen gegeben werden, um darauf aufbauend zu erläutern, welche Möglichkeiten einem Softwarehersteller gegeben sind, seine Software zu lizenzieren und vor Missbrauch zu schützen. Hierzu sollen verschiedene technische Verfahren vorgestellt und dessen Vor- und Nachteile erläutert werden.

Abschließend soll das Thema Sicherung von Softwarelizenzen im Rahmen einer kritischen Würdigung gewertet werden.

 

 

2 Definitionen

Nachfolgende Definition beziehen sich auf den Standort Deutschland und dessen Gesetzeslage. In Punkt 2.2 und 2.3 wird der Begriff Softwarelizenzmanagement in die Begriffe „Softwarelizenzmanagement“ und „Software‑Asset‑Management“ differenziert.

2.1 Softwarelizenz

Softwarelizenzen fallen, wie sämtliche Lizenzverträge in Deutschland, unter den Vertragstyp „Vertrag sui generis“ (Vertrag eigener Art). Sie sind dementsprechend im Bürgerlichen Gesetzbuch nicht klar definiert. Im Gegensatz zu einem Sachkauf erwirbt der Käufer mit der Anschaffung einer Softwarelizenz nur die Rechte, eine Software zu nutzen. Der Quellcode und somit das geistige Eigentum bleiben weiterhin im Besitz des Softwareherstellers.[1]

Über die Art und Weise der durch die Lizenz erworbenen Nutzungsrechte gibt der Lizenzvertrag Auskunft. In Softwarelizenzverträgen können inklusive und exklusive Rechte vereinbart werden. Inklusive Rechte erlauben die bestimmte Nutzung einer Software oder deren (Teil-)Komponenten. Exklusive Rechte grenzen die Art und Weise der Nutzung ab.

Softwarelizenzen sind im privaten Umfeld eher unüblich und werden für gewöhnlich nur im Geschäftsumfeld verwendet. Eine Ausnahme stellt hierbei das Lizenzierungssystem bei freier Software dar. Hier wird pauschal eine Lizenz ausgesprochen, die für alle und somit auch die privaten Anwender, gilt.[2]

 

2.2 Softwarelizenzmanagement

Unter Softwarelizenzmanagement versteht man, die korrekte Ermittlung des Softwarebedarfs eines Unternehmens und die Umsetzung und Verwaltung eben dieses ermittelten Bedarfs. Im Rahmen eines gelebten Softwarelizenzmanagements sollte ein Unternehmen jederzeit in der Lage sein, aktuelle und exakte Zahlen zum Soft- und Hardwarebestand machen zu können. Des Weiteren sollte jederzeit eine genaue Aussage über die vorhandenen Lizenzen getroffen werden können und gegebenenfalls auch alle Nachweise dafür erbracht werden können.

Das Softwarelizenzmanagement ist kaufmännisch geprägt und befasst sich mit der organisatorischen Beschaffung, der Verwaltung und der Nutzung von Software, welche lizenzpflichtig ist.

Ziel des Softwarelizenzmanagements ist es, den Einsatz von lizenzpflichtiger Software in einem Unternehmen so zu steuern, dass nach wirtschaftlichen, lizenzrechtlichen und technischen Gesichtspunkten ein optimaler Einsatz gewährleistet ist.[3]

 

2.3 Software‑Asset‑Management

Einher mit dem Softwarelizenzmanagement geht das sogenannte Software‑Asset‑Management. „Asset“ bedeutet im Kontext des Softwarelizenzmanagements „wirtschaftliches Gut“. Im Gegenteil zum reinen Lizenzmanagement, dessen Begriff kaufmännisch geprägt ist, bezieht sich das Asset‑Management auf die technischen Bestandteile.

So umfasst das Software-Asset-Management das technische Monitoring, der installierten lizenzpflichtigen Software. Im Rahmen des Asset‑Managements wird eine Datenbasis generiert, die in verschiedenen Bereichen eines Unternehmens, wie zum Beispiel dem Controlling und der Verwaltung, zur Entscheidungsunterstützung für die Planung, den Einsatz und die Steuerung der Lizenzen verwendet werden kann.[4]

 

2.4 Raubkopie

Unter dem Begriff Raubkopie versteht sich jede Art der nicht autorisierten, ergo illegalen, Vervielfältigung einer Software. Hierbei ist es egal, ob es sich um eine physische Kopie eines mit der Software versehenen Datenträgers handelt, eine virtuelle Kopie, zum Beispiel über das Internet oder um eine Identitätsfälschung.[5]

 

3 Rechtliche Grundlagen

3.1 Lizenzverträge

Bei nicht Individualsoftware, also generalisierte Software, die eine Zielgruppe von mehreren Kunden hat, wird üblicherweise lizenziert statt verkauft. Mit dem Erwerb einer Lizenz entsteht eine, einem rechtsgültigen Vertrag ähnliche, Beziehung zwischen dem Hersteller als Urheber und dem Kunden als Lizenznehmer.

Mittels der Lizenzverträge wird geregelt, zu welchen Konditionen der Lizenznehmer das Produkt des Lizenzgebers nutzen darf. Hierbei herrscht weitestgehend eine Vertragsfreiheit, sodass sich die Inhalte eines Lizenzvertrags nicht pauschalisieren lassen. Jeder Hersteller kann seinen Lizenzvertrag so aushandeln, wie es ihm beliebt.[6]

Die häufigsten, in Lizenzverträgen festgelegten Rechte sind das Recht zum Herstellen, das Recht zum Vertreiben/Weiterlizenzieren und das Recht zum Nutzen. Je nach ausgehandeltem Lizenzvertrag kann dieser ein oder mehrere der eben genannten Rechte erlauben beziehungsweise untersagen.

Übliche Praxis von Herstellern ist es, die Installationsroutine eines Programms so zu gestalten, dass es nicht möglich ist, das Programm zu installieren, ohne den Lizenzbedingungen zuzustimmen. Dies wird auch so in Software für Privatanwender umgesetzt, was von Rechtsexperten jedoch immer wieder angezweifelt wird, da der (Privat-)Kunde beim Sachkauf einer Software nicht die Chance hatte, sich im Vorhinein über die Lizenzbedingungen zu informieren.[7]

Lizenzvertragsarten
Abbildung 1; Übersicht Lizenzvertragsarten

 

Nach heutiger Rechtslage ist der Erwerb von Standardsoftware, also jener generalisierten Software mit einer großen Käufergruppe, über § 453 ff BGB in die Sachkäufe mit einbezogen. Hierfür gelten sogenannte Lizenzvereinbarungen.

Für Individualsoftware hingegen wird nach § 680 ff BGB ein sogenannter Werks- oder. Dienstleistungsvertrag abgeschlossen. Dies ist der Tatsache geschuldet, dass bei Individualsoftware wesentlich höhere Ansprüche an die genaue Funktionsdefinition des Produkts gestellt werden, welche im Rahmen einer Lizenzvereinbarungen im Normalfall nicht getroffen werden.

Der Unterschied zwischen einem Werksvertrag und einem Dienstleistungsvertrag liegt in dessen zeitlicher Begrenzung. Bei einem Werksvertrag wird das Leistungsspektrum der zu erstellenden Software ausgehandelt und nach Fertigstellung der Software gehen die Nutzungsrechte an den Kunden über.

Ein Dienstleistungsvertrag hingegen ist zeitlich begrenzt und erlaubt die Nutzung auf Zeit eines Softwareprodukts. Nicht unüblich ist auch die Übernahme der Nutzungsrechte nach Ablauf eines Dienstleistungsvertrags. Dieses Vorgehen ähnelt dem eines Leasingvertrags.

 

3.2 Urheberrecht

Sowohl durch das deutsche Urheberrechtsgesetz als auch durch verschiedene internationale Urheberrechtsbestimmungen und Verträge ist Software urheberrechtlich geschützt.

In Deutschland ist Software unter dem Begriff der geschützten Werken der Literatur, Wissenschaft und Kunst unter § 2 des UrhG abgesichert.

Die wesentlichen Passagen im Urheberrechtsgesetz, die sich auf Computerprogramme beziehen, sind in § 69 in den Abschnitten a-g verankert.

Nach dem Urheberrecht reicht es also aus, wenn die Software ein individuelles Werk, welches aus einer eigenen geistigen Tätigkeit entstanden ist, darstellt.

Nach § 15 UrhG ist unterliegen dem Schöpfer, also dem Urheber der Software, die alleinigen Verbreitungs- und Vervielfältigungsrechte. Dritte dürfen die Software nur mit ausdrücklicher Genehmigung weiter verteilen oder bearbeiten. Diese erweiterten Rechte können mittels eines Lizenzvertrags zugesprochen werden. Geistiger Urheber bleibt jedoch weiterhin der Schöpfer.

Die einzige Ausnahme der Vervielfältigung nach § 15 UrhG stellt hierbei die Fertigung einer sogenannten Sicherheitskopie. Diese wiederum ist so definiert, dass sie dem „bestimmungsgemäßen Gebrauch des Programms“ entspricht. Sie darf weder weitergereicht, noch zur parallelen Installation und Nutzung der Software verwendet werden.

 

 

3.3 Softwarepiraterie

Wenn man über Softwarelizenzen spricht, geht ein weiteres Thema unweigerlich einher. Softwarepiraterie. Spätestens seit dem Einzug von Software in den Massenmarkt und die immer schnelleren und breiter verfügbaren Internetanschlüsse ist Softwarepiraterie zu einem der größten Probleme der Softwarehersteller geworden.

Es gibt zahlreiche Wege über die Raubkopien auf einen Computer gelangen können. Hierbei ergibt sich vor allem im Geschäftsumfeld ein Problem. Selbst, wenn der Unternehmer intensiv um ein funktionierendes Lizenzmanagement bemüht ist, so kann er kaum alle Einflüsse abstellen, über die illegale Kopien in das Unternehmen geladen können.

Exemplarisch hierfür steht zum Beispiel der Fall, dass ein Mitarbeiter mit einer Software auf der Arbeit unzufrieden ist. Aus diesem Grund bringt er eine alternative Software von sich zu Hause aus mit und installiert diese auf seinem Arbeitsrechner. Selbst, wenn er die Software zu Hause legal erworben hat, so garantiert dies noch lange nicht, dass er sie auch für den kommerziellen Einsatz an seinem Arbeitsplatz nutzen kann.

Um diesem Problem aus dem Wege zu gehen, müsste der Arbeitgeber alle Wege, über die Software von dritten auf die Firmeninfrastruktur gelangen könnte eliminieren. Ein Filtern und gegebenenfalls unterbinden von Downloads kann ein Schritt in die richtige Richtung sein. Doch führt man den Gedanken fort, so müssten auch alle Eingabemöglichkeiten, wie zum Beispiel USB-Ports blockiert werden. Und spätestens an dieser Stelle scheitert der Plan der Isolation in der Realität ziemlich schnell, da für jede derzeit handelsübliche Maus schon mindestens ein USB-Port frei bleiben müsste.

Effektiv bedeutet dies, dass es an dem Arbeitgeber ist, die Arbeitnehmer über die Risiken der Nutzung von nicht- oder falsch lizenzierter Software aufzuklären. Denn was vielen Mitarbeitern nicht bewusst ist, ist die Tatsache, dass im Falle einer im Unternehmen fehllizenzierten Software in jedem Fall das Unternehmen im Rahmen der sogenannten Organhaftung haftet. Zwar können natürlich auch die entsprechenden Mitarbeiter belangt werden, doch das Unternehmen steht im Sinne der Organhaftung in jedem Fall ein.

Hat ein Softwarehersteller einen hinreichenden Verdacht, dass in einem Unternehmen eines seiner Produkte illegal verwendet wird, so kann dieser auf Basis von § 809 des BGB bei Gericht eine Durchsuchung der Geschäftsräume und Compter beantragen.

Wenn das Gericht dem Antrag stattgibt, so kann solch eine Durchsuchung ohne Vorankündigung stattfinden. Bestätigt sich der Verdacht im Rahmen der Durchsuchung, kann ein nicht unerhebliches Strafmaß angelegt werden, sodass das Unternehmen mit erheblichen Konsequenzen rechtlicher sowie wirtschaftlicher Art rechnen muss.

Nach Angaben der Business Software Alliance (BSA), welche sich mit Softwarepiraterie auseinandersetzt, wird über ein Viertel der Software eines Unternehmens illegal eingesetzt. Hierbei ist anzumerken, dass illegal nicht mit wissentlich illegal gleichzusetzen ist, sondern auch der Tatsache eines fehlenden Softwarelizenzmanagements geschuldet sein kann.[8]

4 Ansätze zur Verteilung und Sicherung von Lizenzen

Im Folgenden soll es um den Aspekt der Sicherung von Softwarelizenzen aus der Sicht des Softwareherstellers gehen. Hierbei sollen verschiedene Ansätze aufgezeigt und erläutert werden, mit denen ein Softwarehersteller die korrekte Lizenzierung seiner Software sicherstellen kann.

Prinzipiell lässt sich die Umsetzung von Verfahren zur Lizenzprüfung in zwei Kategorien einteilen. Zum einen die offline-basierten Verfahren und zum anderen die online-basierten Verfahren. Beide bringen Ihre Vor- und Nachteile mit sich, welchen nachfolgend auch erläutert werden sollen.[9]

4.1 Offline

Offlineverfahren stellen die einfachste Variante der Verfahren zur Lizenzsicherung dar. Das simpelste Lösung wäre die Implementierung eines Algorithmus zur Erstellung von Lizenzschlüsseln seitens des Softwareherstellers. Mittels dieses Algorithmus kann der Softwarehersteller beliebig viele unterschiedliche Schlüssel generieren und diese an die Lizenznehmer, zusammen mit einer Kopie der Software, aushändigen.

Die Software wiederum prüft zu einem vorher definierten Zeitpunkt den angegebenen Lizenzschlüssel. Dies kann zum Beispiel bei der Installation oder bei jedem Start der Anwendung geschehen.

 

4.1.1 Nachteile

Die Nachteile an diesem Verfahren überwiegen. So sind verschiedene Szenarien zur Umgehung einer ordnungsgemäßen Lizenzierung denkbar.

  • Es kann eine Manipulation am Bytecode/Maschinencode der Software vorgenommen werden, sodass die Lizenzprüfungsroutine umgangen wird.
  • Es kann mittels Reverse Engineering der Algorithmus zur Lizenzschlüsselvalidierung erfasst und nachgebildet werden. Hier besteht sogar die Gefahr, dass ein passender Lizenzschlüsselgenerator erstellt wird, welcher wiederum das Erstellen von beliebig vielen, validen Lizenzschlüsseln erlaubt.
  • Durch die fehlende Onlineanbindung kann der Softwarehersteller nicht prüfen, ob eine Manipulation an der Software vorgenommen wurde oder ob ein valider Schlüssel eingesetzt wird.
4.1.2 Vorteile

Die Vorteile eines Offlinevalidierungsverfahren sind als passive Vorteile für einen Softwarehersteller zu bezeichnen. Passiv meint hier, dass durch das vereinfachte Verfahren eine größere Kundenzufriedenheit erreicht werden kann, welche sich wiederum absatzfördernd darstellen kann.

So gibt es immer noch eine hohe Anzahl an Kunden, die entweder keine Onlineanbindung haben oder ihre Computer beabsichtigt nicht an das Internet anbinden wollen. Diese Zielgruppe stände bei einer Software, die online aktiviert werden müsste, vor einem erheblichen Problem.

Bei eben dieser Zielgruppe kann einer erhöhte Nutzungsakzeptanz durch ein offline-basiertes Aktivierungsverfahren erzielt werden. Hier liegt der passive Vorteil für den Softwarehersteller.

 

4.1.3 Ansätze zur Verbesserung

Ein möglicher Ansatz zur Verbesserung des Schutzes vor Missbrauch der Software bei offline-basierten Lizenzüberprüfungsverfahren ist zum Beispiel die Nutzung eines hardwarebasierten Lizenzschlüssels, im weiteren Dongle genannt.

Bei einem Aktivierungsverfahren mittels Dongle werden bestimmte Eigenschaften, wie zum Beispiel ein hardcodierter Lizenzschlüssel oder die Seriennummer des Dongles ausgewertet und zur Validitätsüberprüfung genutzt.

Zwar bringt ein Dongle einen höheren Schutz für den Softwarehersteller mit sich, aber zeitgleich auch einen höheren Aufwand, da jede Kopie der Software auf einen spezifischen Dongle angepasst werden muss. Aus diesem Grund findet man Donglelösungen meist nur bei höherpreisigen Softwareprodukten.

Eine weitere Möglichkeit ist es, den in der Software implementierten Algorithmus zur Lizenzaktivierung, zu verschleiern und somit möglichst vor dem Zugriff durch Dritte zu schützen. Hierbei spricht man von „Security through Obscurity“, also Sicherheit durch Obskurität. Da der relevante Code jedoch weiterhin in der Software implementiert ist, kann dies nur ein Hindernis zur Entschleierung des Aktivierungsalgorithmus, jedoch keine Lösung sein.[10]

4.2 Online

Onlineverfahren unterscheiden sich von Offlineverfahren insofern, dass sie eine Verbindung mit dem Internet benötigen, um eine verwendete Softwarelizenz zu validieren. Hierdurch entstehen im Gegenteil zu Offlineverfahren mehrere Möglichkeiten zur Lizenzvalidierung.

So ist es möglich, bei der Lizenzierung der Software, eine eindeutige Hardware-ID des Computers auszulesen und an einen Server des Softwareherstellers zu schicken. Hier wird die Hardware-ID in einer Datenbank abgelegt und mit dem Kauf, also der Lizenz und seinem Besitzer verknüpft. Versucht der Nutzer nun die Software auf einem anderen Computer zu installieren, so wird der Server feststellen, dass die neue eindeutige Hardware-ID nicht im System vermerkt ist und daraufhin die Ausführung der Software unterbinden.

Alternativ kann auch, wie bei dem Offlineverfahren, ein Algorithmus für Lizenzschlüssel genutzt werden. Jedoch ist die Validierungsroutine nicht in der Software, also lokal auf Kundenseite, implementiert, sondern serverseitig. So kann sichergestellt werden, dass der Algorithmus nicht ohne Weiteres ausgelesen werden kann. Hierzu müsste sich ein Kunde erst mutwillig Zugriff auf die Serversysteme des Softwareherstellers verschaffen.

 

4.2.1 Nachteile

Einer der größten Nachteile der online-basierten Lizenzüberprüfung liegt in der Natur eines online-basierten Verfahrens selbst. So muss zur Validierung der Lizenz eine Onlineverbindung vorhanden sein. Ist diese nicht gegeben, so muss der Kunde dafür sorgen, dass diese gegeben ist. Handelt es sich bei dem Verfahren, um eine einmalige Prüfung, so kann der Kunde seinen Computer gegebenenfalls einmalig an einem Ort bringen, an dem er eine Onlineverbindung aufbauen kann. Handelt es sich jedoch um ein Verfahren, was bei jedem Start der Software den Lizenzschlüssel überprüfen möchte, so kann der Kunde die Software nicht ohne Weiteres benutzen.

Aufgrund eben dieses Onlinezwangs sind rein online-basierte Verfahren schon des Öfteren in die öffentliche Kritik geraten und genießen eine eher geringe Nutzerakzeptanz.[11]

Auch denkbar ist, ein Ausfall oder eine Überlastung der Serversysteme des Softwareherstellers. In diesem Fall kann ein zahlender Kunde seine Software nicht aktivieren und der Softwarehersteller kann seinem Teil der Lizenzvereinbarungen, der ordnungsgerechten Ausführung des Programms, nicht mehr nachkommen.

 

 

4.2.2 Vorteile

Durch die Onlineverbindung kann der Softwarehersteller die Hoheit über den Aktivierungsvorgang behalten. So muss er zum Beispiel den Aktivierungsalgorithmus nicht direkt in der Software implementieren und kann ihn so besser vor Missbrauch schützen.

Des Weiteren stehen dem Softwarehersteller durch den direkten Kontakt zum Kunden mehr Möglichkeiten zur Verfügung, um die Echtheit der vom Kunden verwendeten Lizenz zu überprüfen. So ist es bei Onlineaktivierungsverfahren auch möglich, festzustellen, ob und gegebenenfalls sogar wie oft, eine Lizenz eingesetzt wird und bei Missbrauch einzuschreiten.

 

4.2.3 Ansätze zur Verbesserung

Einen der größten Nachteile ist die zwingende Onlineverbindung seitens des Kunden. Steht diesem kein Internetanschluss zur Verfügung, kann er die Software nicht aktivieren beziehungsweise nutzen. Dies kann soweit führen, dass der Kunde sich wegen des Onlinezwangs gegen das Produkt eines Softwareherstellers entscheidet, obwohl das Produkt eigentlich jenes gewesen wäre, was seinen Anforderungen am besten entspricht.

Ein möglicher Lösungsansatz ist es in diesem Fall, eine Fallbacklösung zu schaffen, sodass Lizenznehmer das Produkt auch aktivieren können, wenn ihnen keine Onlineverbindung zur Verfügung steht.

Weitere Details zu diesem Ansatz werden in nachfolgendem Punkt dieser Ausarbeitung erläutert.

 

4.3 Hybride Verfahren

Hybride Verfahren stellen eine Mischung aus On- und Offlineverfahren dar. So wird im Rahmen einer Fallbacklösung die Möglichkeit geschaffen, die Validität einer Lizenz beziehungsweise dessen Lizenzschlüssels, zu überprüfen, auch wenn keine Onlineverbindung zur Verfügung steht.

Auf diesem Wege kann sichergestellt werden, dass ein rechtmäßiger Lizenznehmer die Software in jedem Fall aktivieren kann. Als Fallbacklösung kann ein offline-basiertes Verfahren genutzt werden, wie es zum Beispiel in Punkt 4.1 dieser Arbeit besprochen wurde. Alternativ kann aber auch auf Lösungen wie eine Telefonaktivierung zurückgegriffen werden.

 

4.3.1        Nachteile

Die Nachteile einer hybriden Lösung sind dieselben, welche auch bei einem offline-basierten Verfahren auftreten, da bei nicht vorhandener Internetverbindung auf ein Offlineverfahren zurückgegriffen wird.

 

4.3.2 Vorteile

Ist eine Onlineverbindung vorhanden, so kann der Softwarehersteller von den Vorzügen (vgl. 4.2.2) einer online-basierten Aktivierung profitieren. Gleichzeitig umgeht er eines der größten Probleme der rein online-basierten Verfahren. Es besteht keine Gefahr, dass sich die Zielgruppe aufgrund eines Onlinezwangs verkleinert.

 

4.4 Echtzeitpersonalisierung

Ein weiterer Ansatz, der im Bereich der Onlineverfahren angesiedelt ist, ist die Echtzeitpersonalisierung. Der Grundgedanke hierbei ist es, die Software mit einem oder mehreren kundenspezifischen Merkmalen zu versehen.

Hierdurch soll dem Kunden bewusst werden, dass eine missbräuchliche Verwendung der Software mit seiner Person in Verbindung gebracht werden kann. Dadurch soll eine abschreckende Wirkung entstehen und der Missbrauch eingedämmt werden.

Das größte Problem hierbei ist dasselbe, welches auch bei der Nutzung von Dongles und anderen hardwarebasierten Lösungen auftritt. Jede Kopie einer Software muss individualisiert werden und dies bedeutet zusätzlichen Aufwand für den Softwarehersteller. Das massenhafte Pressen einer Software auf CD/DVD/BluRay fällt somit außer Frage.

Ein möglicher Ansatz kann hierbei eine intelligente Downloadinfrastruktur sein, welche ich nachfolgend weiter erläutern möchte.

Ausgangslage für dieses Verfahren ist eine Onlineplattform, über welche der Kunde die Software beziehen kann. Nach dem Kauf einer gültigen Lizenz soll der Kunde das Softwareprodukt herunterladen können. Im Rahmen des Lizenzkaufs hat der Kunde seine persönlichen Daten auf den Server des Softwareherstellers hinterlegt.

Startet der Kunde nun den Download der Software, so wird im Rahmen des Downloadmechanismus die ausführbare Programmdatei ins System geladen, die persönlichen Daten des Kunden automatisiert eingeladen und danach der Download für den Kunden bereitgestellt.

Mit diesem System gewinnt der Softwarehersteller ein weiteres Plus an Sicherheit, ohne den Aufwand pro Kunde zu erhöhen. Ein erhöhter Aufwand besteht nur bei der Grundkonfiguration des Systems. Ob und wann sich dieser Aufwand amortisiert, muss im Rahmen einer Kosten-Nutzen-Analyse im Vorhinein kalkuliert werden. Die wichtigsten Faktoren hierbei sind die voraussichtlichen Absatzzahlen der Software sowie die geplanten Gewinne pro abgesetzter Softwarekopie.

 

4.4.1 Technische Aspekte der Echtzeitpersonalisierung

Vor der Kompilierung der Software wird an geeigneter Stelle im Quellcode ein Datenobjekt erschaffen, welche die personalisierten Daten eines Kunden halten soll. Dieses muss so implementiert werden, dass es eine fixe Größe hat, also keinen Speicher, abhängig von dessen Inhalt, dynamisch allozieren kann.

Nach der Kompilierung wird das Kompilat mittels eines geeigneten Tools, wie zum Beispiel einem Hexeditor, geöffnet und nach einem Merkmal der Kundeninformationen gesucht. Werden diese gefunden, so lässt sich aus der Tatsache, dass eine fixe Speichergröße für das Kundenobjekt belegt wurde, der Speicherbereich im Kompilat bestimmen, an dem die Kundendaten abgelegt sind.

Mit diesem Wissen lässt sich wiederum eine Softwareroutine schreiben, die auf binärer Ebene beliebige Kundendaten in den entsprechenden Speicherbereich des Kompilats einpflanzen kann.[12]

Mittels einer Verknüpfung dieser Routine mit der Downloadinfrastruktur des Softwareherstellers kann voll automatisiert und in Echtzeit, wobei die Anforderungen an die Echtzeit in diesem Fall eine für den Kunden nicht merkbare Wartezeit bedeutet, eine individualisierte Kopie der Software für den Kunden erstellt werden.

 

4.5 Sicherheit versus Kundenfreundlichkeit

Generell lässt sich sagen, dass die Schwierigkeit bei Lizenzierungsverfahren, egal welcher Art, für den Hersteller immer darin liegt, einen idealen Kompromiss zwischen Komplexität und Sicherheit zu finden.

Ist die Komplexität des Lizenzierungs- und des dazugehörigen Lizenzaktivierungsverfahrens zu hoch, so drückt sich dies in der Usability der Software und somit in der Akzeptanz der Kunden der Software gegenüber aus.

Ist die Komplexität zu gering, muss der Softwarehersteller davon ausgehen, dass die Softwarepiraterie‑Rate seines Produkts höher sein wird und ihm Verkäufe und somit Einnahmen entgehen werden.

5 Fazit

Das Thema Softwarelizenzierung wird in seiner Komplexität meist immer noch unterschätzt. Sowohl für den Kunden als auch für den Softwarehersteller ist mit der ordnungsgemäßen Lizenzierung und der Absicherung der Einhaltung eben dieser ein erheblicher Aufwand verbunden.

Vor allem im Unternehmensumfeld muss noch viel getan werden, um die korrekte Lizenzierung der in einem Unternehmen eingesetzten Software zu gewährleisten. Hier liegt es an den Entscheidern der jeweiligen Unternehmen zum einen ein funktionierendes Softwarelizenzmanagement einzurichten und zum anderen eine klare Leitlinie für die Mitarbeiter zu entwickeln, um diese für die möglichen Schäden, die dem Unternehmen beim Einsatz von nicht lizenzierter oder privat eingeführter Software entstehen können, zu sensibilisieren.

Mit oben genannten Verbesserungen würde sich der Umsatz der Softwarehersteller steigern und es würde vielleicht eine Verbesserung der aktuellen Lizenzierungssituation für die Kunden eintreten. Weg von verkomplizierten und von äußeren Faktoren abhängigen Lizenzaktivierungsmechanismen, hin zu vereinfachteren und kundenfreundlicheren Verfahren.

 


 

I Literaturverzeichnis

[1] Andreas Böhm LL.M., RA, Dipl.-Kfm. Der Lizenzvertrag [Online] // böhmanwaltskanzlei.. – 20. 06 2012. – 29. 05 2013. – http://www.boehmanwaltskanzlei.de/lizenzvertrag.

[7] Andresen Fred und Bantle Ulrich Fallstricke im End User License Agreement [Online]. – 03 2007. – 29. 05 2013. – http://www.linux-magazin.de/Ausgaben/2007/03/Ich-seh-dich-nicht.

[8] BSA (Business Software Alliance) Studie: IDC Pirateriezahlen [Online]. – 29. 05 2013. – http://ww2.bsa.org/country/Anti-Piracy/Anti-Piracy%20Information/The%20Costs%20of%20Piracy.aspx.

[11] Demgen Annika Verbraucherzentrale: Verwarnung für Electronic Arts wegen Origin [Online] // Netzwelt.de. – 01. 12 2011. – 29. 05 2013. – http://www.netzwelt.de/news/89731-verbraucherzentrale-verwarnung-electronic-arts-wegen-origin.html.

[9] Faust Florian Softwareschutz durch Produktaktivierung [Journal] // Kommunikation & Recht. – 2002. – S. 583 ff.

[2] Free Software Foundation, Inc. Was ist freie Software? [Online] // GNU Betriebssystem. – 2012. – 29. 05 2013. – https://www.gnu.org/philosophy/free-sw.de.html.

[12] Kuleshov Eugene Using the ASM Toolkit for Bytecode Manipulation [Online] // onJava.com. – 10. 06 2004. – 29. 05 2013. – http://www.onjava.com/pub/a/onjava/2004/10/06/asm1.html.

[5] Mag. Dr. Helmut Siller Msc Raubkopie [Online]. – 29. 05 2013. – http://wirtschaftslexikon.gabler.de/Archiv/1408499/raubkopie-v1.html.

[4] Microsoft Software Asset Management [Online]. – 2013. – 29. 05 2013. – https://www.microsoft.com/sam/en/us/overview.aspx.

[10] Schneier Bruce Security through Obscurity [Online] // Schneier on Security. – 18. 06 2008. – 29. 05 2013. – https://www.schneier.com/blog/archives/2008/06/security_throug_1.html.

[6] TU Berlin Software-Lizenzen [Online]. – 29. 05 2013. – http://ig.cs.tu-berlin.de/oldstatic/w2000/ir1/referate1/k-1b/swlicense.html.

[3] Wirtschaftsprüfungsgesellschaft KPMG Lizenzmanagement in deutschen Unternehmen. – [s.l.] : www.kmpg.de, 2003.

 

 

II Abkürzungsverzeichnis

 

BGB Bürgerliches Gesetzbuch
BSA Business Software Alliance
ID Identifikationsmerkmal
UrhG Urheberrechtsgesetz
USB Universal Serial Bus (Universelle serielle Schnittstelle)

 

III Glossar

 

Bytecode/Maschinencode Bytecode oder Maschinencode ist der Code, der bei der Kompilierung eines Programmquelltextes erzeugt wird. Bytecode unterscheidet sich von Maschinencode in dem Sinne, dass er für die Ausführung in einer virtuellen Umgebung, wie zum Beispiel Microsofts .NET-Framework gedacht ist, wohingegen Maschinencode direkt auf unterster Ebene ausgeführt werden kann.
Dongle Ein Dongle, auch Kopierschutzstecker, ist ein Stück Hardware, welches zu Identifikationszwecken genutzt wird, um die Validität einer Lizenz überprüfen zu können.
Fallbacklösung Als Fallbacklösung wird in der IT eine Rückfallvariante oder Rückfalllösung bezeichnet, die einspringt, wenn ein System nicht wie erwartet funktioniert.
Hexeditor Ein Hexeditor ist eine Software, die es ermöglicht, die Bytes beliebiger Dateien in hexadezimalerweise darzustellen, zu durchsuchen und zu bearbeiten.
Kompilat Als Kompilat bezeichnet man die Ausgabe des Kompilers, nachdem dieser einen Quelltext kompiliert hat.
Kompiler Ein Kompiler ist eine Software, die Quelltext in eine ausführbare Form, das sogenannte Kompilat, überführen kann.
Kompilieren Kompilieren bezeichnet den Vorgang eines Kompilers zur Überführung von Quelltext in ausführbaren Code.
Reverse Engineering Reverse Engineering, wörtlich „umgekehrtes Entwickeln“, bezeichnet im Softwareumfeld die Tätigkeit ein fertiges Programm/Produkt zu entschlüsseln, dessen Funktionsweise zu verstehen und gegebenenfalls nachzubilden.Hierzu stehen verschiedene Werkzeuge wie Hexeditoren oder Decompiler zur Verfügung.

 

Keine Kommentare

SCHREIBE EINEN KOMMENTAR