Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   Empfehlung für ein Lizensierungssystem.. (https://www.delphipraxis.net/190540-empfehlung-fuer-ein-lizensierungssystem.html)

Whookie 13. Okt 2016 16:11

Empfehlung für ein Lizensierungssystem..
 
Ich bin gerade dabei, Nachforschungen für ein Lizensierungssystem, das möglichst einfach einsatzbereit ist, anzustellen.

Anforderungen wären:
  • Onlineregistrierung (alternativ auch über eine entsprechende Lizenzdatei), einmalig beim ersten Programmstart.
  • Die Möglichkeit auch später zusätzliche Funktionaliät über weitere Schlüssel nachzureichen.
  • Ich hatte an ein standortbasiertes Modell² gedacht, bei dem man gewisse Lizenzpackete erwerben kann (zB. für 5 User). Intern geht es aber weniger darum diese Zahl durchzusetzen (der Anwender darf z.B. 7 mal registrieren) sondern auch zu erfahren ob Bedarf für mehr Lizenzen gegeben ist.
  • Eine konkrete Lizenz sollte dann an einen PC gebunden werden (z.B.: Laptop der auch im Außendienst verwendet wird und nicht unbedingt Kontakt zum Internet haben muss)
  • In meiner Vorstellung gibt es auch eine Applikation (DB) über die alle ausgegebenen/zu erstellenden Lizenzen verwaltet werden.

Angesehen habe ich mir mal FlexNet wobei es natürlich interessant wäre, zu erfahren ob das hier schon mal jemand eingesetzt hat (auf den ersten Blick ist da soviel Buzztalk das man den Wald vor lauter Bäumen nicht sehen kann :lol:)

Obsidium Software habe ich ebenfalls mal gefunden (es scheint aber, dass dort die Lizenzverwaltung nicht integriert ist).

Ich würde mich freuen wenn hier ein paar weitere Vorschläge und vor allem Erfahrungsberichte hinzukommen würden!

----
² Die Idee hier ist das je Standort eine einmalig - höhere - Summe bezahlt werden muss (in der die ersten 5 Lizenzen bereits enthalten sind) und danach 5 Lizenzen zu einem bedeutend niedrigeren Preis erworben werden können. Betreibt die selbe Firma jedoch einen weiteren Standort fallen dort wieder einmalig die höhren Kosten an.

Frickler 13. Okt 2016 16:58

AW: Empfehlung für ein Lizensierungssystem..
 
Wie wärs denn mit WIBU? Die haben inzwischen auch Lösungen, die ohne Hardware-Dongle funktionieren, z.B. sowas:

http://www.wibu.com/de/software-lizenzierung.html
http://www.wibu.com/de/codemeter/cmactlicense.html

mensch72 13. Okt 2016 17:18

AW: Empfehlung für ein Lizensierungssystem..
 
Nix gegen "FlexNet", aber ich kenne genug "Softwareangebote" wo dieser Schutztyp zwecklos war und man sie auf den üblichen dunkelgrauen Webseiten auch so bekommt.


->damit geht genanntes, wenn es Geld kosten darf und einigermaßen "sicher" sein soll:
http://www.oreans.com/products.php

Wir nehmen entweder "WinLicense" als Komplettschutz incl. Lizenzmanagement, oder wenn es ganz hart sein soll "Themida"+"Code Virtualizer"+"EIGENE USB/TCPIP Hardware als Lizenzmanagement".

Wenn wichtige SchlüsselDaten nur in eigener Hardware liegen, diese nie verlassen und Kunden unserer (Live)WebServices die übertragenen Daten nur decodieren können, wenn sie alle paar Minuten den nächsten gültigen SessionKey von unserer Hardware berechnen lassen, dann sparen wir uns teilweise sogar die Programmverschlüsselung und vertrauen auf den Schutz durch den Hardwareanalyseaufwand, sowas auch nur mal zum "probieren" nachzubauen.

Wenn irgend möglich, integrieren wir immer 2 Lizenzsysteme, damit der Kunde im Falle von z.B. wegen OS Updates nicht mehr funktionierenden Softwareschutz, dann eben alternativ auch einen Netzwerkschutz (eigene TCP/IP-BOX) oder ein USB-Dongle nutzen kann. Nur so haben "normale" Kunden die Sicherheit, ihre ja gekaufte/gemietete Softwarefunktion auch wirklich hochverfügbar nutzen zu können. Auch wir begrenzen in gewissen Grenzen nicht sofort die mehrfache Lizenznutzung. Nur wenn wir über mehrere Wochen eine Liznenzüberschreitung z.B. bei Quartalsweiser Analyse registrieren, kontaktieren wir die Kunden und fragen höflich nach, ob sich an der Systemnutzung etwas geändert hat. Wir haben noch nie gegen den Willen eines Kunden eine Lizenz selbst "plötzlich" deaktiviert. (hartes sperren kommt nach Absprache meist bei verlorenen Notebooks oder Versionen auf Computern ausgeschiedener Mitarbeiter, wenn wir die weiter als "aktiv" registrieren)


Es wird von 30Eur Software bis zu Software&Daten für zig tausend Eur/Monat alles aus purem Spaß an der Analyse "gehackt"... mit dem Wissen das jede Software durch Software analysiert und manipuliert werden kann, schützen wir mehr unsere (Live)Daten auf Serverseite als unsere offline Clientsoftware.
Wer ein OfflineSystem im 100% AirGapBetrieb von uns will, der muss nur aktuell 1x im Jahr ein .TXT File von uns "irgendwie" in sein System eingeben(notfals per Hand von Papier "abschreiben")... Notfalls arbeiten wir für den Datenaustausch in Hochsicherheitssystemen & AIR-GAP-Netzwerken bidirektional rein optisch mit QrCodes, welche einfach ausgedruckt auf Papier durch jede elektronische Sicherheitsschleuse kommen.


=> Lizenzmanagement für Software ist bei uns ein Auslaufmodell
=> einfaches Zugriffsmanagement für stark verschlüsselte "Daten"&"Inhalte" ist die aus unserer Sicht viel größere Herausforderung, für die es leider so gut wie keine flexiblen offen dokumentierten Angebote am Markt gibt

hanvas 13. Okt 2016 19:14

AW: Empfehlung für ein Lizensierungssystem..
 
Zitat:

Zitat von mensch72 (Beitrag 1350819)
Nix gegen "FlexNet", aber ich kenne genug "Softwareangebote" wo dieser Schutztyp zwecklos war und man sie auf den üblichen dunkelgrauen Webseiten auch so bekommt.

->damit geht genanntes, wenn es Geld kosten darf und einigermaßen "sicher" sein soll:
http://www.oreans.com/products.php

Wir nehmen entweder "WinLicense" als Komplettschutz incl. Lizenzmanagement, oder wenn es ganz hart sein soll "Themida"+"Code Virtualizer"+"EIGENE USB/TCPIP Hardware als Lizenzmanagement".

In wie weit unterscheidet sich Code-Virtualizer von den in Themida bereits integrierten Makros zur Verschlüsselung von Code. Ich war bisher immer der Meinung das beide Produkte bezogen auf diese Fähigkeit in etwa äquivalent sind. Fehlannahme?

cu Ha-Jö

Sherlock 14. Okt 2016 08:44

AW: Empfehlung für ein Lizensierungssystem..
 
Zu diesem Thema gibt es eigentlich nicht viel zu sagen, ausser: Alles ist knackbar. Es ist lediglich eine Frage der Kosten-Nutzen-Rechnung. Möchte man einen Betrag X investieren, womöglich sogar noch pro verkauftem Produkt, und somit den Ertrag schmälern, oder möchte man einen kleinen Eigenbau einsetzen, dessen Fixkosten schnell im Gesamtbudget untergehen. Ich tendiere immer zu letzterem.

Sherlock

Jim Carrey 14. Okt 2016 12:30

AW: Empfehlung für ein Lizensierungssystem..
 
Zitat:

Zitat von Sherlock (Beitrag 1350855)
Zu diesem Thema gibt es eigentlich nicht viel zu sagen, ausser: Alles ist knackbar. Es ist lediglich eine Frage der Kosten-Nutzen-Rechnung. Möchte man einen Betrag X investieren, womöglich sogar noch pro verkauftem Produkt, und somit den Ertrag schmälern, oder möchte man einen kleinen Eigenbau einsetzen, dessen Fixkosten schnell im Gesamtbudget untergehen. Ich tendiere immer zu letzterem.

Sherlock

Ich sehe das so:
je besser die Software geschützt ist, desto größer ist der Reiz sie zu knacken.
Eure Software wird, sobald sie mal im Inter-Netz ist, eh geknackt, wenn es für die Software genug Verwendung gibt.

Bietet die Software doch gegen ein Entgeld an aber ohne Schutz, der eh geknackt werden würde. Dann müssen sich die klugen Knacker wenigstens keine Mühe mehr machen.

Ghostwalker 14. Okt 2016 19:31

AW: Empfehlung für ein Lizensierungssystem..
 
Hi,

wie Sherlock schon sagte: Alles ist knackbar.

Die Fragen die sich hier zuerst stellen ist "Wie interresant ist meine Software für Private/Kleinstfirmen ?" und
"Wie Vertrauenswürdig sind meine Kunden/potentiellen Kunden ?"

Das ist deshalb interessant, weil man so das "Risikopotential" einschätzen kann.
BSP. wird eine 3D-Zeichen-Software bei Privatleuten mehr Interresse wecken als eine FiBu :)

Das andere ist die kaufm. Seite. Was soll eine Lizenz kosten ? Wieviel Lizenzen wird es (ca.) geben ?

Macht ja schließlich keinen Sinn, 20.000 Euro für ein Lizenssystem auszugeben, wenn nur 100 Lizensen a 100 Euro reinkommen :)


Hoffe die Anregungen helfen weiter :)

sh17 15. Okt 2016 06:44

AW: Empfehlung für ein Lizensierungssystem..
 
Gerade im Aufwind:
https://hexlicense.com/

Darlo 7. Nov 2016 21:16

AW: Empfehlung für ein Lizensierungssystem..
 
Zitat:

Zitat von sh17 (Beitrag 1350930)
Gerade im Aufwind:
https://hexlicense.com/

Kann jemand über Erfahrungen damit berichten?

RSF 8. Nov 2016 08:27

AW: Empfehlung für ein Lizensierungssystem..
 
Taugt in diesem Zusammenhang das in Delphi 10.1 Berlin enthaltene TurboPack OnGuard ?

Assarbad 8. Nov 2016 09:25

AW: Empfehlung für ein Lizensierungssystem..
 
Zitat:

Zitat von Ghostwalker (Beitrag 1350915)
"Wie Vertrauenswürdig sind meine Kunden/potentiellen Kunden ?"

Das ist der Knackpunkt, gell? Ein Schutz muß immer abwägen zwischen dem mehr oder weniger berechtigten Schutzinteresse des Herstellers, dem Mißtrauen dem Kunden gegenüber und dem was man dem Kunden im Endeffekt aufbürdet (Fairneß seitens des Herstellers vs. Fairneß gegenüber dem Hersteller).

Da ich in der Vergangenheit (2005) einen Dongle von einer CAD-Software (MARX CBV) im Alleingang für ein Familienmitglied geknackt habe (LPT-Dongles waren schon immer mit am anfälligsten für's Durchbrennen) und sich das beim - gegenüber dem Softwarehersteller unangekündigten - schnellen Umzug auf einen Laptop (aufgrund Diebstahls des vorherigen Rechners) auszahlte, betrachte ich das eben auch von mehreren Seiten. Wenn der LPT-Dongle durchgebrannt wäre, wäre Pumpe gewesen. So war Pumpe aufgrund des geklauten Rechners. Aber der Dongle wurde eben nicht geklaut, weil der sicher im Safe lag, denn der CAD-Software wurde ja mit anderer Software vorgekaukelt der Dongle sei am Rechner. Nur hatte der Laptop keinen LPT-Port mehr. Also war eben trotzdem Pumpe. Die Arbeit konnte aber dennoch schon vor Eintreffen des - ebenso dilettantisch implementierten (es wundert nicht!) - USB-Dongles weitergehen.

Ich war auch anno 2002 am Knacken eines Dongles (Sentinel) für eine SCADA-Software beteiligt. Da der nicht so dilettantisch eingebunden war wie jener in der CAD-Software, mußte ein Treiber geschrieben werden der die Kommunikation mit dem Dongle abfängt und die entsprechenden Daten aufnimmt um sie später wieder (ohne Dongle) abspielen zu können.

Habe dann nochmal (2013) am Nachfolgeprogramm des ersten CAD-Programms gewerkelt. Aber der Schutz dort war human (also die Abwägung zwischen Fairneß gegenüber dem Nutzer und Fairneß gegenüber dem Hersteller war gelungen). Daher hab ich das aufgegeben. Sollte der Hersteller die Daumenschraube anziehen, guck ich mir das nochmal an und habe dann schon ein wenig mit meiner bisherigen Analyse vorgebaut.

(In keinem der Fälle sind die Resultate irgendwo öffentlich verfügbar.)

Wer von der Prämisse ausgeht daß alles knackbar ist, hat einen anderen Blick auf die Dinge. Ich geb dir mal ein Beispiel. Hexrays der Hersteller von IDA ist sich aufgrund der Natur der eigenen Software sehr bewußt was man alles mit RCE (Reverse Code Engineering) machen kann. Daher bemühen die sich nicht erst einen Kopierschutz an sich zu machen, sondern sind es anders angegangen. Es ist übrigens ausdrücklich erlaubt IDA selbst zu reversen.
  1. Die Installationsdatei ist mit einem Paßwort geschützt. Das ist vermutlich vor allem dafür da jene abzuhalten, die diese Installationsdatei durch Zufall in die Hände bekommen. Bei meiner IDA 6.95 Installation waren es 12 Zeichen, wobei Groß- und Kleinbuchstaben sowie Ziffern zum Einsatz kamen. Also mit etwas Geduld durchaus auch automatisiert knackbar.
  2. Jede Installation enthält "Wasserzeichen" die diese Installation rückverfolgbar machen.

Der letzte Punkt ist der wichtige. Wenn wir davon ausgehen daß es sich um einen Rechtsstaat handelt in dem man Geschäfte macht, sollte man davon ausgehen daß ein Lizenzvertrag etwas wert ist. Zumal das Internet trotz gegenteiliger Bekundungen diverser Politiker schon jetzt kein rechtsfreier Raum ist.

Wenn nun der Kunde die Software weitergibt (oder dies durch Fahrlässigkeit ermöglicht) läßt sich die Kopie zum Kunden zurückverfolgen, der dann mit Folgen rechnen muß. Die können auch schon im Lizenzvertrag als Vertragsstrafe festgelegt werden. Dort ließe sich dann auch abhandeln wie es im Falle von Fahrlässigkeit aussieht und wer welche Beweisschuld hat. Die Macher von IDA hatten da bspw. mal eine "Hall of Shame" auf ihrer Webseite. Die haben übrigens immer wieder nicht an Privatleute verkauft, weil sie Angst vor Cardern hatten (also Leuten die fremde Kreditkarten mißbrauchen). Daher bürgte für meine erste Lizenz Nico für mich (einige hier kennen ihn noch). Damals noch eine Studentenversion, mittlerweile natürlich seit Jahren die Vollversion.

Nachdem dann aber ein ehemaliger Mitarbeiter von ESET IDA kopiert hatte und weitergab, woraufhin diese geknackt und öffentlich verfügbar gemacht wurde (IDA 6.1 inklusive Decompiler), war auch der Schwachpunkt dieser Methode (Hall of Shame) klar. Es wäre komplett auf ESET zurückgefallen, obwohl ein gekündigter Mitarbeiter die Schuld trug (ob es da Zivilklagen gegen den namentlich bekannten Mitarbeiter gab, weiß ich nicht). Einerlei mir geht es darum daß es auch Alternativen gibt bei denen man nicht die Kunden quälen muß, und die dennoch eine hinreichende (rechtliche) Sicherheit für den Hersteller bieten.

Übrigens bieten diese ganzen Anbieter - gerade bei den Hardware-Dongles - immer einen Bausatz (SDK) und Dokumentation an. Aber scheinbar lesen sich das nicht alle Hersteller durch, denn ansonsten würden sie den Schutz nicht so dilettantisch implementieren. Im Fall der ersten CAD-Software war der Schutz durch einen DLL-Placement Angriff zu knacken. Im ersten Durchgang schrieb ich dazu eine alternative DLL welche statt im Systemverzeichnis im Programmverzeichnis landete. Diese schnitt dann die Kommunikation der eigentlichen DLL mit (die Funktionsaufrufe reichte ich einfach weiter). Da hier keine Logik oder Daten in den Dongle ausgelagert waren (wie beim Sentinel in 2002), konnte ich so auf einfachste Weise jene Werte ermitteln die das Programm gern sehen wollte. Im zweiten Schritt ließ ich dann meine DLL diese Werte vorgaukeln, was auch hervorragend klappte. Fazit: dilettantisch implementiert. Allein das Überprüfen der Signatur der geladenen DLL hätte hier geholfen. Und natürlich hätte man den DLL-Placement Angriff auch verhindern können. Das wären schon zwei weitere Steine in meinem Weg gewesen, wenn auch keine die nicht auszuräumen gewesen wären.

Zitat:

Zitat von Jim Carrey (Beitrag 1350872)
je besser die Software geschützt ist, desto größer ist der Reiz sie zu knacken.

Naja, das ist ja irgendwie das Prinzip "was teuer ist, muß auch gut sein" übertragen auf Software "was aufwendig geschützt ist, muß auch gut sein". Es ist richtig, es gibt eine Menge Leute mit ausreichend Zeit um Software zu knacken. Manche tun es eh nur für den Ruhm, andere aus kommerziellem Interesse und einige vielleicht aus Langeweile oder anderen Gründen. Da kann jeder auf der "Abschußliste" landen.

Aber allein den Reiz an der Güte des Schutzes festzumachen halte ich für zu kurz gegriffen.

generic 10. Nov 2016 08:36

AW: Empfehlung für ein Lizensierungssystem..
 
Ich nutze ein eigenes Lizenzsystem zusammen mit Themida.

Meine Erfahrungen:
- Aktuell ist mir kein Crack oder Seriennummer-Generator für meine Software bekannt.
- Theamida geschützte Programme werden leider von viele AV Programmen als schädlich aussortiert - dadurch habe ich erhöhten Support
- Einen Kunden die Heuristik von AV Programmen zu erklären ist nicht lustig.
- Lizenznummern sollten KEINE Leerzeichen enthalten - Kunden kopieren meist nicht die ganze Lizenznummer
- Unicode in der Lizenz führt (bei mir im Augenblick) zu Problemen

Lizenzen werden über ein PHP Skript erzeugt und dem Shop-System (DigitalRiver) zur Verfügung gestellt.
Lizenzen werden mit dem Delphi-Programm geprüft.

Assarbad 10. Nov 2016 22:37

AW: Empfehlung für ein Lizensierungssystem..
 
Zitat:

Zitat von generic (Beitrag 1353189)
- Theamida geschützte Programme werden leider von viele AV Programmen als schädlich aussortiert - dadurch habe ich erhöhten Support

Und das zu Recht! Die meisten mit Themida "geschützten" Programme sind in der Tat bösartige Programme die sich verstecken wollen. Kurzum, deine Wahl ist äußerst bescheiden in diesem Fall.

Aber ist ja deine Sache :zwinker:

Ich würde jedoch empfehlen: Finger weg von Themida.

Zitat:

Zitat von generic (Beitrag 1353189)
- Einen Kunden die Heuristik von AV Programmen zu erklären ist nicht lustig.

Das ist bei uns auch nicht einfacher. Als jemand der für eine AV-Firma arbeitet finde ich es aber 1.) gerechtfertigt bestimmten Packern etwas zu unterstellen, denn wir sammeln nicht nur bösartige Proben, sondern auch jede Menge gutartige; und wenn da ein Packer ala Themida hervorsticht ist das nunmal nicht so gut für dessen Benutzer ob zahlend (bspw. du) oder nicht (jede Menge Malwareautoren). Taggant ist der branchenübergreifende (AV und Packer) Versuch das Problem anzugehen. Sieht aber bisher wie eine Totgeburt aus. Und 2.) finde ich es viel schlimmer, daß du als ISV oder auch Hobbyanbieter von Programmen ein Problem hast wenn irgendein Hersteller was als bösartig einstuft, weil in vielen Fällen die anderen nachziehen (in der Schule würde man von Abschreiben sprechen). Dadurch wird es zu einem Kampf gegen Windmühlen eine Falscherkennung wieder aus den Produkten aller Hersteller herausnehmen zu lassen. Denn im Gegensatz zu bösartiger Software wo diese Dynamik gewünscht ist, fehlt für gutartige fälschlich erkannte Software ein Mechanismus allen Herstellern mitzuteilen, daß es sich um einen Fehlalarm handelt. Man darf sich also an alle einzeln wenden und das ist noch nicht einmal über eine vereinheitlichte Schnittstelle möglich. IEEE Clean File Metadata Exchange (CMX) ist da leider keine Hilfe, weil da nur die Giganten der Softwarebranche reingelassen werden. Und als ich nach einem Vortrag bei VB 2013 in Berlin einen der Organisatoren fragte wie das denn für mich als Open-Source-Autoren aussähe, bekam ich auch leider eine abschlägige Antwort. Nicht einmal kleinere Unternehmen werden dort berücksichtigt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz