Ich hatte ja letztes Jahr schon was zum Thema geschrieben, im Zuge des letzten Updates habe ich es dann auch eingebaut, und seitdem keine (0) Spam-Kommentare mehr: das "erweiterte" Captcha.

Was habe ich gemacht? Ganz einfach, an Stelle von Zahlen Wörter in deutscher Sprache verwendet. Also nicht mehr "3 + 14 = ?" abgefragt, sondern "Addiere Drei und Vierzehn" ausgegeben. Das sorgt dafür, dass all die chinesischen Studenten Spammer augenscheinlich nichts damit anfangen können - und sich dann zumindest auch bei der Irrelevanz meines Blogs auch keine weitere Mühe mehr geben.

Die Umsetzung ist relativ einfach, da es wohl keinen "Zahl-zu-deutschem-Zahlwort"-Konverter gibt nehme ich einfach ein Dictionary, begrenze die möglichen Werte und lege für diese dann die deutschen Bezeichnungen ab:

Dictionary<int, string> numbers = new Dictionary<int, string>();
numbers.Add(0, "Null");
numbers.Add(1, "Eins");
numbers.Add(2, "Zwei");

Anbei das Ganze als ausführbares Visual-Studio-Web-Projekt zum Probieren oder Selbsteinbau (macht sich bei jeder Art von Formularen gut, mein Kontaktformular bekommt es auch gleich verpasst).

Downloads

Kommentare

#1 GENiALi schrieb am Montag, 26. Mai 2008 08:27:00:
Ich habe auch keine Probleme mehr seit das Captcha wieder tut.

Mit Trackback- und Pinbackspam habe ich zuer Zeit auch keine Probleme mehr. Seit ich sie konsequent lösche kommt nichts mehr rein.

Hoffe mal dass das so bleibt.
#2 Thomas schrieb am Montag, 26. Mai 2008 09:52:00:
Trackbacks nehme ich überhaupt nicht mehr an, das wurde mir zu anstrengend - ich habe keine Lust ständig Zeug manuell zu filtern/zu löschen.
#3 GENiALi schrieb am Montag, 26. Mai 2008 19:20:00:
Das habe ich mir sehr vereinfacht. Ich setzte noch immer dasBlog ein. Für das Ding habe ich mir einen Webservice gemacht der mir alle Track- und Pingbacks liefert. Mit einer einfachen Withelist filtere ich allen Schrott raus und lösche alle aufs mal. So habe ich schon 58'164 Referrer, 2'914 Trackbacks und etwa 3 Mio Pingbacks gelöscht.
Seit ich das mache habe ich fast ruhe. :-)

Dein Kommentar