Robert Haupt: Formular sicher machen

Hi,
ich habe ein Formular, wo aussenstehende User einen Produkt Key registrieren lassen sollen. Ich lese ihn ein und vergleiche mit einer Datenbank (SELECT ProductKeyID FROM ProductKey WHERE ProductKey = '$frproductkey').

Nun kann ich keine weiteren eingelesenen Formulardaten (email usw.) verifizieren, so dass dieses Formular theoretisch beliebig oft maschinell aufrufbar ist und somit irgendwann eine Übereinstimmung gefunden wird, was ich natürlich nicht möchte. Wer wird schon gern gecrackt? :-(

Möglichkeiten aus meiner Sicht:
Eine Grafik ("Geben Sie das Wort aus der Grafik ein..." scheidet für mich aus.

Die IP Adresse einlesen mit $REMOTE_ADDR und die Anzahl der Zugriffe begrenzen wäre möglich aber ist das sicher??

Den ProductKey beliebig kompliziert machen so das Anzahl der Möglichkeiten fast unendlich ist?

Oder gibt es noch andere vernünftige Möglichkeiten?

Danke und Gruss
Robert

  1. Hallo,

    Wie bei Windows könnten die User bei dir anrufen und du schaltest es dann frei.

    Grüße
    Jeena Paradies

    --
    Ich bin mir ziemlich sicher dass es im Leben mehr gibt als nur wirklich wirklich gut auszusehen ...
    <img src="http://home.arcor.de/vivosomuertos/self/zoolander.jpg" border="0" alt="">
    Bambergs Fasching - nur ein großer (Werbe-)Flop?
    http://jeenaparadies.de/artikel/fasching/
    Jeenas Bannertauschportal; selbstgemacht ;-)
    http://jeenasbannerbude.de
  2. Hi

    Hi,
    Eine Grafik ("Geben Sie das Wort aus der Grafik ein..." scheidet für mich aus.

    Das ist sicher recht sicher.

    Die IP Adresse einlesen mit $REMOTE_ADDR und die Anzahl der Zugriffe begrenzen wäre möglich aber ist das sicher??

    eine Möglichkeit

    Den ProductKey beliebig kompliziert machen so das Anzahl der Möglichkeiten fast unendlich ist?

    mit md5, solltest du in jedem Fall machen

    Oder gibt es noch andere vernünftige Möglichkeiten?

    mit HTTP_USER_AGENT nur "menschliche" Browser zulassen, ist allerding ein gefrickel und nicht wirklich verifizierbar.

    Hast du nicht noch ein anderes Feld aus der Datenbank, das der User wissen muß (z.B. den Produktnamen)?

    Freischaltung an eine Email-Adresse senden. emailadresse nach 3 fehlgeschlagenen Versuchen sperren. Email-Body mit einem Zufallsgenerator erzeugen, so daß der Text schwer maschinell auszulesen ist.

    Wenn du alles machst und nicht die Kriegspläne der Regierung Bush zu verstecken hast, sollte das ausreichen...

    Thomas

    Danke und Gruss
    Robert

    1. Danke! Ich werde alles geben :-)