Semprini: Fortschrittlicher Softwareschutz und Lizenzierung
Motivation
Das Thema Informationssicherheit hat in den letzten Jahren immer mehr an Bedeutung gewonnen: Nicht nur bei Privatpersonen, die Wert auf ihre Privatsphäre legen, ist der Schutzbedarf sehr hoch. Auch Unternehmen haben ein steigendes Bedürfnis nach Informationssicherheit. Gerade im IT-Bereich wird der technisch erzwungene Schutz des geistigen Eigentums immer wichtiger, da die Auslieferung gekaufter Software immer das Risiko birgt, dass ein krimineller Nutzer diese weiterverkauft. Wenn Software ohne Berechtigung des Urhebers verteilt und verwendet wird, entsteht für den Hersteller ein großer wirtschaftlicher Schaden. Softwarelizenzierung bietet technische Möglichkeiten, dies zu verhindern und Geschäftsmodelle umzusetzen. Die Techniken, die für Lizenzierung benutzt werden, sind sehr stark mit denen verwandt, die man für Softwareschutz benutzt. Ohne Integritätsschutz ließen sich Lizenzüberprüfungen durch Manipulation der Binärdatei einfach aushebeln, und ohne Obfuskation des ausgeführten Programms ließen sich Lizenzüberprüfungen einfach als solche erkennen und potenziell mit externen Mitteln umgehen. Daher gibt es einen großen Bedarf an sicheren Methoden, wie sich Programme obfuskieren lassen.
Ziele
Ausgehend von diesen Überlegungen ist das Ziel des Projekts SEMPRINI, Schutzverfahren für den Softwareschutz und die Lizenzierung hinsichtlich Gebrauchstauglichkeit und Leistung zu optimieren, ohne an Sicherheit einzubüßen. Dabei geht es vor allem darum, die patentierte Methode „Blurry Box“ von Wibu-Systems weiterzuentwickeln. Diese Methode ist aus einem Kooperationsprojekt zwischen der WIBU-SYSTEMS AG, dem FZI Forschungszentrum Informatik und dem Karlsruher Institut für Technologie hervorgegangen, existiert seit über 10 Jahren und wird auch in der Praxis eingesetzt. Allerdings ist die Installation noch sehr komplex und mit viel Arbeit verbunden, die derzeit stark von der Logik des zu schützenden Programms abhängt und daher nicht automatisiert werden kann.
Die Rolle von Wibu-Systems
Das technische Ziel der Aktivitäten innerhalb dieses Projekts ist daher, eine neue Methode zur automatischen Variantenerstellung, die eine automatische Installation ermöglicht, zu entwerfen, zu analysieren und zu prototypisieren. Für einen automatischen Einbau sind zwei Punkte relevant. Der erste ist eine automatische Variantenbildung, also eine Vorbereitung des Programms zur Steigerung der Komplexität der Codestruktur, damit die Schutztechnologien besser angewandt werden können. Der zweite ist eine automatisierte Auslagerung von Entscheidungsfunktionen an den Dongle, um die Bedingungen von Sprüngen vor Analyse-Tools zu verbergen. Für beide noch offenen Probleme plant die WIBU-SYSTEMS AG im Rahmen des Projektes Verfahren zu erforschen und prototypisch zu implementieren. Zudem wird Wibu-Systems die vom FZI zu entwickelnden Analysetechniken auf die eigenen Schutztechnologien anwenden, um die Sicherheit der eigenen Schutzverfahren zu analysieren, die ohne Spezialhardware auskommen.