Marc Reichelt: E-Mail-Validierung: Neuer Ansatz

Beitrag lesen

Hallo an alle,

für mein aktuelles Projekt ipv6-fuer-alle.de benötige ich eine Funktion, die prüft, ob die Adresse für die PHP-mail()-Funktion genutzt werden kann.

Hierbei möchte ich ausdrücklich NICHT prüfen, ob die E-Mail-Adresse logisch korrekt ist, sondern größeren Schaden verhindern. Hierzu soll die Funktion folgenden Gesichtspunkten standhalten:

1. Sie soll so einfach wie möglich gestaltet sein.

2. Die Benutzung in der Funktion mail() soll möglich sein ohne Schaden anzurichten (Injenction).

3. Es soll nur eine E-Mail-Adresse angegeben werden können (nicht mehrere).

4. Die E-Mail-Adresse soll eindeutig identifizierbar sein, damit nicht mehrfach die gleiche Adresse als Ziel verwendet wird.

5. Nicht jede mögliche Form einer E-Mail-Adresse muss der Prüfung standhalten, wenn sie eine der ersten 4 Regeln verletzt.

Dazu habe ich mir nun folgende Gedanken gemacht:

  • Es muss mindestens ein "@" vorkommen.
  • Die Gesamtlänge darf 255 nicht überschreiten (willkürlich gewählt, um ein Limit zu setzen).
  • zu 2.) Die ersten 32 ASCII-Codes müssen ausgeschlossen werden.
  • zu 3.) Die Zeichen "," und ";" müssen ausgeschlossen werden.
  • zu 4.) Die Zeichen "<" und ">" müssen ausgeschlossen werden, sonst sind Mehrfachnennungen der Form "Eva Mustermann 123@example.com" und "Adam Mustermann 123@example.com" möglich.

Ich möchte mir diese Funktion bis morgen Abend geschrieben und auch getestet haben, werde diese aber natürlich dann auch hier veröffentlichen.

Meine Frage an euch ist nun: Fällt euch noch etwas dazu ein, das beachtet werden sollte?

Grüße

Marc Reichelt || http://www.marcreichelt.de/

--
DPRINTK("Last time you were disconnected, how about now?");
        linux-2.6.6/drivers/net/tokenring/ibmtr.c
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)