Das Maschinen, Anlagen und intelligente Geräte richtig funktionieren, hängt immer stärker von der dazugehörigen Embedded-Software ab. Über sie können sich Angreifern, wie Wirtschaftsspionen und Saboteuren, allerdings auch Zugriff auf die Geräte und Anlagen verschaffen. Hersteller müssen ihre Software deshalb vor unerlaubten Zugriffen schützen. Gleichzeitig suchen sie nach Wegen, um mit ihren Embedded-Lösungen neue Umsätze zu generieren. Eine Möglichkeit dafür ist das Aufsetzen von Lizenzmodellen.
Damit die Lizenzierung funktioniert, muss die Embedded-Software vor unbefugtem Zugriff geschützt werden. Am effektivsten erreicht man das mit einer Verschlüsselung. Eine Lizenz kann neben der Erlaubnis zur Softwarenutzung – und somit der Entschlüsselung – weitere Merkmale haben. Unter anderem kann eine Nutzungsdauer oder ein Zähler vorgegeben werden. Mit ihr lassen sich aber auch gesicherte Daten, wie Betriebsparameter, übermitteln. Über zusätzliche Lizenzen können weitere Funktionen freigeschaltet werden, beispielsweise die Anzahl nutzbarer Messkanäle oder zu steuernder Achsen. Und natürlich ist die Lizenz an das Zielsystem gebunden und somit nicht kopierbar.
Das kann die neue Version
Mit der Codemeter-Technik von Wibu-Systems können Hersteller beides umsetzen: Den Schutz ihrer Produkte und die Monetarisierung mit Hilfe von Lizenzierung. Speziell für Embedded-Systeme hat Wibu-Systems Codemeter für modulare und ressourcensparende Einsätze angepasst. Codemeter Embedded ist eine modulare Laufzeit-
umgebung für Embedded-Systeme, wie Linux Embedded, VxWorks, QNX oder Android, und besteht aus einem Teil der Funktionen von Codemeter Runtime für PC-Systeme. Gegenüber der PC-Version wurden die höheren Anforderungen an die Echtzeitfähigkeit und der geringere Arbeitsspeicher- und Rechenleistungsbedarf berücksichtigt. Hersteller können die Codemeter Protection Suite für PC-Software, aber auch für Embedded-Systeme einsetzen. Dafür gibt es die speziellen Verschlüsselungstools AxProtector Codemeter Embedded und ExProtector. Für kleine Mikrocontroller gibt es außerdem die Variante Codemeter µEmbedded.
Die neue Version 2.0 von Codemeter Embedded kann mit mehreren Prozessen auf einen Schlüsselspeicher zugreifen. Das heißt die notwendigen Schlüssel werden in der Schutzhardware CmDongle oder der Aktivierungsdatei CmActLicense chiffriert abgelegt. Bisher war das in der Embedded-Variante absichtlich nicht enthalten, um den Code möglichst klein zu halten. Inzwischen sind Embedded-Systeme allerdings deutlich leistungsfähiger geworden. Die Codemeter-Funktionen unterstützen daher, dass sich mehrere geschützte Programme oder Prozesse den Zugriff auf einen CmContainer teilen können. Durch das veränderten Design, genannt License Core, wird die Lizenzierung flexibler und performanter.
Anstelle eines USB Dongles kann in der Version 2.0 auch über die SPI-Schnittstelle ein Schlüsselspeicher in Form eines ASICs angesprochen werden. Dies spart den Umweg über den USB-Stack, braucht weniger Strom und bindet den Smart-Card-Chip direkt an. Außerdem können weitere Softwarekomponenten eingebunden werden. Basierend auf dem License Core ist auch die Nutzung eines OPC-UA-Stack möglich, der Codemeter als Schlüsselspeicher nutzt. Auch die Codemeter-Lizenz lässt sich über das OPC-UA-Protokoll updaten.
Das passende Paket schnüren
Codemeter Embedded ist wie ein Baukasten aufgebaut, der viele Funktionen modular zur Verfügung stellt. Sie ist somit kein monolithischer Block, sondern lässt sich individuell den Kundenanforderungen nach anpassen. Der Hersteller wählt einfach die von ihm benötigten Bereiche aus. Dadurch belegt sie nicht unnötig Systemressourcen.