Hallo,
ich arbeite gerade an einem Programm, dass ich später evtl. auch für ein bisschen Geld verkaufen würde.
Damit das dann aber nicht jeder einfachso benutzen kann, bin ich am Überlegen, wie bzw. welchen Schutz ich da einbauen könnte.
Bis jetzt habe ich es so:
Kunde bekommt den Downloadlink und startet das Programm. Als erstes startet sich eine "frmCheck", welche Überprüft, ob der Nutzer Zugang zum Programm hat. Das funktioniert so: auf einem FTP-Server liegt eine Datei namens "keys.txt", in welcher pro Zeile die Keys der Kunden eingetragen werden. Beim Nutzer wird nun ein Key generiert und es wird überprüft, ob dieser Key in der Liste steht. Generiert wird der Key folgendermaßen: ProzessorID, Soundkarte, Grafikkarte etc. werden ausgelesen und in ein MD5-Hash umgewandelt. Wenn dieser Key nun nicht in der Liste steht, bleibt die "frmCheck" offen und zeigt dem Nutzer seinen generierten Key. Um das Programm nun zu aktivieren, muss er diesen Key an mich schicken, und ich trage diesen dann in die Datei ein.
Nunja, klappen tut es ja so einigermaßen, jedoch habe ich von einem Kunden den Hinweis bekommen, dass dies sehr unsicher ist und benutzt mein Programm ohne mir überhaupt den angezeigten Key geschickt zu haben.
Nun suche ich eben eine sicherere Methode, aber ich weiß nicht wie, da doch alle am Ende gleich aussehen (Pseudo-Code):
Und sowas kann man ja wohl leicht überspringen..
Am besten wäre es, wenn man sich zusätzlich noch ein Konto erstellen muss (eine Form, wo man seine Daten ausfüllt, sich per Buttonklick registriert und ein WebRequest an eine register.php schickt) und beim Starten muss man sich mit ID & Passwort einloggen (und mit der Überprüfung, ob die HWID zu diesem Account passt), dazu bräuchte ich ja eine Datenbank, aber am Ende, bei der Überprüfung, wäre es doch wieder nur so eine simple If-Abfrage wie oben, oder etwa nicht?
Freue mich auf eure Antworten!
ich arbeite gerade an einem Programm, dass ich später evtl. auch für ein bisschen Geld verkaufen würde.
Damit das dann aber nicht jeder einfachso benutzen kann, bin ich am Überlegen, wie bzw. welchen Schutz ich da einbauen könnte.
Bis jetzt habe ich es so:
Kunde bekommt den Downloadlink und startet das Programm. Als erstes startet sich eine "frmCheck", welche Überprüft, ob der Nutzer Zugang zum Programm hat. Das funktioniert so: auf einem FTP-Server liegt eine Datei namens "keys.txt", in welcher pro Zeile die Keys der Kunden eingetragen werden. Beim Nutzer wird nun ein Key generiert und es wird überprüft, ob dieser Key in der Liste steht. Generiert wird der Key folgendermaßen: ProzessorID, Soundkarte, Grafikkarte etc. werden ausgelesen und in ein MD5-Hash umgewandelt. Wenn dieser Key nun nicht in der Liste steht, bleibt die "frmCheck" offen und zeigt dem Nutzer seinen generierten Key. Um das Programm nun zu aktivieren, muss er diesen Key an mich schicken, und ich trage diesen dann in die Datei ein.
Nunja, klappen tut es ja so einigermaßen, jedoch habe ich von einem Kunden den Hinweis bekommen, dass dies sehr unsicher ist und benutzt mein Programm ohne mir überhaupt den angezeigten Key geschickt zu haben.
Nun suche ich eben eine sicherere Methode, aber ich weiß nicht wie, da doch alle am Ende gleich aussehen (Pseudo-Code):
Und sowas kann man ja wohl leicht überspringen..
Am besten wäre es, wenn man sich zusätzlich noch ein Konto erstellen muss (eine Form, wo man seine Daten ausfüllt, sich per Buttonklick registriert und ein WebRequest an eine register.php schickt) und beim Starten muss man sich mit ID & Passwort einloggen (und mit der Überprüfung, ob die HWID zu diesem Account passt), dazu bräuchte ich ja eine Datenbank, aber am Ende, bei der Überprüfung, wäre es doch wieder nur so eine simple If-Abfrage wie oben, oder etwa nicht?
Freue mich auf eure Antworten!