![]() |
Seriennummersystem - gut und schön aber wie Infos speichern?
Hallo,
ich habe mir ein Seriennummernsystem gebaut, mit dem ich zwischen registrierten und unregistrierten Usern unterscheiden kann (klar) und mit dem ich zwischen Updateberechtigungen unterscheiden kann. Das Programm prüft die Seriennummer und schaut, ob man zB Updates laden darf. Mein Root-Server im Internet stellt die Updates bereit, und gibt diese raus, sofern er auch eine gültige Update-Lizenz errechnet hat. (Die SN wird also mit an den Server gesendet). Meine Frage ist nun, wie ich die Seriennummer im Programm (oder im Programmverzeichnis), Registry o.Ä speicher. Sollte die Seriennummer verschlüsselt sein, und wenn ja, wie kann mein Server-Skript die Verschlüsselung rückgängig machen und die SN zu prüfen? Sollte ich von der SN einen MD5-Hash ablegen? Wie macht man das? Ich möchte auch, dass einige Funktionen nur für registrierte User zugänglich sind. Eine Überprüfung mit if (registered) then ist ziemlich sinnlos. Wie könnte ich das bewerkstelligen. PS: Die beiden Fragen hängen ja auf Grund der Speicherung und Verschlüsselung zusammen. Deswegen mache ich nur einen Post auf. Vielen Dank! |
Re: Seriennummersystem - gut und schön aber wie Infos speich
Das mit dem verschlüsselt Speichern kann man schon machen, nur ob es auf der Client-Seite unbedingt nötig ist, weiß ich nicht und wage ich zu bezweifeln. Warum lässt du deine Software nicht schon von vorn herein wissen, welchen "Status" sie hat und welche Funktionen diese ausführen darf? Das hängt ja scheinbar vom Serial ab und die Logik kannst du deinem Programm ja mitgeben, oder? (wenn jemand sowas hacken will, dann schafft er es auch, wenn eine verschlüsselung im spiel ist :) )
Die Funktionalität mit dem Root-Server kannst du ja belassen. So müssen aber beide den selben Algorithmus haben, um feststellen zu können, was der Client darf bzw. was er für Updates bekommt. Zitat:
|
Re: Seriennummersystem - gut und schön aber wie Infos speich
Das hört sich doch soweit ganz gut an - dann speichere ich die Registrierungsdetails in einem Record. Man sollte dann halt einfach auf seine Daten aufpassen.
Server und Programm haben den gleichen Algorithmus. Ich möchte damit verhindern, dass Leute an Updates rankommen, die da nicht ran sollen. Immerhin kann niemand die Prüfung am Server beeinflussen - im Windows-Programm schon. Visuell ausblenden ist eine gute Idee. Ich wollte die Anzahl der Einträge begrenzen. Mit Status meinst du, ich sollte das Programm bei Start prüfen lassen, ob es registriert ist, oder nicht? Angenommen, ich würde es tun, würde ich bei Start eine Boolean-Variable haben, in der dann true oder false steht. Das kann man aber sehr leicht manipulieren. Gibt es da nichts Besseres? Danke |
Re: Seriennummersystem - gut und schön aber wie Infos speich
Welchen Sinn sollte es haben, die Seriennummer zu verschlüsseln? Der Client kennt sie doch sowieso. Wenn er sie also (unberechtigt) weitergeben will, wird ihn daran nichts hindern, auch eine Verschlüsselung nicht.
|
Re: Seriennummersystem - gut und schön aber wie Infos speich
Das meinte ich auch nicht. Ich dachte eher, dass nicht der X oder Y an den PC geht und die SN sich abschreibt/ausliest.
|
Re: Seriennummersystem - gut und schön aber wie Infos speich
Du könntest z.B. eine Schlüsseldatei mit anlegen, deren MD5 gebildet wird und dann....
und dann wird noch etwas Maschinen/Benutzerspezifisches dazu gepackt. Und dann wirf noch ein paar programmtechnische Nebelkerzen.... aber letztendlich läuft es immer auf "if true then" hinaus. Gruß K-H |
Re: Seriennummersystem - gut und schön aber wie Infos speich
ok. Das wollte ich hören. Ich rätsel die ganzen Tage schon - aber mir fiel auch nichts anderes ein.
So werde ich es dann auch machen. Dann baue ich mir am besten eine Funktion, die das "if true then" UND die Nebelkerzen beinhaltet. Und die rufe ich dann immer auf, ja? |
Re: Seriennummersystem - gut und schön aber wie Infos speich
Zitat:
Gruß K-H Edith: Wie wäre es mit der Verwndung von Alt.DataStreams? |
Re: Seriennummersystem - gut und schön aber wie Infos speich
hm... ich habe weder von "Assembler"-Nebelkerzen, noch von Alt.DataStreams Ahnung ;)
|
Re: Seriennummersystem - gut und schön aber wie Infos speich
Eine Frage noch... Kann man die Variablennamen in einem Disassembler, Debugger etc. betrachten? Also, ich möchte den Key in einer globalen Variable speichern, um ihn nicht immer wieder aus der Datei lesen zu müssen. Kann ich die Variable "key" nennen, oder ist das verdächtig?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:17 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 by Thomas Breitkreuz