IT-Experte: „Licence on Blockchain macht den Kauf von Gebrauchtsoftware einfach, nachvollziehbar und sicher“

Was bisher mit großem Aufwand verbunden war, wird durch die Blockchain-Technologie nun erleichtert

Auch wenn der Markt für Gebrauchtsoftware beständig wächst, stehen ihm viele Unternehmen weiterhin skeptisch gegenüber. Der Grund: Sie müssen durch umfangreiche Dokumentationsnachweise belegen, dass sie legal gekaufte Zweitlizenzen nutzen. Was bisher mit großem Aufwand verbunden war, wird durch die Blockchain-Technologie nun erleichtert. Dr.-Ing. Peter J. Hoppen, von der IHK Köln öffentlich bestellter und vereidigter Sachverständiger für Systeme und Anwendungen der Informationsverarbeitung, erklärt, wie das funktioniert.

Frage: Herr Dr. Hoppen, der Kauf von Gebrauchtsoftware ist zweifelsfrei legal und lohnenswert. Dennoch ist Software aus zweiter Hand längst nicht flächendeckend verbreitet. Warum zögern Interessenten noch?

Antwort: Dass trotz eines legalen Marktes Unsicherheit herrscht, liegt daran, dass es sich bei Software um digitale Güter handelt. Das Problem mit digitalen Gütern: Eine Datei kann vervielfältigt werden, ohne dass man dies der Ausgangsdatei ansehen würde. So weiß man nie genau, wie viele Kopien dieser Datei existieren.

Aus diesem Grund gab es bis dato auch keine virtuellen Währungen. Erst die Erfindung der Blockchain durch Satoshi Nakamoto machte dies möglich. Mit der Blockchain hat er ein Verfahren entwickelt, das die illegale Vervielfältigung dadurch ausschließt, dass die gesamte Historie des digitalen Guts aufgezeichnet wird.

Dieses Prinzip wird nun auf Softwarelizenzen angewendet.


Frage: Wie genau funktioniert die Blockchain?

Antwort: Man führt ein Transaktionsverzeichnis, in dem die Transaktionen, also die Weitergaben digitaler Objekte, immer wieder in neuen Blöcken an eine Kette gehangen werden. Es wird also immer ein neuer Block gebildet, der dem gesamten Verzeichnis hinzugefügt wird, deswegen Blockchain.

Der springende Punkt: Das Transaktionsverzeichnis wird nicht von einem Rechner geführt, sondern die Informationen werden auf beliebig vielen involvierten Rechnern redundant abgelegt. Der Zugriff ist demnach dezentral.

Die Rechner sind Knoten eines Netzwerks, die die Blockchain permanent untereinander abgleichen. Um sicherzustellen, dass sich alle Knoten immer auf einen verbindlichen Stand einigen, gibt es einen zuverlässigen Mechanismus.


Frage: Wie funktioniert dieser Mechanismus?

Antwort: Das Schlagwort ist trustless trust, also Vertrauen in einer nicht vertrauenswürdigen Umgebung. Jedem einzelnen kann man mit Recht misstrauen, doch durch diesen Abstimmungsmechanismus ergibt sich Vertrauen.

Das funktioniert folgendermaßen: Abgesehen von den Blockchain-Knoten gibt es die restliche Welt, die das System für Transaktionen nutzen möchte. Soll eine bestimmte Zahl von Bitcoins übertragen werden, geht eine entsprechende Transaktion an einen Knoten, von wo aus sie weiterverbreitet wird. So gelangt die Aufgabe in einen Pool von noch in die Blockchain aufzunehmenden Transaktionen. Auf diesen Pool greifen alle Knoten zu. Jeder Knoten versucht, Transaktionen aus diesem Pool in einem neuen Block zu bündeln.

Das geschieht über ein mathematisches Rätsel, dessen Lösung ein Hashwert ist. Hat ein Knoten einen solchen Hashwert gefunden, kann er den von ihm gebildeten Block mit Transaktionen dem Netzwerk vorschlagen. Daraufhin wird dieser von den Nachbarknoten geprüft, für korrekt befunden und an die Blockchain angehangen, um wieder den jeweils benachbarten Knoten zur Prüfung vorgeschlagen zu werden. So einigt sich die Blockchain schließlich per Mehrheit auf den Block und die Transaktionen werden aus dem Pool entfernt.

Dadurch, dass jede Transaktion in einem neuen Block von jedem Blockchain-Knoten geprüft wird, entsteht Fälschungssicherheit. Es ist natürlich möglich, einen Block vorzuschlagen, der eine manipulierte Transaktion enthält. Doch dies würde bei der Prüfung deutlich, die anderen Knoten würden den neuen Block nicht akzeptieren. So kann keine Mehrheitsmeinung entstehen, der korrumpierte Block würde verworfen.


Frage: Soft & Cloud bietet seinen Kunden nun „Licence on Blockchain“ (LOB) an. Wie funktioniert dies und welcher Nutzen ergibt sich daraus für den Handel mit gebrauchter Software?

Antwort: Um „Licence on Blockchain“ zu erklären, muss man zunächst ein anderes Thema ansprechen: die sogenannten Smart Contracts. Denn auf der Blockchain können nicht nur Transaktionen validiert werden, sondern auch kleine Programme, die bedingte Anweisungen ausführen und Datenbestände speichern. Diese nennen sich Smart Contracts.

Der Smart Contract, der für LOB programmiert wurde, führt ein Verzeichnis. Darin steht beispielsweise, dass die Softwarelizenz mit der Seriennummer XYZ eine Microsoft-Office-Lizenz für 100 User ist. Aufgabe des Smart Contracts ist, diese einem bestimmten Konto auf der Blockchain zuzuordnen. Er ist so programmiert, dass maximal nur so viele Lizenzen übertragen werden können, wie der Verkäufer auch tatsächlich besitzt. Wenn diese Zuordnung einmal auf der Blockchain steht, ist sie nicht mehr veränderbar, das Prinzip des trustless trust verhindert dies.

Ein weiterer Vorteil: Der Vorgang findet nicht auf einem zentralen Server statt, der einfach abgeschaltet werden könnte. Weil weder Manipulation noch Abschalten möglich sind, ist das System nicht korrumpierbar.

Der große Nutzen dieses Verfahrens ist, dass die Übertragung von Softwarelizenzen viel einfacher und standardisiert wird und alle Übertragungen auch für jeden von außen nachvollziehbar werden. Dadurch haben Kunden, aber auch die Softwarehersteller selber, die Sicherheit des lückenlosen Nachweises der Übertragungskette beim Transfer geprüfter Lizenzen.


Frage: Welche Informationen zur Lizenz sind im LOB enthalten und wie kann der Kunde diese einsehen? Kann er sich damit beispielsweise auch davor schützen, Lizenztypen zu erwerben, die für seinen Einsatzzweck nicht geeignet oder gewünscht sind?

Antwort: Eine LOB-Lizenz enthält eine Beschreibung und eine Codierung des Lizenztypen. Beide Angaben werden vom Erstaussteller, also der LOB-Bescheinigungsstelle, so festgesetzt, dass die Lizenz eindeutig beschrieben ist. Diese Informationen können in der LOB-Wallet eingesehen werden. LOB kennt als Verfahren natürlich nicht die spezifischen Anforderungen eines jeden Nutzers und kann daher auch nicht einschätzen, welche Lizenzen für dessen Einsatzzweck geeignet sind. Der Nutzer kann aber wie oben beschrieben den Lizenztypen, den er erwerben will, in der Wallet einsehen. Wenn er nicht sicher ist, ob eine Lizenz geeignet ist, muss externe Beratung hinzugezogen werden.


Frage: Damit eine gebrauchte Softwarelizenz legal verkauft werden darf, müssen bestimmte Bedingungen erfüllt sein. Welche sind das und inwiefern hilft LOB, um nachzuweisen, dass diese Bedingungen erfüllt sind?

Antwort: Der Gebrauchtsoftwarehandel muss so organisiert sein, dass die legitimen Interessen des ursprünglichen Lizenzgebers gewahrt bleiben. Das heißt, dass immer nur so viele Lizenzen gebraucht verkauft werden dürfen, wie ursprünglich ausgegeben wurden. Zudem muss die Übertragungskette der Lizenzen nachweisbar bleiben.

Ohne LOB stellt dies die Gebrauchtsoftware-Branche vor große Probleme. Bei der Erstübertragung von gebrauchter Software sind die Vorgaben noch leicht zu erfüllen: Der erste Lizenznehmer hat eine Rechnung vom Hersteller, die er im Verkaufsfall kopiert und damit nachweist, dass er die Lizenz gekauft hat. Möchte aber der nächste Lizenznehmer die Software wieder verkaufen, muss er diese Kopie und die Kopie des Herstellers dazugeben. Es ergibt sich also ein Sammelsurium von Belegen, von denen man außerdem nicht weiß, ob diese nicht mehrfach kopiert wurden. Bei mehrfacher Weitergabe kann dies die Idee des Gebrauchtsoftwarehandels ad absurdum führen. Die Preisvorteile zählen für Unternehmen nicht mehr, wenn sie zu jeder Lizenz einen Stapel an Unterlagen vorhalten müssen, die im Streitfall mit dem Hersteller auch noch angezweifelt werden.

LOB ändert dies nun: Es gibt ein Verzeichnis und einen Smart Contract, der in seiner Logik nachprüfbar ist, weil es sich um Open-Source-Software handelt. Die Kette von Übertragungen ist also nachvollziehbar und zwar auch noch nach der X-sten Übertragung.


Frage: Wie soll mit LOB sichergestellt werden, dass die Lizenzen nicht schon vor ihrer Eintragung in die Blockchain vervielfältigt wurden?

Antwort: Dazu gibt es in dem LOB-Verfahren eine spezielle Rolle, die sogenannte LOB-Bescheinigungsstelle. Diese kann und muss bei der erstmaligen Bescheinigung einer Lizenz auf der Blockchain, sicherstellen, dass die Lizenz nicht zuvor vervielfältigt wurde. Anschließend haftet sie für die Korrektheit ihrer Überprüfung, so dass der Erwerber sicher sein kann, dass eine per LOB bescheinigte Lizenz gültig ist. Bei der Prüfung kann die LOB-Bescheinigungsstelle die gleichen Verfahren anwenden, die aktuell auch beim Gebrauchtsoftwarehandel angewandt werden. Insofern kann ein seriöser Gebrauchtsoftwarehändler sehr gut die Rolle einer LOB-Bescheinigungsstelle ausfüllen.


Frage: Was hilft dem Kunden im Fall einer doppelt vorhandenen Lizenz dann die Blockchain, um nachzuweisen, dass seine Version die gültige ist?

Antwort: Die LOB-Bescheinigungsstelle haftet für die Korrektheit der auf der Blockchain von ihr bescheinigten Lizenz. Da sich bescheinigte LOB-Lizenzen auf der Blockchain nicht vervielfältigen lassen, kann sich der Inhaber einer LOB-Lizenz sicher sein, dass die ihm zugeordnete Lizenz gültig ist. In Streitfällen kann er sich auch nach der x-ten Weitergabe einer Lizenz auf die ursprünglichen Prüfhandlungen und Zusicherungen der LOB-Bescheinigungsstelle berufen.


Frage: Doch auch ein für jeden nachvollziehbarer und standardisierter Eintrag auf der Blockchain könnte initial falsch sein – der Smart Contract kann dies nicht prüfen. Woher kommt die Bestätigung, dass die Lizenzen legal im Handel sind?

Antwort: Das ist eine Leistung, die beispielsweise der Gebrauchtsoftwarehändler in der Rolle als LOB-Bescheinigungsstelle erbringt. Möchte ein Händler gebrauchte Software verkaufen, muss er zunächst prüfen, ob die angebotene Ware legal ist und nicht etwa bereits zuvor verkauft worden ist. Dies muss er sich vom Verkäufer vertraglich bestätigen lassen. Es ist eine typische Leistung von Gebrauchtsoftwarehändlern, dieses Vertrauen herzustellen, so die Verantwortung für die Konformität zu tragen und damit die Grundlage für den Handel zu schaffen. In dem LOB-Verfahren dokumentiert der Gebrauchtsoftwarehändler den erfolgreichen Abschluss seiner Prüfhandlungen durch die erstmalige Bescheinigung der Lizenzen auf der Blockchain. Die Bestätigung der bescheinigenden Stelle kann in Form eines Zertifikatstextes aus dem zugrundeliegenden Smart Contract ausgelesen und angezeigt werden.


Frage: Microsoft verlangt von den Nutzern beim Einsatz von gebrauchter Software eine unterzeichnete Löschungserklärung des Erstbesitzers und eventueller weiterer Vorbesitzer. Wie soll die Blockchain mit LOB diese Vorgabe im Falle eines Audits erfüllen?

Antwort: Das LOB-Verfahren sieht zwei Mechanismen vor. Erstens bestätigt der Folgeerwerber mit einer Übertragung der LOB-Lizenz in dieser Transaktion, dass er die Löschung vorgenommen hat. Das ist rein organisatorisch, und technisch nicht abgesichert. So läuft es heute meines Wissens auch im konventionellen Gebrauchtsoftwarehandel. Zweitens bietet das LOB-Verfahren spezielle Transaktionen an, mit denen Lizenzen aus einer Lizenz-Bescheinigung technisch an eine konkrete Software-Installation gebunden werden können. Die Weiterveräußerung einer so gebundenen Lizenz ist dann erst möglich, wenn die Bindung wieder aufgehoben wurde. Softwarehersteller haben dadurch die Möglichkeit, Ihre Software so zu erweitern, dass die konkrete Installation zyklisch die Zuordnung einer Installation auf der Blockchain prüft und nur in diesem Fall voll funktionsfähig ist. Wird das LOB-Verfahren so genutzt, wird die Löschungserklärung und Unbrauchbarmachung einer Lizenz in einer eigenen LOB-Transaktion mittels der Blockchain dokumentiert und durchgesetzt. Dies erfordert freilich aktive Handlungen des Softwareherstellers durch Einbindung eines LOB-Lizenzcheckers in seine Software. Damit würde die Situation gegenüber dem derzeitigen Gebrauchtsoftwarehandel qualitativ auch für den Softwarehersteller deutlich verbessert und automatisiert.


Frage: Im Endeffekt bleibt also auch mit der Blockchain die gleiche Krux wie bisher: Der Kunde muss entweder darauf vertrauen, dass der Händler die Lizenzen sauber überprüft hat – was eben häufig nicht der Fall ist – und ihm im Fall eines Audits alle notwendigen Dokumente zur Verfügung stellen kann. Oder er sucht sich einen Händler, der ihm die entsprechenden Dokumente offenlegt, sodass er diese auch überprüfen kann. Wo also liegt also genau der Vorteil in der Rechtssicherheit, wenn der Nutzer sich mit der LOB einen Papierstapel erspart, den er dem Hersteller im Zweifelsfall aber vorweisen können muss?

Antwort: Das LOB-Verfahren liefert die technische Basis für die von Ihnen skizzierten rechtlichen Auseinandersetzungen. Quelle des Vertrauens in dem LOB-Verfahren ist die LOB-Bescheinigungsstelle – eine Rolle, die der Gebrauchtsoftwarehändler, aber auch unabhängige Akteure übernehmen können – und deren Bereitschaft, ihre Prüfprozesse zu dokumentieren und gegenüber Folgeerwerbern offenzulegen.

Es ist auch durchaus denkbar, dass die Prüf- und Auskunftsqualitäten einer LOB-Bescheinigungsstelle ihrerseits wiederum von unabhängigen Prüfinstitutionen, wie etwa einem TÜV, zertifiziert werden. Das könnte auch Aufgabe einer LOB Foundation sein.