Kategorien: Security

Lizenzierung und Schutz von Industrial Edge Devices

Erleben wir durch die zunehmende Bedeutung von SaaS den Abschied von der Softwarelizenzierung, wie wir sie bisher kennen? Nicht alle Lösungen eignen sich für das SaaS-Modell, wodurch die Containerisierung in Edge-Computing-Umgebungen die Lizenzierung nun noch komplexer werden lässt.

Was ist Edge Computing?

Die Zeiten, in denen die Datenverarbeitung ausschließlich auf lokaler Hardware stattfand, sind vorbei. Der Aufstieg von Software-as-a-Service (SaaS) hat die Art und Weise verändert, wie Unternehmen arbeiten. Predictive Maintenanceund CRM-Systeme, die früher auf lokalen Servern gehostet wurden, befinden sich beispielsweise jetzt oft in der Cloud und sind für die Nutzer über das Internet zugänglich.

Edge Computing findet an der Schnittstelle zwischen den beiden Welten statt. Anwendungen werden statt in der Cloud jetzt direkt in den Anlagen des Benutzers ausgeführt, was die Datenübertragung in die Cloud auf ein Minimum reduziert. Durch die Ausführung eines Teils der Datenverarbeitung vor Ort reduziert Edge Computing die Latenzzeit und ermöglicht die Datenverarbeitung in nahezu Echtzeit. Sensible Daten und Algorithmen können in den Anlagen des Kunden verbleiben, wodurch Datensicherheit und die Einhaltung von Datenschutzvorschriften gewährleistet sind.

Herausforderungen der Softwarelizenzierung

Für Softwarehersteller ist es von entscheidender Bedeutung, die Kontrolle über die Verbreitung ihrer Produkte zu behalten, da unbefugte Nutzung eine Bedrohung für ihr gesamtes Geschäftsmodell darstellen kann. Die technologische Entwicklung und der zunehmende Druck durch Softwarepiraterie erfordern eine ständige Anpassung der Methoden zum Schutz und zur Lizenzierung von Software.

Das gilt genauso für Edge Computing. Der Begriff Edge Computing sagt eigentlich nichts über die verwendete Systemarchitektur oder Hardware aus. In den allermeisten Fällen laufen auf diesen Geräten tatsächlich verschiedene Container. Durch die Containerisierung ist es deutlich einfacher geworden, die in diesen Containern laufenden Applikationen zu kontrollieren und im Zaum zu halten.

Zu den Herausforderungen gehört, dass Edge Computing in zahlreichen verschiedenen Kontexten zum Einsatz kommt und die Geräte beispielsweise nicht immer durchgehend online sein können. Dann muss man dafür sorgen, dass sie auch ohne Internetverbindung betrieben werden können und dass die Lizenzeinhaltung trotzdem sichergestellt ist.

Einmal mehr müssen sich Produktmanager, Softwarearchitekten und Entwickler für jeden Typ von Applikationen, die auf dem Edge Device laufen sollen, überlegen, wie ihre Anforderungen an Schutz des geistigen Eigentums und die Lizenzeinhaltung konkret aussehen.

Es liegt auf der Hand, dass diese Überlegungen bereits in den frühen Phasen der Planung und Entwicklung einfließen sollten.

Lösungsmöglichkeiten

Ein großer Vorteil der CodeMeter-Lösung von Wibu-Systems ist, dass für alle CmContainer-Typen die Adressierung und kryptografische Verwendung der Lizenzen identisch ist, sodass die Auslieferung der Lizenzen individuell an die jeweiligen Bedürfnisse angepasst werden kann. Beim Verschlüsseln der Applikation muss also noch nicht entschieden werden, wie später die Lizenz ausgeliefert werden soll.

CmDongle

Sofern es technisch realisierbar ist, kann mit dem CmDongle eine dedizierte Hardware mit eingebautem Krypto-Chip, der als Container dient, verwendet werden. Da ein CmDongle gleichzeitig nur mit genau einer CodeMeter-Komponente verbunden werden kann, ist es bei mehreren Containern übliche Praxis, einen Container mit einem CodeMeter Lizenzserver mit Zugriff auf den CmDongle zu betreiben, und den anderen Containern die Lizenzen über diesen verfügbar zu machen.

CmActLicense

Als weiteren CmContainer-Typ gibt es die CmActLicense als softwarebasierte Lizenz mit Bindung an Systemeigenschaften. Entscheidend für das Sicherheitsniveau ist die Bindung der Lizenz an einen sicheren Anker. Dafür werden normalerweise zahlreiche Systemeigenschaften ermittelt und mit dem patentierten SmartBind-Verfahren zu einem fehlertoleranten Fingerabdruck kombiniert.

Die Durchsetzung der systemgebundenen Lizenzierung ist in einer Container-Umgebung schwieriger, da Container dafür entwickelt wurden, alles möglichst gut zu abstrahieren und Datenverkehr zum Host oder zu anderen Containern auf gewünschte Transfers zu beschränken. Damit sind die üblicherweise verwendeten System-Merkmale nicht auszulesen und es ist ebenso nicht möglich, die Daten der Lizenz zu persistieren.

Konkret im Docker-Umfeld hat Wibu-Systems daher eine Bindung für CmActLicense angepasst: Die Daten werden in einem sogenannten Named Volume gespeichert und gleichzeitig an dieses Named Volume gebunden. Damit ist ein einfaches, unauthorisiertes Kopieren oder Transferieren von Lizenzen nicht möglich. Allerdings werden für diese Funktionalität auch erhöhte Rechte für den zugreifenden Container benötigt. Damit eine CmActLicense in einen Container installiert werden kann, muss dies vom Lizenzgeber entsprechend freigeschaltet werden.

CmCloudContainer

Eine ebenfalls sehr sichere Variante ist die cloudbasierte Lizenzierung mit CmCloudContainern. Die in der Lizenz enthaltenen Schlüssel verlassen nie die von Wibu-Systems betriebene Private Cloud; alle kryptografischen Operationen werden dort durchgeführt. Voraussetzung für die Verwendung eines CmCloudContainers ist natürlich eine Internetverbindung.

Diese Internetverbindung muss für eine verlässliche Lizenzierung dauerhaft und stabil zur Verfügung stehen. Ist das nicht garantiert, bietet sich es an, wie oben bereits beschrieben, den Schutz des geistigen Eigentums von der Lizenzierung zu trennen und letztere tolerant auszugestalten.

Um die Ecke

Neben den bisher aufgezeigten Möglichkeiten gibt es noch die indirekte Verwendung von CodeMeter-Lizenzen. Das Edge Device oder ein darauf laufender Container mit CodeMeter Lizenzserver kann eine Verbindung zu einem belieben CodeMeter Lizenzserver im Netzwerk herstellen. An diesem können dann Lizenzen aus allen drei Container-Typen CmDongle, CmActLicense oder CmCloudContainer bereitgestellt werden.

Als letzte erwähnenswerte Möglichkeit kann man vom Edge Device auch einen CmDongle indirekt über eine USB-over-Ethernet-Lösung bereitstellen. Diese sind gerade bei Administratoren sehr beliebt, weil sie gute Managementmöglichkeiten mitbringen und sich die CmDongles zusammen mit den Dongles anderer Hersteller an einem dedizierten Ort befinden.

Die richtige Lösung

Wie man hier sieht, bieten sich für unterschiedliche Anwendungsszenarien verschiedene Lösungsmöglichkeiten. Für die Auswahl der passenden Lösung empfiehlt es sich, einen Experten zu Rate zu ziehen und die verschiedenen Optionen abzuwägen. Es gibt keine pauschale Antwort, die für alle Szenarien die beste Lösung ist. Die Vielseitigkeit von CodeMeter gewährleistet die Kompatibilität mit einer Vielzahl von Einsatzszenarien und ist damit eine ideale Lösung für Softwarehersteller, die die Komplexität der Lizenzierung in Edge-Computing-Umgebungen meistern wollen.

 

KEYnote 46 – Ausgabe Herbst/Winter 2023

Nach oben