Einzelnen Beitrag anzeigen

Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#30

Re: Kopierschutz einer Anwendung

  Alt 23. Nov 2006, 16:51
Also folgendes Ich hab über alles noch mal nachgedacht und bin zu folgendem Ergebniss gekommen:


Schritt 1: Der Kunde bestellt bei uns die Software

Wir haben damit seine Addresse. Wir schicken ihm eine CD mit der Software und einen USB Dongle. Alle Dongles die wir allgemein vergeben, enthalten eine (!) einmalige, nicht veränderbare Nummer (von Werk aus), diese Nummer ist eine Art IdentifyCode, welcher meiner / userer (!) Firma zugeordnet ist. Des weiteren ist auf dem Dongle die Kundennummer des Kunden gespeichert!

Damit ist ausgeschlosse, das andere sich einfach Dongles bestellen und diese versuchen mit meiner Software zu laufen zu bekommen >>> Denn diese haben einen anderen Identify Code.


Schritt 2: Der Kunde installiert und benutzt die Software

Das nun folgende Schema wird bei jedem Start durchgeführt:
  • Die Software startet und überprüft ob ein Hardwaredongle mit dem IdentityCode unserer Firma vorhanden ist. Wenn dies nicht os ist, wird die Software beendet.
  • Die Software erstellt einen einmaligen ComputerKey und schaut, ob bereits DIESER einmaliger ComputerKey auf dem USB Dongle geschrieben wurde. Wenn dies der Fall ist, ist die Überprüfung abgeschlossen, die Software wird gestartet.
  • Wenn der HardwareKey PC´s <> dem des Dongles ist bzw. keiner auf dem Dongle vorhanden ist, wird eine Aktivierung gestartet. Auf dem Dongle wird sofort ein Datum geschrieben, bis wann die Software ohne gültige Aktivierung startbar ist (10 Tage).
  • Der Aktivierungsassistent schickt die Kundennummer (steht im Dongle) + Hardwarekey + Install Key an unseren Webserver. Dieser generiert eine Anweisung, in welcher steht, dass der aktuelle Hardwarekey auf dem Dongle gespeichert werden soll.
  • Der Hardwarekey auf dem Dongle ist nun = HardwareKey des PC
  • Die Software wird neu gestartet

------------------

Sezenario 1: Der Kunde versucht die Software ohne Dongle zu starten

Dies merkt die Software und beendet sich.


Sezenario 2: Der Kunde kauft sich für einge Euro ein Hardware Dongle und versucht die Software zu starten

Da der IdentKey seines gekauften auf dem Dongle unterschiedlich ist als die Dongles die wir rausgeben merkt dies die Software und beendet sich.


Sezenario 3: Der Kunde versucht eine Softwarelizenz auf 2 PC´s zu nutzen

Da nur ein Hardwaredongle vorhanden ist, ist der parallele Betrieb nicht möglich. Nach dem Start wird permanent überprüft, ob der Dongle noch im System ist. Der "unparallele" Betrieb (Erst das erste System beenden, dann das 2te starten) ist auch nicht möglich... denn der HardwareKey des PC´s auf dem zu letzt Aktiviert wurde ist auf dem Dongle gespeichert.


Sezenario 4: Der Kunde versucht den Dongle zu ändern

Ist dank starker Verschlüsselung und Authensierung nicht möglich.


------------------

Schwachstellen
  • Unsere Exe wird gepatched. Mögliche Lösung: Die relavanten Programmcodes mit Hilfe des Dongles verschlüsseln.

------------------

Meine Fragen:
  • Kennt ihr noch andere Schwachstellen?
  • Wie bekommt man einen sicheren Hardware(und Software?)Key hin?


Gruß
Martin
  Mit Zitat antworten Zitat