Ein weiterer Einsatzbereich ist Anti-Cloning. Dafür wird das Originalgerät mit einer digitalen Signatur versehen, die auf einem einzigartigen Merkmal der Hardware beruht, z.B. der Unique ID, die viele Microcontroller besitzen. So kann die Firmware des Originalgerätes nicht einfach ausgelesen und in ein nachgebautes Gerät kopiert werden.
Solange man einen Standard-Microcontroller einsetzt, wird es für Hacker, die über enorme Ressourcen und Zeit verfügen, einen Weg geben, das Sicherheits-System temporär auszuschalten: Sie könnten ein solches Gerät analysieren und nachbauen, so dass schließlich der Klon-Check deaktiviert werden kann. Doch selbst wenn Raubkopierern ein solcher Nachbau gelungen ist: Spätestens wenn das erste authentische Firmware-Update kommt, wird die Kopie enttarnt, denn dieses Update lässt sich aufgrund der fehlenden Signatur in der Geräte-Firmware nicht aufspielen.
Mit zusätzlichen Maßnahmen lässt sich das Sicherheits-Niveau bei der Verwendung von digitalen Signaturen weiter erhöhen. So sollte der Rechner, mit dem der Private Key erzeugt wird, nur für diesen Zweck verwendet werden – idealerweise offline. Außerdem kann der Private Key verschlüsselt aufbewahrt werden.
Maßnahmen gegen Schlüsselverlust
Grundsätzlich können Keys auf zwei Wegen erzeugt werden: per Zufallsgenerator oder mit Hilfe einer Passphrase. Letzteres hat den Vorteil, dass sich die Keys immer wieder generieren lassen. Das könnte etwa notwendig werden, wenn der Private Key nicht mehr verfügbar ist. Entscheidet man sich für die Verwendung einer Passphrase, sollte diese aber nicht zu einfach zu erraten sein – der Firmenname wäre keine besonders sichere Wahl. Weiterhin kann der Signatur-Check auch an mehreren Stellen der Firmware verankert werden. Dies erschwert die vorübergehende Deaktivierung des Klon-Checks zusätzlich.
Das emSecure Software-Paket enthält von der Schlüssel-Generierung bis zum Benchmarking der Verarbeitungsgeschwindigkeit verschiedener Schlüssellängen alle Module, die notwendig sind, um ein Produkt abzusichern – vorcompiliert und einsatzbereit. Ebenso sind Beispielanwendungen und der Source Code enthalten. emSecure ist in ANSI-C geschrieben und nutzt keinen Code, der spezifisch ist für ein bestimmtes Betriebssystem oder bestimmte Hardware. Daher ist der Einsatzbereich praktisch unbegrenzt. Die Programmierschnittstelle ist sehr leistungsfähig, dabei gleichzeitig simpel. Die Integration in bestehende Produktionsumgebungen dauert weniger als einen halben Tag.