Kategorien: Software-Schutz
CodeMeter SmartBind
CodeMeter SmartBind beschreibt das neue, von Wibu-Systems entwickelte und zum Patent angemeldete Verfahren, Lizenzen, also digitale Rechte, an einen PC oder ein bestimmtes Gerät zu binden. Das Binden nennt man Aktivieren. Die Schwierigkeit dabei ist, die Merkmale der Bindung so zu wählen, dass der PC einzigartig erkannt wird, die Bindung aber dennoch tolerant ist gegenüber kleinen Veränderungen, sodass die Lizenz hochzuverlässig beim Anwender genutzt werden kann.
So funktioniert es
Stellen Sie sich vor, Sie wollen einen Menschen identifizieren. Und stellen Sie sich weiterhin vor, dass Sie den Fingerabdruck dazu nicht verwenden können, da der Mensch gerade Handschuhe trägt oder Sie in diesem Augenblick keinen tragbaren Fingerabdruckscanner verfügbar haben. Dann greifen Sie auf äußerliche Merkmale zurück: Form des Gesichtes, Körpergröße, Gewicht, Geschlecht, Haarfarbe, Haarlänge und Haarschnitt, Nasenbreite und Nasenlänge, Brillenform und Brillenstärke, Bartfarbe und Bartform, usw.. Wenn Sie hinreichend viele Merkmale wiedererkannt haben, dann kommen Sie zu dem Schluss: „Ja, er ist es.“
Solange zwischen dem ersten Kennenlernen und dem Wiedersehen nur ein kurzer Zeitraum liegt, werden die meisten Merkmale unverändert bleiben. Liegt aber ein längerer Zeitraum dazwischen, dann sind einige der Merkmale mehr oder weniger verändert. Und die Merkmale haben eine unterschiedliche Güte. So ist es sehr unwahrscheinlich, dass sich das Geschlecht ändert, aber Dank modernster Chirurgie ist dies nicht unmöglich. Einige wechseln ihre Haarfarbe wie andere die Hemden, die meisten Menschen wiederum lassen die Haarfarbe ein Leben lang gleich. Die Größe ist bei Erwachsenen ein gutes erstes Ausschlusskriterium, bei Kindern und Jugendlichen dagegen ändert sie sich naturbedingt.
Vom Wiedersehen bis zum Satz „Mensch, das ist der Meier“ laufen im Gehirn viele Prozesse ab. Merkmale werden verglichen und abgewogen; und zum Schluss kommt es zu einer Entscheidung: Ja oder Nein.
Passfoto mitführen
Was hat dies mit CodeMeter SmartBind zu tun? Das Vorbild für CodeMeter SmartBind ist niemand geringeres als die Natur selbst. CodeMeter
SmartBind bildet die komplexen Prozesse der Erkennung mathematisch ab. Zum Zeitpunkt des Bindens an den Rechner erzeugt CodeMeter SmartBind den Fingerabdruck des Rechners, einen kryptographischen Schlüssel, und eine Liste aller gefundenen Merkmale. Diese Liste wird – analog zu einem Foto im Personalausweis – auf dem PC abgespeichert. Die Lizenz führt quasi ihr eigenes Passfoto immer mit sich.
Zum Zeitpunkt der Identifikation wird das Passfoto verwendet. Alle aktuellen Merkmale werden mit denen auf dem Foto abgeglichen. Neue Merkmale, wie z.B. eine Brille beim Mensch oder eine UMTS Karte im Computer, werden vernachlässigt und gehen nicht in den Algorithmus ein. Im Falle einer klassischen Bindung würde eine neue Netzwerkkarte den Wert für die MAC-Adresse/n verfälschen. Nicht so bei CodeMeter SmartBind. Neue Merkmale sind keine Störquelle.
Dynamische Merkmalsauswahl
Was wäre, wenn Sie bei einigen Menschen doch den Fingerabdruck, den Retina-Scan oder eine DNA-Probe hätten? Dann würden Sie diese natürlich verwenden. Genauso ist es mit CodeMeter SmartBind. CodeMeter SmartBind hat kein starres Schema von anzuwendenden Merkmalen. Je nach Verfügbarkeit und Erkennung wird die Auswahl der Merkmale dynamisch angepasst. CodeMeter SmartBind verfügt über einen großen Fundus an möglichen Merkmalen. Sind zum Beispiel CPU-ID und/oder TPM-Chip verfügbar, dann werden diese auch verwendet.
Dynamische Gewichtung
Sie erinnern sich bestimmt noch an die Größe des Menschen. Bei Kindern und Jugendlichen ist diese veränderlich, bei Erwachsenen bildet sie ein gutes stabiles Kriterium. Je nach verfügbaren Eigenschaften und je nach Umgebung werden die Merkmale bei CodeMeter SmartBind dynamisch gewichtet. Sind CPU-ID und/oder TPM-Chip auslesbar, dann gehen diese natürlich mit einer sehr hohen Gewichtung in die Bindung ein. In einer virtuellen Maschine ist die Zusammensetzung anders als auf einem „richtigen“ PC.
Toleranz
CodeMeter SmartBind ist tolerant gegenüber Änderungen der Merkmale. Sie bestimmen, wie hoch die Toleranz sein soll. Bei der Einstellung „Tight“ ist die Toleranz niedrig, bei „Loose“ ist die Toleranz hoch. Bei einer hohen Toleranz reichen weniger wieder gefundene Merkmale aus, um den Rechner zu identifizieren; bei einer niedrigen Toleranz müssen viele der originalen Merkmale noch erhalten sein. Es ist nicht unbedingt die Anzahl, sondern eher das „Gesamtgewicht“.
Sicherheit
Ist das Passfoto denn nicht ein Sicherheitsrisiko? Ein sehr delikates Beispiel ist die Sicherheitsfirma, die auf einem Werbeposter den eigenen Schlüssel abgebildet hatte. Anhand des Bartes des Schlüssels konnte man den Schlüssel nachbauen.
Dies kann bei CodeMeter SmartBind nicht passieren. Das Passfoto enthält die Merkmale nicht im Klartext. Die Informationen auf dem Passfoto reichen aus, um zu sagen, dass dieses Merkmal zum Zeitpunkt der Aktivierung vorhanden war, aber nicht, um das Merkmal selbst zu rekonstruieren.
Zusammenfassung
CodeMeter SmartBind bietet eine einfache und sichere Art, eine Lizenz an einen Rechner zu binden. Durch die Vielzahl der dynamisch gewählten Merkmale bietet CodeMeter SmartBind sowohl Zuverlässigkeit (Reliability), als auch Schutz gegen Manipulation (Security). Zurück zu unserem Vergleich mit der Erkennung eines Menschen: Wenn ich meine Brille absetze, werde ich dennoch korrekt erkannt. Mein Kollege, der meine Brille aufsetzt, kann sich aber noch lange nicht für mich ausgeben. Erst wenn ich mehrere Merkmale ändere, ist die Lizenz nicht mehr gültig und es muss eine neue Aktivierung erfolgen.
KEYnote 22 – Herbstausgabe 2011