Software protection
The topic of license management
Machine and plant manufacturers are facing a challenge: in the context of IoT and Industry 4.0, they have to provide much more software than they need for the actual control of the devices. It's high time to address the issue of license management.
Microcontroller-based nodes with one or more sensors/actuators contain code worthy of protection, which should also be monetized as intellectual property (IP) through licensing solutions.
© GemaltoIn an increasingly networked world, software license management fulfils important security functions by limiting the functional scope and useful life of software to exactly those features approved by the manufacturer and paid for by the user. In other words, it protects software from piracy or unauthorized use and also puts a stop to IP theft and reverse engineering. Coupled with hardware-based protection mechanisms - the use of dongles is often common for pure software products - extremely high levels of protection can be achieved. These range all the way to solutions that only allow code to be encrypted even in the cache of a controller. Even complex hardware attacks such as differential power analysis (DPA) and reverse engineering using electron microscopy can be countered in this way. And last but not least, license management systems offer important monetization functions that make it possible to provide solutions for the customer in a highly flexible, granular structure - right down to batch size 1.
Individual license and business models can be implemented using a flexible licensing solution. For example, a washing machine could be offered as a pay-per-use model, as shown in the diagram.
© GemaltoHowever, today's systems must not only be able to provide the software as required in terms of its range of functions. They must also be flexible enough to allow software to be licensed in a wide variety of environments. The variants range from classic offline and online licensing to solutions that users manage themselves in the company or that work via hardware-based keys using soldered components or plug-in hardware keys. In addition, licensing services from a cloud and for clouds are required in order to provide SaaS (Software as a Service) or MaaS (Machines as a Service) services. Finally, it is also about the automation of business processes, because: The more, the more flexible and the shorter software is licensed, the more important it is to have an efficient, stable and secure integration of the license management system into the payment, CRM and ERP systems.
In short, the demand for flexibility makes licensing complex and, in view of the increasing interaction between machines and systems, also requires significantly more development effort than was usual just a few years ago. It is true that any experienced programmer can implement a license key function after a short training period, as there are already ready-made libraries for platforms such as .Net, Android, Linux or Java that can be implemented according to the modular principle. Developers could therefore implement basic license functions quite easily and - if open source - without license costs. However, when considering all the requirements, the question must be asked: Hasn't flexible license management become far too complex today for machine and plant manufacturers to develop it entirely themselves - especially in light of the fact that licensing is not and should not be their core competence!
Small chip, big security gain: The hardware-based license key 'Sentinel HL' protects code against malicious hardware attacks such as Differential Power Analysis (DPA) and reverse engineering.
© GemaltoGemalto's Sentinel Embedded solutions are an exemplary solution that provides machine and plant manufacturers with all the important tools they need to effectively protect their products and manage them remotely. In addition to protecting intellectual property from theft and reverse engineering, they also provide insights into usage data. Thanks to efficient back-office integration, order and order processing can also be fully automated. This is particularly essential for usage-based billing (pay-per-use) due to the potential flood of data.
Specifically, the solution consists of several modules that the user can put together as required - starting with the simple licensing system, which is also available as a plug-in for Labview and Matlab, through to the cloud-based solution. Gemalto's latest development - Sentinel Fit - is also platform-independent, as the licensing footprint is particularly small and is provided in C source code. This means that it can be used on any microcontroller that can provide 1.5 KByte RAM and 6.5 KByte flash for the licensing footprint.
Sentinel Fit offers symmetric AES encryption as an off-the-shelf solution for this footprint, which can also be updated remotely to enable or block functional access. A little more is needed for asymmetric RSA encryption. For this, the microcontroller must provide 13 Kbytes of RAM and 34 Kbytes of flash for the licensing footprint. In short: in addition to standard licensing for x86 and ARM systems, the entire range of intelligent devices - including CAN controllers or 'smart' sensors - can now be licensed. This provides users with a single platform that they can use from the sensor to the machine or system and the IoT gateway to the cloud, including the clients of the operating personnel and service staff.
Author:
Michael Gaudlitz is Regional Sales Manager at Gemalto.














