AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Seriennummersystem - gut und schön aber wie Infos speichern?
Thema durchsuchen
Ansicht
Themen-Optionen

Seriennummersystem - gut und schön aber wie Infos speichern?

Ein Thema von TheMiller · begonnen am 31. Mär 2010 · letzter Beitrag vom 1. Apr 2010
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

Seriennummersystem - gut und schön aber wie Infos speichern?

  Alt 31. Mär 2010, 17:20
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!
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:32
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 von DJ-SPM:
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.
Warum ist das sinnlos? Du könntest diverse Methoden auch nur optisch ausblenden, aber genau verstehe ich hierbei nicht, auf was du hinaus willst? Plugins vielleicht?
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:40
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
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#4

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:47
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.
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:49
Das meinte ich auch nicht. Ich dachte eher, dass nicht der X oder Y an den PC geht und die SN sich abschreibt/ausliest.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:53
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
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#7

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 17:56
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?
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 18:02
Zitat von DJ-SPM:
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?
Ich denke ja, aber bitte keine Pascal-Nebelkerzen, sondern Assembler!

Gruß
K-H

Edith:
Wie wäre es mit der Verwndung von Alt.DataStreams?
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#9

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 18:04
hm... ich habe weder von "Assembler"-Nebelkerzen, noch von Alt.DataStreams Ahnung
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#10

Re: Seriennummersystem - gut und schön aber wie Infos speich

  Alt 31. Mär 2010, 19:34
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?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 12:10 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