Programm soll in verschiedenen Versionen lizenziert sein
Hallo ihr Administratoren,
ich möchte ein Programm entwickeln, was man sich in einer kostenlosen, einer standard und einer premium Version herunterladen kann. Die Standard und Premium Version ist dann kostenpflichtig. Der Benutzer lädt sich jetzt den Installer runter, gibt einen Key an, der Server prüft, ob alles ok ist und wenn ja, wird das Programm gestartet. Soweit so gut. Ich habe mich schon mal informiert, wie man so etwas umsetzen kann. Dabei habe ich diese Seite gefunden: Link
Was haltet ihr von dieser Methode? Sicher oder unsicher, oder was würdet ihr mir empfehlen?
ich möchte ein Programm entwickeln, was man sich in einer kostenlosen, einer standard und einer premium Version herunterladen kann. Die Standard und Premium Version ist dann kostenpflichtig. Der Benutzer lädt sich jetzt den Installer runter, gibt einen Key an, der Server prüft, ob alles ok ist und wenn ja, wird das Programm gestartet. Soweit so gut. Ich habe mich schon mal informiert, wie man so etwas umsetzen kann. Dabei habe ich diese Seite gefunden: Link
Was haltet ihr von dieser Methode? Sicher oder unsicher, oder was würdet ihr mir empfehlen?
Please also mark the comments that contributed to the solution of the article
Content-ID: 349603
Url: https://administrator.de/contentid/349603
Printed on: December 3, 2024 at 08:12 o'clock
20 Comments
Latest comment
Hi!
Yo, ich kann mich dem Kollegen hierbei nur anschliessen. Ausserdem verwechselst Du da irgendwie die Begrifflichkeiten. Was Du da in Form von Programmcode realisieren willst, ist ein Kopierschutz und keine Lizenzierung. Eine Lizenzierung wird per Lizenzvertrag geregelt und nicht über einen Kopierschutz, ausserdem machst Du damit nur irgendwelche Crackerkiddies heiss, zu testen, wie lange die brauchen um das zu umgehen. Und vor allem Administratoren erschwerst Du damit auch noch die Arbeit.
Biete deinen Kunden eine Version mit Service (kostenpflichtig) und eine Variante als Freeware (kostenlos) an und gut ist. Alles andere bringt nur Ärger, Aufwand und Frust sowohl für dich, als auch für deine potenziellen Kunden. Wenn einer deine Software illegal nutzen will, dann wird er das auch tun, denn es wird immer einen Weg geben sowas zu umgehen, wie das der Author des verlinkten Artikels ja selbst schon schreibt. Ich würde die Zeit und Energie besser in die Qualität der Software investieren als in einen Kopierschutz...
mrtux
Yo, ich kann mich dem Kollegen hierbei nur anschliessen. Ausserdem verwechselst Du da irgendwie die Begrifflichkeiten. Was Du da in Form von Programmcode realisieren willst, ist ein Kopierschutz und keine Lizenzierung. Eine Lizenzierung wird per Lizenzvertrag geregelt und nicht über einen Kopierschutz, ausserdem machst Du damit nur irgendwelche Crackerkiddies heiss, zu testen, wie lange die brauchen um das zu umgehen. Und vor allem Administratoren erschwerst Du damit auch noch die Arbeit.
Biete deinen Kunden eine Version mit Service (kostenpflichtig) und eine Variante als Freeware (kostenlos) an und gut ist. Alles andere bringt nur Ärger, Aufwand und Frust sowohl für dich, als auch für deine potenziellen Kunden. Wenn einer deine Software illegal nutzen will, dann wird er das auch tun, denn es wird immer einen Weg geben sowas zu umgehen, wie das der Author des verlinkten Artikels ja selbst schon schreibt. Ich würde die Zeit und Energie besser in die Qualität der Software investieren als in einen Kopierschutz...
mrtux
Zitat von @Yanmai:
Was haltet ihr von dieser Methode? Sicher oder unsicher, oder was würdet ihr mir empfehlen?
Was haltet ihr von dieser Methode? Sicher oder unsicher, oder was würdet ihr mir empfehlen?
Eine nette Demo, von einer der vielen Möglichkeiten, einen Key zuerstellen. Für ein Lizenz-System, mit Überprüfung durch einen Server, nur als Idee zu gebrauchen.
Viel Erfolg.....
Hi,
also ich, als kleiner Programmierer, würde meine Software dann so modular aufzubauen, dass ich sie auch modular kompilieren und packen kann. Damit kann ich dann schon mal verschiedene Editionen herausgeben, welche wirklich nur ihren Funktionsumfang enthalten, welchen man auch nicht nachträglich freischalten kann.
Allerdings löst das nicht das Problem der illegalen Weitergabe (ohne Lizenz). Da kann entweder solch ein Key-System helfen (lindern) oder eine verschlüsselte Lizenzdatei, welche auch Daten des Lizenznehmers enthält, welche auch gut sichtbar in der Programmoberfläche dargestellt werden. Sowas schreckt schon mal ab, das eigene Lizenzfile einfach so an Dritte weiterzugeben. Aber auch das fällt eher in die Kategorie "Linderung".
E.
also ich, als kleiner Programmierer, würde meine Software dann so modular aufzubauen, dass ich sie auch modular kompilieren und packen kann. Damit kann ich dann schon mal verschiedene Editionen herausgeben, welche wirklich nur ihren Funktionsumfang enthalten, welchen man auch nicht nachträglich freischalten kann.
Allerdings löst das nicht das Problem der illegalen Weitergabe (ohne Lizenz). Da kann entweder solch ein Key-System helfen (lindern) oder eine verschlüsselte Lizenzdatei, welche auch Daten des Lizenznehmers enthält, welche auch gut sichtbar in der Programmoberfläche dargestellt werden. Sowas schreckt schon mal ab, das eigene Lizenzfile einfach so an Dritte weiterzugeben. Aber auch das fällt eher in die Kategorie "Linderung".
E.
Moin,
sehe ich ähnlich wie emeriks.
Würde die Software auch Modular aufbauen. Somit erhält zunächst jeder nur das, was er auch an Features benötigt.
Und zur Lizensierung:
Entweder mit Dongles arbeiten (dann musst du aber Hardware kaufen, diese mit deiner Software verheiraten, etc...) oder du erzeugst Keys auf Basis der vor Ort installierten Hardware. Die User starten ein kleines Programm, welches aus der Hardware-ID und sonstigen, nur dir bekannten Salts (Datum, Kundennr., int. Modulbezeichnung, Mondphase, deine Nasenlänge, ...) einen Key erzeugt. Diesen Key schicken dir die Kunden zu und anhand dessen generierst du dann den tatsächlichen Key und sendest diesen als Datei deinen Kunden zu.
Und stimmt vor Ort dein erzeugter Key nicht mit den Gegebenheiten vor Ort überein, ist der Server/ die Software auf einen anderen PC kopiert worden...
Das ist zwar keine wasserdichte Absicherung, aber macht es den meisten schon mal schwieriger, Software/ Lizenzen zu kopieren.
Ist halt nur eine Frage von Nutzen und Aufwand....
Gruß
em-pie
sehe ich ähnlich wie emeriks.
Würde die Software auch Modular aufbauen. Somit erhält zunächst jeder nur das, was er auch an Features benötigt.
Und zur Lizensierung:
Entweder mit Dongles arbeiten (dann musst du aber Hardware kaufen, diese mit deiner Software verheiraten, etc...) oder du erzeugst Keys auf Basis der vor Ort installierten Hardware. Die User starten ein kleines Programm, welches aus der Hardware-ID und sonstigen, nur dir bekannten Salts (Datum, Kundennr., int. Modulbezeichnung, Mondphase, deine Nasenlänge, ...) einen Key erzeugt. Diesen Key schicken dir die Kunden zu und anhand dessen generierst du dann den tatsächlichen Key und sendest diesen als Datei deinen Kunden zu.
Und stimmt vor Ort dein erzeugter Key nicht mit den Gegebenheiten vor Ort überein, ist der Server/ die Software auf einen anderen PC kopiert worden...
Das ist zwar keine wasserdichte Absicherung, aber macht es den meisten schon mal schwieriger, Software/ Lizenzen zu kopieren.
Ist halt nur eine Frage von Nutzen und Aufwand....
Gruß
em-pie
Sowas schreckt schon mal ab, das eigene Lizenzfile einfach so an Dritte weiterzugeben. Aber auch das fällt eher in die Kategorie "Linderung".
Der "normale" deutsche Anwender gibt ungern seine Lizenzdaten (z.B. bestehend aus Name+PLZ+Ort) an dritte weiter. Mir ist aber aufgefallen, das kleine IT-Buden gerne Ihre Lizenzen mehrfach an Kunden verkaufen oder sogar NFS-Lizenzen verteilen. Den Anwender stört das nicht, das die Lizenz auf seinen IT-Dienstleister ausgestellt ist, bzw. denkt der sich nichts dabei, denn er hat ja die Rechnung bei der IT-Bude "bezahlt".
Bei größeren Endkunden kommt dazu, dass durch die Admins mehr Lizenzen installiert werden, wie eigentlich gekauft wurden. Bin auch nur der kleiner Programmierer, aber der Schaden bzw. Ausfall ist gut 5-stellig (im Jahr). Linderung brachte hier nur eine Routine in der Software, die Lizenzen in einer Domain suchen kann.
MfG
Der "normale" deutsche Anwender gibt ungern seine Lizenzdaten (z.B. bestehend aus Name+PLZ+Ort) an dritte weiter. Mir ist aber aufgefallen, das kleine IT-Buden gerne Ihre Lizenzen mehrfach an Kunden verkaufen oder sogar NFS-Lizenzen verteilen. Den Anwender stört das nicht, das die Lizenz auf seinen IT-Dienstleister ausgestellt ist, bzw. denkt der sich nichts dabei, denn er hat ja die Rechnung bei der IT-Bude "bezahlt".
Bei größeren Endkunden kommt dazu, dass durch die Admins mehr Lizenzen installiert werden, wie eigentlich gekauft wurden. Bin auch nur der kleiner Programmierer, aber der Schaden bzw. Ausfall ist gut 5-stellig (im Jahr). Linderung brachte hier nur eine Routine in der Software, die Lizenzen in einer Domain suchen kann.
MfG
eigentlich waren ja Jingles gemeint. Nur wenn der heimlich kopierte Win95-Ton noch auf dem Windows 2016-Server vorhanden ist, kann die Software gestartet werden...
Habs aber dennoch mal korrigiert oben
Die Idee ist eigentlich gar nicht dumm... das vermutet bestimmt keiner
Habs aber dennoch mal korrigiert oben
Die Idee ist eigentlich gar nicht dumm... das vermutet bestimmt keiner
EIgentlich nicht ersntgemeint gewesen und zudem ein alter Hut:
Legts den Windows95-Ton irgendwo ab und bildest einen Hash über diese Datei. Stimmt der mit den im Quellcode hinterlegten Daten überein...
Nur dass du eben ne Datei verwendest, die zunächst mal keiner vermutet...
@runasservice:
Legts den Windows95-Ton irgendwo ab und bildest einen Hash über diese Datei. Stimmt der mit den im Quellcode hinterlegten Daten überein...
Nur dass du eben ne Datei verwendest, die zunächst mal keiner vermutet...
@runasservice:
[...] Linderung brachte hier nur eine Routine in der Software, die Lizenzen in einer Domain suchen kann.
Das klappt aber auch nur, solange die "Suchsoftware" zugriff auf alle Server hat. Sind einige Server durch ACLs und VLAN/ Remotestandorten getrennt, wird das vermutlich nichts@runasservice:
[...] Linderung brachte hier nur eine Routine in der Software, die Lizenzen in einer Domain suchen kann.
Das klappt aber auch nur, solange die "Suchsoftware" zugriff auf alle Server hat. Sind einige Server durch ACLs und VLAN/ Remotestandorten getrennt, wird das vermutlich nichtsDie Rechner müssen nur in einer Domain sein, wie Sie im einzelnen verbunden sind spielt keine Rolle. Ohne ins Detail zu gehen, kann man u.a. eine einfache IPC broadcast message versenden. Die Clients in der Domain, melden sich dann von selbst. Die Zeit spielt dabei keine Rolle, d.h. es "darf" ruhig einige Tage und mehre Versuche dauern bis die ganze Domain erfasst ist.
MfG
EIgentlich nicht ersntgemeint gewesen und zudem ein alter Hut:
Legts den Windows95-Ton irgendwo ab und bildest einen Hash über diese Datei. Stimmt der mit den im Quellcode hinterlegten Daten überein...
Nur dass du eben ne Datei verwendest, die zunächst mal keiner vermutet...
Ach so. Aber das bekommt man doch mit, wenn man das Programm bei der Installation und/oder bei den ersten Starts beobachtet.Legts den Windows95-Ton irgendwo ab und bildest einen Hash über diese Datei. Stimmt der mit den im Quellcode hinterlegten Daten überein...
Nur dass du eben ne Datei verwendest, die zunächst mal keiner vermutet...
Lässt du bei der jeder Installation von Programmen immer ein procmon o.ä. mitlaufen?
Falls ja (und viele andere auch) sollte ich meine Arbeitsweise bei Softwareinstallationen anpassen -.-
Nein. Aber wenn ich es würde knacken wollen und über sowas nachdenke, dann schon. Habe so schon einige meiner eigenen Programme soweit "gehärtet" wie möglich. Es bleibt aber nur ein Alibi-Schutz.Falls ja (und viele andere auch) sollte ich meine Arbeitsweise bei Softwareinstallationen anpassen -.-
Nun es reicht ja schon ein Differenz Backup vom PC das Täglich erstellt wird um die Änderungen zu Erkennen.
Zudem der die Methode der Prüfung knacken will, wird da schon die großen Geschütze auffahren.
Zudem gibt es ja auch Decompiler für Reserve Engineering...
Und für einige ist dies ja auch ein Sport der Schnellste zu sein um des zu umgehen.
Zudem der die Methode der Prüfung knacken will, wird da schon die großen Geschütze auffahren.
Zudem gibt es ja auch Decompiler für Reserve Engineering...
Und für einige ist dies ja auch ein Sport der Schnellste zu sein um des zu umgehen.
Zitat von @emeriks:
Habe so schon einige meiner eigenen Programme soweit "gehärtet" wie möglich. Es bleibt aber nur ein Alibi-Schutz.
Habe so schon einige meiner eigenen Programme soweit "gehärtet" wie möglich. Es bleibt aber nur ein Alibi-Schutz.
Machen das nicht alle Entwickler? Wer sich die Mühe macht meinen "Alibi-Schutz" zu umgehen, soll die Software auch benutzen. Zum Glück können das nur 0,01% meiner Anwender. Blöd wird es nur, wenn solche Anleitungen im Internet auftauchen...
Zudem gibt es ja auch Decompiler für Reserve Engineering...
Wieviele Leute hast Du getroffen, die mit einen Decompiler umgehen können und den erzeugten Pseudeo-Assembler Code auch lesen, geschweige verstehenund und ändern können?
Bei einer Änderung passt das Code Signing Zertifikat nicht mehr, spätestens dann sollte Ende sein...
Die Disukussion bringt mich gerade auf eine interessante Idee:
Warum nich proaktiv auf die "Hacker" zugehen:
"Wer es schafft, meine Schutzmechanismen der Software zu umgehen, bekommt die Kosten für die Software erstattet. Vorrausetzung: der Weg ist zu demonstrieren und es darf vorher noch keiner geschafft haben"
Eine Win-Win-Situation:
Die "bösen" Jungs testen die Mechanismen auf Herz und Nieren, bekommen u.U. die Software umsonst, man selbst kann sich später dann Gegenmaßnahmen überlegen und die Mechanismen werden immer besser.
Klappt aber nur, wenn man nicht direkt damit anfängt, dass man keine MEchanismen einbaut.. ein gewisser Teil sollte schon vorhanden sein.
Warum nich proaktiv auf die "Hacker" zugehen:
"Wer es schafft, meine Schutzmechanismen der Software zu umgehen, bekommt die Kosten für die Software erstattet. Vorrausetzung: der Weg ist zu demonstrieren und es darf vorher noch keiner geschafft haben"
Eine Win-Win-Situation:
Die "bösen" Jungs testen die Mechanismen auf Herz und Nieren, bekommen u.U. die Software umsonst, man selbst kann sich später dann Gegenmaßnahmen überlegen und die Mechanismen werden immer besser.
Klappt aber nur, wenn man nicht direkt damit anfängt, dass man keine MEchanismen einbaut.. ein gewisser Teil sollte schon vorhanden sein.
Zitat von @em-pie:
Die Disukussion bringt mich gerade auf eine interessante Idee:
Warum nich proaktiv auf die "Hacker" zugehen:
Die Disukussion bringt mich gerade auf eine interessante Idee:
Warum nich proaktiv auf die "Hacker" zugehen:
Mein Gegner ist die „Geiz ist geil“-Mentalität der Anwender und der Erfindungsreichtum einiger ITler um einige Euronen bei der Lizenzierung zu sparen