Also eigentlich geht das wirklich nicht. Man kann immer wieder den Schlüssel weitergeben (was vorraussetzt, das mindestens einer das Ding hat) oder man kann immer wieder mit einem Resource-Hacker rauskriegen, welcher Registryschlüssel abgefragt wird, oder welche Datei oder was sonst noch. Die einzige Möglichkeit, die wirklich sicher ist, ist die von MS, solange sie konsequent durchgeführt wird.
Dazu prüft man die Hardwarekonfiguration (BIOS (mit Version/Datum), HD, MB, Chipsatz-Rev, eben das, was immer drin steckt (keine Laufwerke!, es gibt leute, die haben kein CD- oder Disketten-LW...)). Daraus verrechnet man dann Zahlen. Also mit Algorithmen und sonstigem Mathe-Kram, um eine möglichst identifizierbare Nummer zu kriegen. Dann wird diese Nummer an den Autor des Progs geschickt. Dieser hat einen anderen Schlüssel, mit dem diese Zahl wiederum verrechnet wird. Die daraus folgende Zahl ist dann der Registrier-Schlüssel, der im Programm ebenfalls wieder verrechnet wird. Stimmen Registrierschlüssel und Hardware-Code überein, ist der Schlüssel gültig. Diese Abfrage müsste bei jedem Programmstart gemacht werden, also sollte man schnelle Algos verwenden. Am besten man speichert den Registrier-Schlüssel irgendwo ab (in der Registry, am besten. Da trauen sich die wenigsten Otto-Normal-User ran.) und erzeugt bei jedem Start des Progs erneut den Hardware-Code. Jedesmal wird dann dieser code mit dem Schlüssel aus der Registry verglichen. So verhindert man am besten eine Manipulation. MS scheiterte mal wieder an seiner bescheuerten Marktpolitik, indem sie nicht konsequent vorgegangen sind. Mit Firmen-Keys, die mit jeder Hardware laufen, kriegt jedermann sein kopiertes XP auf jeder Hardware zum Laufen. Verzichtet man auf solche dummen Fehler, hat man so einen relativ sicheren Kopierschutz.
Allerdings will ich auch davon abraten, denn wenn sich der User beispielsweise einen neuen Prozessor kauft, oder einen neue HD, oder ein neues sonstwas, wird der Registriercode ungültig, weil sich auch der Hardware-Code geändert hat. Somit müsste man erneut registrieren. Äußerst unbequem für den User. Außerdem kann man solche Verfahren immer zur statistischen Verfolgung von Marktanteilen der Hardwarehersteller missbrauchen (was MS unter Garantie auch macht...), also werden einigermaßen intelligente Leute dieses Programm nicht nutzen.
Aber jedes Verfahren (auch das oben Beschriebene) hat einen entscheidenden Nachteil: jedes ist knackbar. Einige leichter, andere sind harte Nüsse. Aber letztendlich kommt man mit einem Decompiler oder Disassembler (je nach Sprache) schnell hinter die Funktionsweise der Algorithmen, bastelt sich seinen eigenen Registriercode und nutzt das Programm ohne dem Autor auch nur mitzuteilen, daß er das Programm benutzt. So sind alle Versuche, einen Kopierschutz zu entwickeln, der rein auf Software basiert, zum Scheitern verurteilt. Auch wenn MS das nicht wahrhaben will (oder wollen die gar keinen Kopierschutz, sondern vielmehr eine Datenbeschaffungsanlage?).
Am sichersten ist daher immer noch der Hardware-Kopierschutz. Vertrieb der software geschieht dabei ausschließlich auf CDs, die mit Schutzmechanismen ausgestattet sind. Bei Spielen wird das schon so gut wie immer gemacht. Haken: Man muss zum CD-Standard kompatibel bleiben. Es gibt also fast immer Hintertürchen für Cracker. Oder es werden Lese-Features benutzt, die vom Schreiber (sprich Brenner) noch nicht unterstützt werden. Sowas wurde auch schon probiert. Dieser Kopierschutz (mir entfiel der Name...) überlebte satte 2 Monate, bis die ersten Brenner auf den Markt kamen, die dieses fehlende Feature unterstützten und somit auch diesen Kopierschutz knackten.
Kirschenklauer kann ich also im Prinzip nichts empfehlen, außer auf das Vertrauen der Kundschaft zu hoffen.
Tschüß
Thomas
_________________
Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk.
- Dilbert