Python-Verschlüsselungstool Software für KI und Machine Learning lizenzieren und schützen
Anbieter zum Thema
Wer Software für die Bereiche Künstliche Intelligenz (KI) und Machine Learning (ML) entwickelt, nutzt meistens die Programmiersprache Python dafür.

Häufig ist ebenfalls die Software für die industrielle Fertigung, Bildung, Finanz- und Gesundheitswesen oder den juristischen Bereich in Python geschrieben. Einfache Syntax, Übersichtlichkeit und Flexibilität zeichnen diese Programmiersprache aus, weshalb sie gerne eingesetzt wird. Der aktuelle TIOBE-Index zeigt, dass im August 2022 Python den ersten Platz bei den Entwicklern beliebtesten Programmiersprachen einnimmt und einen Marktanteil von 15,42 % hat. Im Vergleich zum August 2021 ist dies eine Verbesserung um einen Platz.
Hacker haben das Ziel, mögliche Schwachstellen zu finden und auszunutzen. Im Falle von KI- und ML-Anwendungen führt dies dazu, dass sich auch die Hacker intensiver mit Python befassen. Sie wollen mit möglichst geringem Aufwand an das wertvolle Knowhow des Softwareherstellers gelangen, es analysieren und davon profitieren. Grundsätzlich ist bei Python der Quellcode offen und lesbar, sodass die Hacker einfach die Software analysieren, kopieren oder manipulieren können. Kennen die Angreifer erst einmal die Details der Software, dann besteht die Gefahr vom Nachbau der Software (Reverse Engineering) oder von Manipulation, d.h. Schadfunktionen könnten zur Sabotage oder Spionage eingebaut werden.
Lösung CodeMeter-Technologie
Das Karlsruher Unternehmen Wibu-Systems entwickelt seit über drei Jahrzehnten Lösungen zum Schutz von Software (Knowhow-Schutz) und zur Lizenzierung von Softwarefunktionen (Monetarisierung), die von Herstellern von Software und von intelligenten Geräten eingesetzt werden. Zuerst hat CodeMeter die klassische Software geschützt und später auch die Software im industriellen Bereich, für den besondere Anforderungen gelten, wie der Einsatz der Schutzhardware in widrigen Umgebungen. Die Hersteller können ganz flexibel und feingranular die benötigten Lizenzierungsmöglichkeiten für die unterschiedlichen Märkte und Regionen abbilden, beispielsweise automatisiert ablaufende zeit-, nutzungs- oder funktionsbasierte Lizenzmodelle für Einzelplätze und innerhalb eines Netzwerks (Floating-Lizenzen).
Das speziell für Python-Anwendungen entwickelte Tool „AxProtector Python“ erlaubt die automatische Verschlüsselung der Software ohne Anpassung am Quellcode. Schon vor der Markteinführung von AxProtector Python konnten Hersteller über einige Zusatzschritte ihre Software schützen, was jetzt jedoch einfacher geht. In der CodeMeter Protection Suite sind die für verschiedenen Programmiersprachen verfügbaren AxProtector-Varianten zusammengefasst, sodass die Hersteller das passende Tool nutzen können, um ihre Software komplett oder bestimmte Teile automatisch zu verschlüsseln oder zu lizenzieren. Die Anwender erhalten vom Hersteller die geschützte Software und die dazugehörigen Lizenzschlüssel. Findet irgendwann später ein weiterer Softwarekauf statt, dann wird ebenfalls beides ausgeliefert. Im Lizenzschlüssel sind die Berechtigungen des Anwenders enthalten. Als Schlüsselspeicher dienen die Schutzhardware CmDongle, die softwarebasierte Aktivierungsdatei CmActLicense oder CmCloudContainer für den Einsatz in der Cloud.
Vorkompilierung
Ohne AxProtector Python war der Schutz von Python-Software aufwendiger: Zuerst erfolgte die Vorkompilierung mittels Cython-Compiler in ein ausführbares Programm und danach wurde dieses Programm mittels AxProtector Windows verschlüsselt. Bei diesem Weg muss der Hersteller für jede einzelne Plattform die jeweils zugehörige ausführbare Datei aufwendig erzeugen und ausliefern.
AxProtector Python
Für den Einsatz von AxProtector Python benötigen die Hersteller mindestens Python 3 und CodeMeter 7.30. AxProtector Python erzeugt keinen nativen Code, sondern verschlüsselt Python-Anwendungen direkt und ohne Vorkompilierung, und zwar plattformunabhängig. Anders als beim Weg über Cython erzeugt der Hersteller nur eine einzige geschützte Anwendung, die auf allen gängigen Plattformen wie Windows, Linux und macOS lauffähig ist. Der Hersteller kann alle CodeMeter-Funktionen auf einem hohen Schutzniveau nutzen. Nur der gerade benötigte Teil wird während der Laufzeit entschlüsselt; der Großteil der Software bleibt verschlüsselt.
Wenn die Hersteller einzelne Funktionen ihrer Software separat verkaufen wollen, können sie einzelne Funktionen verschlüsseln und ihren Kunden den dazugehörigen Lizenzschlüssel geben. Eine weitere Möglichkeit ist, dass Hersteller durch Annotationen im Programmcode oder Einträge in der Schutzdefinition gewisse Funktionen und Dateien von der Verschlüsselung ausschließen, z.B. für Trial-Versionen. Da der Schritt der Vorkompilierung entfällt, kann der Hersteller viel einfacher mit AxProtector Python arbeiten als über den Cython-Compiler.
Wächst der Markt mit KI- und ML-Anwendungen weiter, wird Python als beliebte Programmiersprache entsprechend noch häufiger eingesetzt werden. Um die besonders schutzbedürftigen Python-Anwendungen wirkungsvoll zu schützen und mittels Lizenzierung die gekauften Funktionen freizuschalten, dienen technische Lösungen wie CodeMeter mit seinen flexiblen Schutz- und Lizenzierungsmöglichkeiten, die es für verschiedene Programmiersprachen gibt.
(ID:48555565)