Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Algorithmus für Registrierungsschlüssel


Apo95 - Di 01.04.14 22:42
Titel: Algorithmus für Registrierungsschlüssel
Halo, ich suche eine Möglichkeit, wie ich aus verschiedenen Daten einen Schlüssel nach folgendem Muster erzeugen lassen kann :

Enthalten sein sollen :

X PC-Name
X Tagesdatum/BIOS-Datum
X IP-Adresse (v4)
X MMX-Unterstützung CPU (true/false)

So könnte ein Schlüssel z.B. aussehen :

Daten (Beispiel): PC-Name: NETZE 104, IP: 192.168.14.45, MMX-Unterstützung CPU: TRUE, Datum (rückwärts: 140321)

14NET-0319T-ZE104-21681-445TR
1. Gruppe : Letzter Teil des Jahres, die ersten drei Buchstaben des PC-Namens
2. Gruppe: Ersten zwei Zahlen des Datums (Monats), die ersten zwei Ziffern der IP (erstes Oktett), T oder F für true oder fslse (MMX-Support der CPU)
3. Gruppe : 5.-9. Zeichen des PC-Namens, falls der Name kürzer ist, dann mit random-Zeichen auffüllen
4. Gruppe : die letzten beiden Zeichen des Datums (bei 140321 hie die 21) die 3. 2. und 3. Ziffern des 2. Oktetts der IP und der 1. Ziffer des 3. Oktetts;
5. Gruppe : die letzten drei Zeichen der IP und die letzten zwei Buchstaben des Wortes TRUE (hier UE, bei false : se);

mir gehen die Ideen aus, wie das umzusetzen wäre.

Gibt es da eine Lösung?

LG;

Friedrich


jaenicke - Di 01.04.14 23:13

Es wäre sinnvoller einen Hash zu benutzen, dann kannst du die Daten viel besser zusammensetzen und am Ende hashen...

Die IP Adresse macht absolut keinen Sinn, denn wenn DHCP aktiviert ist, würde der Schlüssel dann ja davon abhängig sein, ob man zufällig wieder die gleiche IP bekommt jeden Tag. :shock:

Alle genannten Daten kann man jedenfalls einfach setzen und MMX Unterstützung hat heute ohnehin jede CPU, und das schon seit mehr als 10 Jahren. Was bringt dir das also?

Ansonsten was die Umsetzung angeht:
Da musst du doch, wenn du das so machen willst, einfach nur stur nach deiner Vorschrift die Zeichen aneinanderhängen. Wo liegt denn da genau das Problem? :gruebel:


Apo95 - Mi 02.04.14 23:08

Dank erstmal für die schnelle Antwort: Wäre MD5 ein geeigneter Algorithmus? Der kommt soch mit der INDY-Reihe mit, glaub ich. Ich hätte mir das mit der IP gut überlegen sollen; vielleicht anstelle dessen die MAC-Adresse nehmen.


BenBE - Do 03.04.14 00:37

Persönlich würde ich ja zu Double ROT-13 with Authenticated Parity And Data neigen und dies mit CRC-23 kombinieren, aber dann sollte der Registrierungsschlüssel mindestens auf 42 Zeichen aufgeweitet werden mittels PBKDF-2, weil sonst die mit RSA-OAEP erzeugte Signatur zu leicht zu knacken wäre.

Oder aber man verzichtet auf den Selbstbau und schreibt vernünftige Software, für die man so etwas nicht braucht.

2ct


Nersgatt - Do 03.04.14 07:05

Benny, mach doch mal einen konstruktiven Vorschlag, wie so eine vernünftige Software aussähe. :roll: