Software-Schutz Sicher Speichern mit CodeMeter und Intel SGX

Mit der Intel SGX-Erweiterung können Programmcode und Daten vor Manipulation geschützt werden. In Kombination mit dem CodeMeter-System von Wibu-Systems ist eine sichere Software-Lizenzierung möglich.

Die Intel Software Guard Extension (SGX) ist eine Architekturerweiterung um Code und Daten vor Offenlegung oder Änderung zu schützen. Softwareentwickler, die das Intel SGX-Entwicklungspaket einsetzen, können ihre Binärdaten in speziellen, vor Ausführung geschützten Speicherbereichen, den sogenannten Enklaven, ablegen. Die Befehlssätze arbeiten nach offizieller Intel-Dokumentation mit der siebten und achten Generation der Intel Core-Prozessoren und mit Xeon-E3-Prozessoren. Laut Wibu funktiert SGX auch mit »Skylake«-Prozessoren der sechsten Generation – hier werden allerdings nicht alle Prozessoren unterstützt. Um die SGX-Befehle und -Speicherbereiche nutzen zu können, muss im System ein Treiber von Intel installiert werden.

Wibu-Systems hat erfolgreich den Aktivierungsprozess der Intel SGX für CodeMeter auf Windows bestanden. Damit kann CodeMeter die SGX-Enklave nutzen, so dass Softwarehersteller nicht nur von einem versteckten Bereich profitieren, in den sie geheime Daten hinterlegen können, sondern gerade die Bindungserweiterung in der Enklave ausführen können, also in einem sicheren Speicherbereich auf dem Gerät. Das Ergebnis ist, dass der Programmcode nicht im Speicher verändert oder debuggt werden kann und auch der Speicher selbst ist geschützt. Mit CodeMeter kann die Lizenzierung von Software über SGX erfolgen. Die geheimen Daten liegen dann im geschützten Speicher der SGX-Enklave und werden verschlüsselt bis in die CPU übertragen, womit keine Angriffspunkte vorhanden sind.

Wibu-Systems zählt bereits durch die Integration von CodeMeter in das Echtzeit-Betriebssystem VxWorks von Wind River zur »IoT Solutions Alliance« von Intel, gehört weltweit zu den ersten Anbietern von Intel SGX-Lösungen für Geschäftskunden und plant, ergänzend zum Schutz unter Windows diesen für Linux und die Cloud bereit zu stellen.

CodeMeter dient zum automatischen oder manuellen Schutz von Software, Firmware und Daten. Die Lösung kombiniert aktuelle, hackersichere Verschlüsselungsmethoden mit sicherer Hardware, Software und Cloud-Elementen, in denen Schlüssel, Lizenzen und Berechtigungen sicher gespeichert werden können. Die komplexe, jedoch einfach handzuhabende Lösung funktioniert auf Computern, mobilen Geräten, Embedded-Systemen, Steuerungen und selbst auf Mikrocontrollern. Die patentierte CodeMeter SmartBind-Lösung erzeugt einen digitalen Fingerabdruck des Zielsystems. Einstellbare Toleranzen sorgen dafür, dass die Lizenzen, bestehend aus kryptografischen Schlüsseln, gespeichert in der sicheren Aktivierungsdatei CmActLicense, gültig bleiben, auch wenn Hardwarekomponenten innerhalb dieser Toleranzen ersetzt werden. Die CodeMeter Binding Extension erlaubt den kundenspezifischen Einbau des Bindungssystems.