Lizenzierung von Software mit dem AE Lizenzgenerator

Sicherheit bei betrieblicher genutzter Software sind A und O. Der Anwender wünscht spezielle Funktionen? Software soll skalierbar sein? AE SYSTEME steuert das mit dem Lizenz Generator!

Beim Softwarepaket AE WWS LITE bietet AET SYSTEME ein umfangreiches Warehouse Management System WMS mit zahlreichen Funktionen für Lagerlogistik und Warenwirtschaft. Die Software wurde vom Unternehmen in Eigenregie selbst entwickelt, von 2007 bis 2017 in Microsoft Visual Basic, ab 2017 auf C# migriert, unter Verwendung von Microsoft Visual Studio von 2005 …2019. Sie wird ständig modernisiert und verfügt über zahlreiche Module und Erweiterungen. Mit dem Paket lassen sich Anforderungen kleiner Projekte genauso abdecken, wie die Verwaltung XXL Lager und Arbeitsgruppen mit SQL Server und gleichzeitigen Buchungen verschiedener Mitarbeiter. Verzeichnis Module u. Erweiterungen.

Damit jeder nur das bekommt und bezahlt, was er auch benötigt, wurde für das Paket der Lizenz Generator geschaffen.

Der Lizenz Generator erzeugt für jeden Anwender eine passende, individuelle Lizenz Datei, die dem Anwender bei Kauf ausgehändigt wird und die downloadbare Demoversion aus dem Internet in eine lizenzierte Vollversion wandelt.

Die Lizenz Datei wird für jeden Anwender (oder Anwendergruppen im Konzernfall) erstellt. Der Arbeitsgang ist schnell und enthält verschiedene Schritte: Zuerst vermerkt der Bearbeiter den Firmennamen / Gruppennamen für den die Lizenz ausgestellt wird und der zur Laufzeit der Software im Hauptfenster ständig angezeigt wird.

Anschließend werden die vom Anwender gewünschten Module aktiviert. Benötigt der Anwender z.B. das Zusatzmodul POS / Elektr. , bekommt es ein Kreuz. Soll es nicht genutzt werden, wird es nicht markiert.

Im weiteren Verlauf wird die Anzahl der zulässigen Artikel in der Artikeldatenbank festgelegt. Die Mehrheit der Anwender entscheidet sich für eine No-Limit Lizenz mit einer unlimitierten Artikelanzahl. Der entsprechende Button trägt -1 in das Feld. Alternativ lassen sich bestimmte Werte vordefinieren, z.B. 100.000 oder freie Einträge. Die häufigen Werte sind bereits vor eingestellt.

Im Nachgang wird festgelegt, wie lange die Software in dieser Version verwendet werden soll. Die übliche Regel sind 365 Tage. Der Default Button erlaubt eine Nutzung bis zu 400 Tage (365 Tage + Kulanz), das entsprechende Ablaufdatum (heutiges Datum + 400 Tage) wird dabei automatisch errechnet und eingetragen. Diesen Wert kann der Bearbeiter überschreiben, es lassen sich auch abweichende Nutzungen definieren, z.B. wenige Tage bis mehrere Wochen für spezielle Repräsentations- oder Einsatzzwecke. Falls die Nutzungszeit nicht limitiert werden soll, lässt sich die Funktion Datumsgrenze deaktivieren. Es wird dann kein Datum bzw. Marker für ein leeres Datum gespeichert. Ob und wie weit das in einer modernen Produktionsumgebung noch sinnvoll ist, sei an anderer Stelle in diesem Essay besprochen.

Zum Abschluss werden alle Daten in einer Reglicense Datei zusammengefasst und verschlüsselt gespeichert. Der Anwender bekommt diese Datei bei Kauf übergeben und soll sie im Programmverzeichnis hinterlegen.

Die Lagerwirtschaft ist so erstellt, dass bei Programmstart diese Lizenz Datei automatisch überprüft wird.

Liegt sie nicht vor, arbeitet das Programm als Demoanwendung. Die in der Demo freigegeben Module sind programmtechnisch definiert. Erkennt das Programm die Lizenz Datei und finden sich darin richtige Daten, werden automatisch folgende Abläufe generiert:

  • Der Text für Lizenznehmer i.d.R. Firmenname wird in der Programmmaske angezeigt
  • Die einzelnen Module werden freigegeben oder gesperrt
  • Die Anzahl der maximalen Artikel wird gesetzt und ab sofort bei jeder Neuanlage eines Artikels überprüft. Ist das maximale Limit erreicht, können keine weiteren Artikel mehr hinzugefügt werden. Dieses schließt auch die Vorgänge Schnelleingabe / Externe Daten / Smartphone etc mit ein.
  • Das Limitdatum wird gesetzt und ab sofort bei jedem Programmstart geprüft. Ist das Datum abgelaufen kann das Programm gestartet werden, aber es ist kein Öffnen einer Datenbank mehr möglich.

Damit der Anwender der Lagersoftware sich selbst über seine Lizenz informieren kann, hat er die Modulübersicht erhalten. Hier werden Freischaltungsstatus aller Module sowie weitere Lizenzdaten angezeigt.

Warum Laufzeitbeschränkungen?

Die Frage warum laufzeitbeschränkte Software mag umstritten sein. Oftmals führt sie zu reger Diskussion. Mit einem ernüchternden Ergebnis aus der Realität: Mehr als 10 Jahre wurde die Software ohne jegliches Zeitlimit angeboten. Das führte in der Praxis dazu, dass viele Anwender eine einmal installierte Version nicht mehr veränderten. Es wurden weder Updates eingespielt noch sicherheitsrelevante Verbesserungen berücksichtigt. Behobene Programmfehler, Fortentwicklung der Windows Betriebssysteme etc wurden umfänglich ignoriert. Mit der Folge das nach einigen Jahren in vielen Betrieben eine Uraltsoftware eingesetzt wird, die sowohl erhebliche Risiken mit sich bringt als auch bei Support-Fragen nur mit enormen Aufwand betreut werden kann.

Erweiterungen auf andere Pakete

Die entscheidende Frage: kann dieses Lizenzierungsverfahren auch bei anderer Software verwendet werden? Die einfache Antwort: Natürlich! Im vorliegenden Fall wurden aus Sicherheitsgründen verschiedene Standards festgelegt. Um recht hohe Sicherheitsanforderungen zu erfüllen – zum Beispiel: Jedes Modul wird in einem Bit „versteckt“. Ein Byte = 8 Bit kann daher 8 Module steuern. Aktuell genutzt sind 3 Byte = Platz für 24 Module.

Erweiterungen sind natürlich problemlos möglich. Nur wer die Bitkombinationen innerhalb der Bytes UND die Position der Bytes innerhalb der Datei kennt, kann herausfinden, welches Modul aktiviert wurde. Die Bytes selbst sind in einer verschlüsselten Datei enthalten, die bei jeder Erstellung mit einer Reihe von zufällig generierten Zahlenfolgen vorne und hinten aufgefüllt wird. Damit ändert sich die Reglicensedatei bei jeder Erstellung, selbst wenn nur ein Modul mehr freigeschaltet wurde. Kleiner Hinweis am Rande: das im Screenshot ersichtliche Datum im Klartext am Ende der Datei  hat keine programmtechnische Steuerungsfunktion. Es wird lediglich zu Kontrollzwecken mitgeführt.

Die Anzahl der möglichen Artikel wird in einer INT Variable deklariert. Das sind bei MS dann 4 Byte. Der Kundentext / Firmenname des Anwenders kann wiederum beliebig lang sein, seine Länge wird speziell decodiert und ist in einem Längenbyte enthalten. Es versteht sich von selbst dass dieser Name verschlüsselt gespeichert und nicht im Klartext lesbar ist.

……….

AE WWS Lite. Softwarepaket für Lagermanagement

Text und Entwurf. (c) AE SYSTEME Testcenter
Hans-J. Walter hjw@terminal-systems.de

Hinweis: Alle Angaben ohne Gewähr. Diese Beschreibung bezieht sich auf unsere Installation und stellt keine Bewertung der verwendeten Techniken da.