AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

Ein Thema von hedie · begonnen am 24. Jan 2016 · letzter Beitrag vom 26. Jan 2016
Antwort Antwort
Seite 1 von 2  1 2   
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#1

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 15:10
Ich mach es genauso. Lasse pro Lizenz drei Hwids zu. Stelle mir aber die gleiche Frage wie Du. Aus if ein if not zu machen schaffen ja viele...
Hallo Darlo

Freut mich, dass auch andere die gleiche Idee hatten.
Vielleicht findet sich ja jemand hier im Forum, der uns ein wenig Licht ins Dunkle bringt.

Ich vermute mal, das einzige was man machen kann, ist die Überprüfung an verschiedenen Orten zu verankern.
Und möglichst so, dass gewisse Checks zu willkürlichen Zeiten oder Ereignissen stattfinden.

Dadurch ist der Aufwand vermutlich grösser bis man alle Checks gefunden hat.
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 15:49
Um meine Programme vor unerwünschten Änderungen zu sichern, schreibe ich per AfterCompile-Experten die MD5-Checksumme in die Exe-Datei.
Beim Starten der Exe-Datei prüft diese zuerst, ob die MD5-Checksumme in der Exe-Datei mit der von ihr selbst errechneten übereinstimmt. Ist dem nicht so, gibt es eine Meldung und sie beendet sich.

Wer also das Programm ändert, um Deine Lizenzüberprüfung zu umgehen, dürfte dann an dieser Prüfung scheitern oder müsste auch noch eine neue MD5-Checksumme ermitteln, diese an die richtige Stelle schreiben und müsste außerdem wissen, von welchem Teil der Exe-Datei eigentlich die MD5-Checksumme gebildet worden ist.

Wer allerdings das Programm zur Laufzeit, wenn es bereits im Speicher ist, dort irgendwie patch, wird diese "Sicherungsmaßnahme" wohl auch umgehen können.
  Mit Zitat antworten Zitat
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#3

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 16:05
Danke für den Input mit der Checksumme.
Dies ist jedoch im Endeffekt auch nur eine simple "IF" Abfrage.

Wobei ich dir recht gebe, dass dies eine zusätzliche, vermutlich mühselige, Hürde ist.
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 16:53
Ja, es ist "nur" eine IF-Abfrage.

Aber: Wer daran vorbei will, muss auch erstmal wissen, dass es sie gibt, damit er sie umgehen kann.
Dazu muss er wissen, welche Teilmenge er für irgendeinen Hashwert braucht, von dem er auch noch wissen muss, wo er steht und welcher Algorithmus dahinter steckt.

Damit sind wir bei deutlich mehr, als "nur" einem IF.

Apropo: Viren, die die Exe manipulieren, werden so auch entdeckt, da das Programm eine Selbstprüfung auf Unverändertheit hat.

Und den Virus, der genau Deine Sicherungsmechanismen aushebelt, die sonst kein Mensch auf dieser Erde hat/kennt, wird es so schnell nicht geben.

Davon abgesehen: Was für "hochinteressante" Software vertreibst Du (zu welchen Kosten), dass sich der Aufwand der Umgehung der Lizensierung dafür (mit allen rechtlichen Folgen) "lohnt"?

Und vor allem: Wie hoch ist der bisher (und zukünftig vermutete/erwartete) wirtschaftliche Schaden, so dass sich die Investition in eine hochkomplexe und sichere Lizenzverwaltung für Dich lohnt?

Ist Deine Software hardwaregebunden?
Steht das im Lizenzvertrag?
Oder darf ich sie auf meinem Arbeitplatzrechner und auf meinem Notebook nutzen?
Was ist, wenn ich mal den Rechner austausche?

Abgesehen davon: Meine Firewall läßt kein Programm ins Netz, wenn ich dies nicht ausdrücklich erlaube.

Damit würde Deine Lizensierungart, mit "Wir gucken mal beim Server nach" bei mir scheitern.

Software mit Deinem "Lizensierungsmodell" käme bei mir nicht auf den Rechner.
Aber das ist ein anderes Thema.
  Mit Zitat antworten Zitat
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#5

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 17:35
Ja, es ist "nur" eine IF-Abfrage.

Davon abgesehen: Was für "hochinteressante" Software vertreibst Du (zu welchen Kosten), dass sich der Aufwand der Umgehung der Lizensierung dafür (mit allen rechtlichen Folgen) "lohnt"?
Heutzutage ist dies eine art Sport. Es geht nicht mehr darum dass mann möglichst teure Software knackt. Sondern das man einfach irgendwas knackt.
Einer hier im Forum hat berichtet, dass er seine Software, welche er für 7.50EUR angeboten hat, auf einer Warezsite gefunden hat inkl. Crack.



Und vor allem: Wie hoch ist der bisher (und zukünftig vermutete/erwartete) wirtschaftliche Schaden, so dass sich die Investition in eine hochkomplexe und sichere Lizenzverwaltung für Dich lohnt?
Wie bereits geschrieben, geht es mir nicht wirklich darum den besten Schutz zu erreichen, sondern auch etwas dabei zu Lernen.
Den Aufbau einer solchen Lizenzverwaltung finde ich eine spannende Sache!


Ist Deine Software hardwaregebunden?
Nach der Aktivierung ja. Da HardwareID gelesen wird.

Steht das im Lizenzvertrag?
Bisher gibt es noch keinen.

Oder darf ich sie auf meinem Arbeitplatzrechner und auf meinem Notebook nutzen?
Das ist bisher noch nicht geklärt. Wäre aber denkbar.

Was ist, wenn ich mal den Rechner austausche?
Dann teilt dir die Software während der Aktivierung mit, dass diese bereits aktiviert wurde.
Du kannst die Software dann dennoch aktivieren. Die alte HWID wird einfach deaktiviert.

Abgesehen davon: Meine Firewall läßt kein Programm ins Netz, wenn ich dies nicht ausdrücklich erlaube.
Damit würde Deine Lizensierungart, mit "Wir gucken mal beim Server nach" bei mir scheitern.
Normalerweise lässt der Anwender die Software ja ins Netz wenn es für sowas notwenig ist.
Die Software kommuniziert ja nur bei der aktivierung mit dem NEtz. dannach nicht mehr.
Zudem hast du die Möglichkeit, das Lizenzfile auf einer Webseite zu generieren, ohne mit der Software ins Netz zu müssen.


Software mit Deinem "Lizensierungsmodell" käme bei mir nicht auf den Rechner.
Aber das ist ein anderes Thema.
Bitte mache doch einen alternativen Vorschlag.
Ich nehme an du benutzt Linux. Denn bei Windows läuft die Aktivierung ja genau gleich
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.643 Beiträge
 
Delphi 12 Athens
 
#6

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 24. Jan 2016, 21:10
Was ist, wenn ich mal den Rechner austausche?
Dann teilt dir die Software während der Aktivierung mit, dass diese bereits aktiviert wurde.
Du kannst die Software dann dennoch aktivieren. Die alte HWID wird einfach deaktiviert.
Kann dann nicht jeder böse Raubkopierer einen geklauten oder geleakten Lizenzschlüssel aktivieren und damit sogar den rechtmäßigen Nutzer aussperren? Das könnte dann ja direkt in ein nettes Ping-Pong Spiel ausarten.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.961 Beiträge
 
Delphi 12 Athens
 
#7

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 25. Jan 2016, 03:13
An der Stelle finde ich eine Lösung sinnvoll wie sie bei Norton Internet Security existiert. Ich muss mich dort mit meinem Account anmelden um eine Lizenz auf einen anderen PC zu übertragen und kann den PCs auch Namen geben.

Mit einer schon registrierten Seriennummer alleine kann also niemand etwas anstellen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#8

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 25. Jan 2016, 16:18
Bitte mache doch einen alternativen Vorschlag.
Naja, ich gehe ganz naiv von ehrlicher Kundschaft aus. Wer mich bescheißen will, wird es tuen oder jemanden finden, der es für ihn tut.

Wenn Du für Dich entschieden hast: "Ich mache das, weil mich interessiert, wie ich da ein sicheres Linzensierungskonzept hinbekomme." Dann ist meiner Meinung nach jeder Aufwand und jede (auch noch so schräge Idee) gerechtfertigt.
Nur: Wenn Du das hinbekommst, dann verkaufe nicht Deine Software, sondern das Lizensierungskonzept, es wird sicherlich einige geben, die daran interessiert sind und (hoffentlich) auch ordentlich bezahlen
Ich nehme an du benutzt Linux. Denn bei Windows läuft die Aktivierung ja genau gleich
Nein, ich benutzte kein Linux, sondern ein, inzwischen veraltetes, Windows.
Alle Dienste, die "nach Hause" telefonieren sind grundsätzlich deaktiviert. War ein Update erforderlich, so habe ich bestimmt, wann es durchgeführt wurde.

OpenOffice, FireFox und Acrobat sind so konfiguriert, dass sie sich nicht automatisch aktualisieren, sondern nur auf meine Anforderung. Delphi 7 telefoniert auch nicht und der Rest gehört entweder zum Betriebssystem oder ist selbst programmiert bzw. "gängelfreie", gekaufte Software.

Zitat von hedie:
Zitat von nahpets:
Was ist, wenn ich mal den Rechner austausche?
Dann teilt dir die Software während der Aktivierung mit, dass diese bereits aktiviert wurde.
Du kannst die Software dann dennoch aktivieren. Die alte HWID wird einfach deaktiviert.
Konsequenz: Nutzung nur an einem Rechner!
Also nicht am Arbeitsplatzrechner und unterwegs am Laptop, bzw. zwei Lizenzen erforderlich.

@Dejan Vu
Wenn ich "Software as a Service" nutze, dann "will" ich ja eine Software im Netz nutzen, dann muss ich auch damit leben, dass die Server dieser Software genutzt werden.
Aber eine lokal auf meinem Rechner installierte Software, die für ihre eigene Funktionalität keinen Server im Netz benötigt, muss auch keine Verbindung zu einem Server in einem Netz aufbauen.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.961 Beiträge
 
Delphi 12 Athens
 
#9

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 26. Jan 2016, 04:24
Nur: Wenn Du das hinbekommst, dann verkaufe nicht Deine Software, sondern das Lizensierungskonzept, es wird sicherlich einige geben, die daran interessiert sind und (hoffentlich) auch ordentlich bezahlen
Es ist ja nicht so, dass es da keine existierenden Lösungen gibt. So einfach wird das also nicht.

Neben den "normalen" softwareseitigen Lösungen wie es auch hier eine wäre, gibt es auch die Möglichkeit einen Dongle zu benutzen. Das machen wir auch.
So ein Dongle kann zum Beispiel eine Berechnung oder einen anderen Teil des Codes ausführen, ohne den die Software nicht lauffähig wäre. Auch das kann man zwar patchen indem man diesen Code in der Exe einbaut, aber der Aufwand ist sehr hoch.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#10

AW: Überprüfung einer "Lizenz" möglichst sinnvoll gestalten

  Alt 26. Jan 2016, 06:48
@Dejan Vu
Wenn ich "Software as a Service" nutze, dann "will" ich ja eine Software im Netz nutzen, dann muss ich auch damit leben, dass die Server dieser Software genutzt werden.
Aber eine lokal auf meinem Rechner installierte Software, die für ihre eigene Funktionalität keinen Server im Netz benötigt, muss auch keine Verbindung zu einem Server in einem Netz aufbauen.
Richtig, sehe ich genauso. Nur gibt es von dem Typus 'Software', die man einmalig erwirbt, immer weniger. Darauf wollte ich hinaus, d.h. irgendwann muss mein seine Leitung öffnen, weil alles und jeder nach Hause telefoniert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz