Der Trend weg vom PC hin zum Tablet und Smartphone hat gezeigt, wie schnell die bisher bevorzugte Prozessorarchitektur durch eine andere abgelöst werden kann. Auch bei den Betriebssystemen, englisch Operating System (OS) genannt, ist zur Zeit einiges im Fluss. Für das Internet of Things (IoT) hat zum Beispiel der Virenscannerhersteller Kaspersky ein besonders auf Sicherheit bedachtes OS herausgebracht.
Welche Prozessorarchitektur und welches Betriebssystem in fünf Jahren dominieren wird, lässt sich zurzeit noch nicht absehen. Erst recht nicht bei dem fragmentierten Mikrocontrollernangebot. Deshalb sollten sich Geräte- und Bauteilehersteller unabhängiger von Hardware und Betriebssystemen machen! Das gilt auch für das Lizenz- und Berechtigungsmanagement, das zunehmend zum Stellglied für neue Produktentwicklungen wird. Schließlich werden Pay-per-Use und unterschiedliche Subscription-Modelle über die Softwarefunktionen der Mikrocontroller gesteuert.
x86er-Prozessorarchitekturen waren in der Vergangenheit dominant. Häufig war das OS mit der Prozessorarchitektur verheiratet. „Wintel“, für Windows und Intel, ist dafür das bekannteste Beispiel. Mit Linux – Anfang dieses Jahrtausend allenfalls im Serverbereich ein Thema – hielt der Open-Source-Gedanke Einzug bei den Betriebssystemen. Bei den Tablet- und Smartphone-Prozessoren verschiebt sich der Bedarf in Richtung ARM. Auf Mikrocontrollerebene geht es ein wenig anders zu. Bei ihnen ist der Markt fragmentierter, aber auch dort gibt es einen Trend hin zu ARM-Cores.
Im Zuge des IoT steigt außerdem die Nachfrage nach intelligenten Sensoren. Sie brauchen dafür programmierbare Cores, um flexibel an die jeweiligen Applikationen angepasst werden zu können. Es ist zur Zeit noch vollkommen offen, welche Architekturen zusammen mit welchen Kommunikationsschnittstellen sich langfristig durchsetzen werden. Für Unternehmen stellt sich die Frage, wie sie sich in diesem Bereich am flexibelsten positionieren können. Sie sollte sehr genau abwägen, auf welche Architektur sie setzen, beziehungsweise wie abhängig sie sich von der jeweiligen Architektur machen.
„Homebrew“ oder professionelles System?
Ein Weg zukunftssicher zu entwickeln ist es, sich von den Plattformen unabhängig zu machen. Dafür gibt es bei den Entwicklungssystemen bereits einige Möglichkeiten. Eine Baustelle bleibt aber das Lizenzierungssystem. In diesem Bereich gibt es verschiedene Lösungen, die allerdings auf das OS und die Prozessoren, beziehungsweise den Mikrocontroller, zugeschnitten sind. Die Implementierung einer Lizenzschlüsselfunktion kann zwar jeder versierte Programmierer bereits nach kurzer Einarbeitung, da es für Plattformen wie .NET, Android, Linux oder auch Java bereits fertige Bibliotheken gibt, die er nach dem Baukastenprinzip implementieren kann. Entwickler können also vieles recht komfortabel und – sofern Open Source – auch ohne Lizenzkosten nutzen. Mit etwas „Glue Logic“ lässt es sich auch für den dedizierten Mikrocontroller anpassen. In den meisten Fällen sind solche Systeme allerdings etwas improvisiert und mit den typischen Risiken von sogenannten Homebrew-Lösung verbunden.
Besser ist es deshalb, noch unabhängiger zu sein und eine Softwarelizenzierung einzusetzen, die weder von der Hardware noch von der Software abhängt und so für jedes Target-System passt. Zunehmend wichtiger wird auch die Integration in die vorhandene IT-Infrastruktur, um Organisationsprozesse rund um die Lizenzierung wie Aktivierung, Lizenzverlängerung und Lizenzübertragungen im Wartungsfall automatisiert durchführen zu können. Im besten Fall kann das der Endkunden selbst über ein Kundenportal auslösen.
Das kleinste Lizenzierungssystem der Welt
Gemalto hat mit Sentinel Fit ein Lizenzierungssystem entwickelt, dass für alle Arten von Prozessoren und Mikrocontroller eingesetzt werden kann. Da es plattformunabhängig ist, kann es in jeder Mikrocontroller- und Betriebssystem-Konfiguration genutzt werden, die 1,5 kB RAM und 6,5 kB Flash für den Lizenzierungsfootprint bereitstellt. Es eignet sich damit für viele unterschiedliche Devices – von smarten Headsets und Wearables über Geräte der Heimautomatisierung bis hin zu Smart-City-Applikationen, Smart-Metern und vielen weiteren industriellen Sensoren, Aktoren und Kommunikationsmodulen. Eingesetzt werden kann das System beispielsweise auf typischen Mikrocontrollern wie dem ARM Cortex M3/M4, Intel Quark, MSP430, 8051, 68k, PIC/MIPS, aber auch auf Bastelrechnern wie dem Arduino und dem Raspberry Pi.
Sentinel Fit bietet für all diese Prozessoren die Möglichkeit, eine asymmetrische RSA-Verschlüsselung als Off-the-Shelf-Lösung zu implementieren. Sie kann zudem auch remote aktualisiert werden kann, um Funktionszugriffe freizuschalten oder zu blockieren. Technisch muss der Mikrocontroller lediglich 13 kB Ram und 34 kB Flash für den Lizenzierungsfootprint bereitstellen. Für noch kleinere Footprint-Anforderungen kann eine symmetrische AES-Verschlüsselung gewählt werden. Damit werden nur noch 1,5 kB Ram und 6,5 kB Flash benötigt. Da die Lizenzierung nicht auf bestimmte Mikrocontroller oder OS limitiert ist, kann sie in jeder beliebigen Konfiguration eingesetzt werden. Sie ist auch auf Tablet- oder Desktop-Prozessoren einsetzbar. Bei diesen ist es allerdings empfehlenswert, eine noch höhere Sicherheitsstufe zu verwenden. Smarte Sensoren sollten auf keinen Fall komplett ohne schützendes Lizenzmanagement betrieben werden.
Der Source Code kommt in C
Sentinel Fit wird als Source Code in C ausgeliefert und integriert sich damit sehr flexibel in vorhandene Embedded Tool Chains. Aufgrund seines modularen Aufbaus können nicht benötigte Funktionalitäten leicht herausgenommen werden, um so einen noch kleineren Footprint zu erreichen. Das umfangreichere Lizenzmanagementsystem Sentinel (ohne Fit) ist bereits für Entwicklungsumgebungen wie Labview, Matlab und Simulink verfügbar. Deshalb ist davon auszugehen, dass auch der kleiner Bruder bald als Funktionsbaustein für diese Systeme erhältlich sein wird. Sentinel Fit bietet zudem einen umfassenden modularen Baukasten für das Management von Lizenzen und Berechtigungen. Er reicht vom Lizenzierungstool bis hin zum – optional cloudbasierten – Lizenzverwaltungssystem für OEMs und besitzt Schnittstellen zu ERP- und Payment-Systemen.
Durch diese Anpassungsfähigkeit ist das Tool eine gute Grundlage für die flexible Vermarktung von Geräten. Anbieter können beispielsweise Plattformstrategien mit einer standardisierten Hardware entwickeln und die Produktvarianten einzig über Softwarekonfigurationen erzeugen. Dadurch sind höhere Economies-of-Scale möglich, die neue Spielräume zur Preis- und Ertragsgestaltung bieten. Zudem können Gerätehersteller Lizenzen auch für Laufzeiten anbieten oder auch Pay-per-Use und funktionsbasierte Lizenzierungen betreiben.
Lizenzsysteme sind aber auch an anderen Stellen gefragt, etwa bei den Bereitstellungsfunktionen für Software. Hersteller möchten sie gerne bedarfsgerechter zur Verfügung stellen, beispielsweise in Jahres- oder Monatslizenzen, nach Nutzungsintensität, mit abgestuftem Funktionsumfang, mit Zukauffunktionen („on demand“), in nutzerangepasster Konfiguration oder mit auf den betriebenen Maschinen verschiebbaren Lizenzen. Solche Monetarisierungsfunktionen sind auch für Mikrocontroller keine Exoten mehr, denn sie sind bereits aus dem privaten und kommerziellen Umfeld bekannt. Kunden erwarten sie auch für ihre Maschinen. Bieten Hersteller solche Lizenzmodelle an, kommen sie schneller ins Geschäft, denn wer für Maschinen oder Anlagen nur Lizenzen im laufenden Betrieb verlangt, reduziert die Investitionskosten für seine Kunden. Je nach Modell entstehen auch für den laufenden Betrieb keine Fixkosten.
Lizenzmanagement für alle Anforderungen
Neue Rahmenbedingungen wie Breitband-Internet, Clouds und SaaS (Software as a Service) verändern zusätzlich die Art und Weise, wie Automatisierungssysteme integriert werden. Edge- und Fog-Server sind derzeit beispielsweise in aller Munde. Sie verwalten zentral vor Ort die Kommunikation mit den einzelnen Automatisierungslösungen, Wireless-Sensor-Netzwerken und konfigurieren das Gesamtsystem einer Industrie-4.0-Anlage. Auch solche Geräte erfordern wiederum Software, die lizenziert werden muss, um die Applikationen zu monetarisieren und sie vor IP-Diebstahl und Raubkopien zu schützen.
Die Anforderungen an das Target-System haben sich folglich verändert, eine hohe Flexibilität ist für die Softwarelizenzierung gefragt. Gerätehersteller können für die Lizenzierung auf professionelle Lizenzmanagementsysteme zurückgreifen. Sie stellen alles dafür notwendige bereit, inklusive der notwendigen Sicherheitsfunktionen vor Raubkopien, IP-Diebstahl und Reverse-Engineering.