Startseite » Machine Learning »

AxProtector Python von Wibu Systems

KI- und ML-Software-Projekte schützen und lizenzieren
Wibu bietet Tool zur Verschlüsselung von Python-Anwendungen

Die Programmiersprache Python zeichnet sich durch einfache Syntax, Übersichtlichkeit, vorhandene Ressourcen und hohe Flexibilität aus, was sie besonders für die Bereiche Künstliche Intelligenz (KI) und Machine Learning (ML) attraktiv macht. Die Python-Anwendungen werden beispielsweise im Gesundheitswesen, in der industriellen Fertigung, Bildung, Finanzwesen oder im juristischen Bereich genutzt. Beim TIOBE-Index vom Januar 2022 kam heraus, dass Python in der Beliebtheit der Entwickler an der Spitze angekommen ist: Vom dritten Platz im Januar 2021 auf den ersten Platz im Januar 2022.

Rüdiger Kügler, VP Sales & Security Expert bei Wibu-Systems AG in Karlsruhe

Da mit Python vermehrt Software entwickelt wird, befassen sich auch potenzielle Angreifer mit dieser Programmiersprache, um Schwachstellen zu finden. Sie versuchen darüber hinaus, die Innovationen von Herstellern zu kopieren, um mit geringem Aufwand davon zu profitieren. Von Natur aus ist Python eine Skriptsprache, was dazu führt, dass Angreifer auf einfache Weise an den Python-Quellcode kommen können. Dieser Quellcode wird als Text-Datei ausgeliefert und kann im Klartext gelesen werden, d.h. der Quellcode liegt offen. Die Angreifer können alles lesen und die elementare Idee in der Software nachbauen (Reverse Engineering) oder den Quellcode absichtlich oder unabsichtlich ändern, manipulieren oder kopieren.

Das Karlsruher Unternehmen Wibu-Systems bietet Softwareherstellern Schutz- und Lizenzierungslösungen und hat speziell für in Python geschriebene Anwendungen seine CodeMeter-Lösung erweitert. Mit dem Tool AxProtector Python können Hersteller ihre Python-Software einfach automatisch verschlüsseln. Schon vor der Markteinführung von AxProtector Python konnten Hersteller ihre Python-Software schützen, indem die EXE-Datei über den Cython-Compiler vorkompiliert und dann verschlüsselt wurde. AxProtector Python ist Bestandteil der CodeMeter Protection Suite und erlaubt die direkte und automatische Verschlüsselung. In der CodeMeter Protection Suite sind weitere AxProtector-Varianten enthalten, die alle Verschlüsselung und Lizenzierung bieten, optimiert auf die entsprechende Programmiersprache. Hersteller verschlüsseln die zu schützende Software und liefern dem Anwender neben der Software beim Kauf auch den dazugehörigen Lizenzschlüssel mit, der auch nachträglich aktualisiert werden kann. Die Berechtigungen des Anwenders werden im Lizenzschlüssel gespeichert, und zwar dienen als sichere Speichermedien die Schutzhardware CmDongle, die softwarebasierte Aktivierungsdatei CmActLicense oder der CmCloudContainer in der Cloud.

Erster Ansatz: Vorkompilierung

Als es AxProtector Python noch nicht gab, führten die Hersteller zwei Schritte aus: die Vorkompilierung und danach die Verschlüsselung der Python-Software. Mit dem Cython-Compiler wird die Python-Software in eine ausführbare, in C geschriebene Datei (EXE) umgewandelt, und danach verschlüsselt AxProtector Windows die umgewandelte Software. Bei diesem klassischen Weg muss der Hersteller für jede einzelne Plattform die jeweils dazugehörige ausführbare Datei erzeugen und ausliefern und dafür die entsprechenden technischen Kenntnisse mitbringen.

Hersteller können mit den unterschiedlichen Verschlüsselungstools sowohl ihre Software und somit ihr geistiges Eigentum schützen als auch lizenzieren. Die granulare Lizenzierung erlaubt es, ganz unterschiedliche Modelle zur Software-Monetarisierung abzubilden, um spezifische Anforderungen von Märkten und Regionen zu berücksichtigen und dadurch Umsatzsteigerungen zu erzielen. Die verschiedene Lizenzmodelle können auch automatisiert ablaufen, beispielsweise über zeitbasierte, nutzungsbasierte oder funktionsbasierte Modelle, sie ermöglichen aber auch Einzelplatzlizenzen oder Floating-Lizenzen innerhalb eines Netzwerks. Die für die Python-Software wichtigen Daten können über das CodeMeter Core API zusätzlich verschlüsselt und auch signiert werden.

Aktueller Ansatz: AxProtector Python

Mindestens Python 3 und CodeMeter 7.30 sind notwendig, um mit AxProtector Python arbeiten zu können. Beim AxProtector Python wird das Skript direkt und ohne Vorkompilierung verschlüsselt und es wird kein nativer Code erzeugt. AxProtector Python zeichnet sich durch seine Plattformunabhängigkeit aus: Die Verschlüsselungssoftware wird nur einmal benutzt, um eine einzige ausführbare Datei zu erzeugen, die plattformunabhängig und damit flexibler als mit dem Ansatz über Cython sowohl auf Windows, Linux als auch macOS läuft. Wie gewohnt stehen dem Hersteller alle CodeMeter-Funktionen mit dem hohen Schutzniveau zur Verfügung. Nur der Teil, der gerade benötigt wird, wird zur Laufzeit entschlüsselt, sodass der Großteil der Software weiterhin verschlüsselt bleibt. Wenn der Hersteller jede Funktion der Python-Software separat verschlüsselt, kann er seinen Kunden modulare Lizenzen anbieten. Der Anwender bekommt die verschlüsselte Software zusammen mit dem dazugehörigen Lizenzschlüssel, d.h. genau das, was er gekauft hat. Jederzeit kann der Anwender weitere Funktionen nachkaufen, sodass dann auch die dazugehörigen Lizenzschlüssel aktualisiert werden.

Sollen gewisse Funktionen und Dateien unverschlüsselt bleiben, dann kann der Hersteller Annotationen setzen sowie über Einträge in der Schutzdefinition dies steuern. Da der Schritt der Vorkompilierung entfällt, erfolgt die Integration über AxProtector Python auf einfache Weise.

CodeMeter Protection Suite

Die verschiedenen Verschlüsselungstools sind in der CodeMeter Protection Suite zusammengefasst. Der Hersteller kann damit die komplette Software oder nur bestimmte Teile seiner Python-Software verschlüsseln. Jede AxProtector-Variante ist für die entsprechende Programmiersprache optimiert, um in der Basisfunktion die ausführbaren Dateien zu schützen: Neben AxProtector Python gibt es AxProtector Windows, AxProtector Linux, AxProtector macOS, AxProtector Java, AxProtector JavaScript, AxProtector .NET, AxProtector Android und AxProtector CmE für Embedded-Software. Neben der Basisfunktion sind weitere Funktionen die individuelle Lizenzierung von mehreren Features über Zuweisung einzelner Methoden und der IP Protection Modus, bei dem der Schlüssel zur Entschlüsselung sicher in der Anwendung versteckt wird und die Verschlüsselung ist nicht an eine CodeMeter-Lizenz gebunden. Um auf ein noch höheres Schutzniveau zu kommen, kann der Maschinen-Code im CmDongle ausgeführt werden, dem sogenannten CodeMoving.

Es ist davon auszugehen, dass die Verbreitung von Python noch weiter steigt, wovon schon allein aufgrund des Wachstumspotentials bei KI und ML auszugehen ist. Um Angreifer abzuwehren, werden sich Hersteller noch intensiver mit den passenden Schutz- und Lizenzierungskonzepten, auch für Python, auseinandersetzen müssen. Mit der CodeMeter-Technologie sind die Hersteller bereits jetzt gerüstet, um auch ihre Python-Software einfach und effektiv zu schützen und zu lizenzieren. (ge)

Weitere Informationen zu ML gibt eine Studie:

hier.pro/ylnwL

Kontakt:
Wibu-Systems AG
Zimmerstraße 5
76137 Karlsruhe
Tel. +49-721-93172-0
info@wibu.com
www.wibu.com



Hier finden Sie mehr über:
Newsletter

Abonnieren Sie unseren Newsletter

Jetzt unseren Newsletter abonnieren

Webinare & Webcasts

Technisches Wissen aus erster Hand

Whitepaper

Hier finden Sie aktuelle Whitepaper

Videos

Hier finden Sie alle aktuellen Videos


Industrie.de Infoservice
Vielen Dank für Ihre Bestellung!
Sie erhalten in Kürze eine Bestätigung per E-Mail.
Von Ihnen ausgesucht:
Weitere Informationen gewünscht?
Einfach neue Dokumente auswählen
und zuletzt Adresse eingeben.
Wie funktioniert der Industrie.de Infoservice?
Zur Hilfeseite »
Ihre Adresse:














Die Konradin Verlag Robert Kohlhammer GmbH erhebt, verarbeitet und nutzt die Daten, die der Nutzer bei der Registrierung zum Industrie.de Infoservice freiwillig zur Verfügung stellt, zum Zwecke der Erfüllung dieses Nutzungsverhältnisses. Der Nutzer erhält damit Zugang zu den Dokumenten des Industrie.de Infoservice.
AGB
datenschutz-online@konradin.de