Facebook
Twitter
Google+
Kommentare
22

E-Mail Adresse verschlüsseln

Heute gibt es mal wieder einen HTML/CSS Artikel. Jetzt wo ich so nachdenke – gab es schon mal einen CSS Artikel? Wahrscheinlich nicht. Egal, die Einleitung hat auch so gereicht, die ersten Zeilen zu füllen. Ich hatte ja vor einiger Zeit mal ein paar nette Effekte gezeigt, die man im Internet so findet. Darunter war auch einer der Symfony Jungs, die mit einem einfachen Trick ihre E-Mails verschlüsselt haben. Diesen möchte ich heute vorstellen.

Fangen wir also an. Das Ziel ist es eine E-Mail Adresse zwar lesbar auf dem Monitor anzuzeigen, es den Spam-Bots aber nicht zu einfach zu machen. Dazu nehmen wir die E-Mail Adresse rückwärts und schreiben einfach von Rechts nach Links. CSS unterstützt das ohne Probleme. Dazu brauchen wir nur zwei Attribute: unicode-bidi und direction.

<style type="text/css">
 span.crypted_email { unicode-bidi:bidi-override; direction: rtl;}
</style>
<span class="crypted_email">ed.80nalp@rengnal</span>

Der Code-Schnipsel gibt euch dann langner@plan08.de (mist jetzt hab ich meine Adresse doch hingeschrieben!) aus.  Genau das was wir wollten. Im Code steht die Adresse aber niemals Plaintext. Natürlich hat diese Technik auch ein großes ABER. Verwende ich den Schnipsel, so kommt auch der Browser nicht mit zurecht. Copy und Paste des Strings resultiert in einem umgedrehten Text in der Zwischenablage und mindert somit die Usability der Webseite. Ist es das Wert? Wahrscheinlich nicht, denn es gibt andere Möglichkeiten seine Adresse zu schützen.

Ich werde hier gerne noch mal ein paar andere vorstellen. Auch welche, die die User-Experience nicht beinträchtigen. Ich finde den Trick trotzdem ziemlich nett und ich habe mal wieder ein paar neue Features von CSS kennengelernt. Vielleicht will man ja andere Dinge so verschlüsseln, dass sie von Bots nicht gelesen werden können. Gibt bestimmt viele schöne Anwendungsgebiete. Denkt aber immer dran google ist auch ein bot und wird die Texte nicht indizieren.

Über den Autor

Nils Langner

Nils Langner ist der Gründer von "the web hates me" und auch der Hauptautor. Im wahren Leben leitet er das Qualitätsmanagementteam im Gruner+Jahr-Digitalbereich und ist somit für Seiten wie stern.de, eltern.de und gala.de aus Qualitätssicht verantwortlich. Nils schreibt seit den Anfängen von phphatesme, welches er ebenfalls gegründet hat, nicht nur für diverse Blogs, sondern auch für Fachmagazine, wie das PHP Magazin, die t3n, die c't oder die iX. Nebenbei ist er noch ein gern gesehener Sprecher auf Konferenzen. Herr Langner schreibt die Texte über sich gerne in der dritten Form.
Kommentare

22 Comments

  1. Ich hätte großes Interesse an Schutzmöglichkeiten der eMailadresse ohne die Usability wie in obigem „Trick“ zu verwässern.

    Ich muss Kunden immer wieder erklären warum es sich heutzutage lohnt auf Usability mehr zu achten als auf Spamschutz der eMailadresse. Selbst einfache Spamfilter halten heute den meisten Müll draußen und das was doch durch kommt kann man eben noch schnell löschen.

    Es ist halt unsinnig auf der eigenen Homepage die Adresse wie wild zu verschlüsseln und daḿit „unlesbar“ zu machen, andererseits bei jedem Gewinnspiel, etc. mitzumachen und so seine Adresse wild im Netz zu verteilen.

    Reply
  2. Ich verschlüssel meine E-Mail Adressen nicht, da ich halt auch mehr auf Usability achte und bis jetzt habe ich auch noch kein großes Spamproblem. Techniken, um E-Mail Adressen zu verschlüsseln, welche die Usability dabei nicht beinträchtigen, wären schon interessant, auch wenn diese wahrscheinlich nur einen geringen Nutzen bringen.

    Reply
  3. Moinsen Nilsen,

    ich würde den Nutzwert dieser vorgestellten „Verschlüsselung“ in etwa auf dem selben Level ansiedeln, wie den Nutzwert eines E-Mail oder Website Disclaimers. Er bringt nichts! Ausrufezeichen! Es ist doch für einen Spambot nahezu kein Aufwand, alle gefundenen E-Mail Adressen umzudrehen, wenn sie offensichtlich nicht dem allgemein verwendeten Format entsprechen. Und das tut ed.80nalp@rengnal nun mal nicht. Eher noch ist das bei ed.esel@tregge.lf.ar der Fall.

    Gruss,

    Ralf

    Reply
  4. Rafl? 😉

    Besonders im Impressum etc. verwende ich häufig kleine Bildchen mit meiner Email-Adresse. Wer mir da eine Email senden möchte, kann sie auch fix abtippen, meistens sind die sehr einfach, a la info@… Wem die 3 Sekunden Mehraufwand zuviel sind, der möge mir bitte auch keine Email schreiben.

    Reply
  5. Das größte Problem beim „rtl“ Ansatz ist, dass man die Mail-Adresse damit nicht anklickbar machen kann. Ich bevorzuge von daher die Verschlüsselung der Mail-Adresse mit Javascript mit „fallback“ auf ein Bildchen für alle JavaScript deaktiviert-haber. Damit bekommt fast jeder den vollen Funktionsumfang – und wer sicherheitsfanatisch ist, der muss es halt doch abschreiben 🙂

    BTW: Vielleicht interessant für den einen oder anderen: Bei TillLate gibt’s einen Artikel, der verschiedene obfuscation Methoden vergleicht.

    So viel zum Thema „Es ist doch für einen Spambot nahezu kein Aufwand, alle gefundenen E-Mail Adressen umzudrehen, wenn sie offensichtlich nicht dem allgemein verwendeten Format entsprechen.“ (@Ralf): Theoretisch ist das kein Aufwand – nur macht es (zumindest bis vor 1 1/2 Jahren) wohl niemand 😉

    Reply
  6. @Dominik

    glaubst du wirklich, dass die E-Mail Adressen Abgreif Mafia (EMAAM) sich in 1,5 Jahren nicht weiter entwickelt hat? Glaubst du wirklich, dass die EMAAM die selben schlauen Blogbeiträge mit diesen „Verschlüssungsoptionen“ nicht liest? Die EMAAM lacht über solche Versuche und klemmt einfach noch ein paar Server dazu, um weitere 10 Millionen Spam Mails pro Stunde raus senden zu können.

    😉

    Gruss,

    Ralf

    P.S. wie gesagt, ist das genauso nutz- und sinnlos wie diese E-Mail und Website Disclaimer
    Beispiel E-Mail Disclaimer http://www.causse.de/recht/angstklauseln.html

    Reply
  7. @Ralf:

    Ich glaube einfach daran, dass die „EMAAM“ gar keinen Aufwand betreiben muss um ausrechend Mail-Adressen zusammenzubekommen. Das Ziel von denen ist ja gar nicht ALLE Adressen zu sammeln, sondern nur eine möglichst große Menge. Und dafür genügt es vollkommen, sich um Verschlüsselung gar keine Gedanken zu machen. Es gibt genug „offen herumliegende“ Adressen.

    Gruß, Dominik

    Reply
  8. @Dominik

    schon mal daran gedacht, dass gerade die „verschlüsselten“ für die Spammer viel wertvoller sind, als die „nicht verschlüsselten“, die sowieso jeder hat? 😉

    Gruss,

    Ralf

    Reply
  9. An E-Mail-Adressen, die ich nicht direkt anklicken oder zumindest kopieren kann, schreib ich garnicht erst. Wer der Meinung ist, seinen eigenen Spamordner leer zu halten sei wichtiger, als mit potentiellen Kunden in Kontakt zu treten, braucht die Kunden wohl nicht. Das ist mir dann auch echt zu doof da irgendwas händisch abzutippen.
    Im Impressum könnte das sogar für Ärger sorgen, wenn ein abmahnwütiger Anwalt der Meinung ist, das entspräche nicht den „einfach zugänglichen Kontaktmöglichkeiten“. So im Detail kenn ich mich da aber auch nicht aus.

    Ich hab seit Jahr und Tag meine Adresse offen auf meiner Seite und kann nicht behaupten, dass mein Spamfilter überfordert sei. Mir ist es dann doch lieber, dass man mich leicht erreichen kann, anstatt meine Zeit mit „Verschlüsselung“ [1] zu verschwenden, die dann auch noch der Usability im Weg steht. Wenn ich es doch tun würde, wozu sollte ich dann noch Spamfilter verwenden? Ich bezweifle, dass irgendwer hier ohne Spamfilter auskommt.

    Zum Thema Mafia: ltr-Schreibweisen sind schon ne ganze Weile bekannt. Das es vor 1,5 Jahren nicht bekannt gewesen sein soll find ich eine interessante These 😉

    Reply
  10. @KingCrunch:

    Da hast du wohl die Kommentare nicht komplett gelesen: Die Methode war vor 1,5 Jahren sehr wohl bekannt – und laut TillLate auch mit einer Erfolgsrate von 100% sehr effektiv.

    Ausserdem finde ich es sehr löblich von dir, dass du dich freiwillig für die Spammer opferst. So lange es unverschlüsselt herumliegende Mail-Adressen gibt brauchen die Spammer unsere Mail-Adressen nicht zu entschlüsseln 😉

    Reply
  11. @Dominik:
    Das „Zum Thema Mafia“ war wohl nicht auffällig genug. Hätte den Satz doch eher „Das es vor 1,5 Jahren _der_Mafia_ nicht bekannt gewesen sein soll …“ formulieren sollen…

    Ach, ich opfer mich doch gerne 😉 Aber irgendwie interessieren die sich nicht für mich … Heute nur 2 Spammails 🙁 Vielleicht mach ich dafür ja was Anderes richtig?
    Die Adresse existiert seit über 10 Jahren (hätte gerne mal nachgeschaut, find aber nix) und ebenso lange ist sie bekannt. Ich fühle mich in keinster Weise irgendwie als Opfer von irgendwas oder -wen.

    Nebenbei entschlüsseln nicht ^Die^ die Adressen, das geschieht automatisiert und die Bots interessiert es nicht, ob sie mehr oder weniger Arbeit beim Auslesen der Seite zu haben. Die Denken sich kaum „Ach, das umzudrehen ist mir jetzt zu aufwendig … ich lass das mal und mach es vielleicht später, wenn ich nichts unverschleiertes finde“ 😀
    Ich geb mich dieser Illusion einfach nicht hin, das ist alles.

    Deine hast du übrigens schön verschlüsselt. Die müssen ja nur den ganzen „Aufwand“ betreiben und die sogar direkt im Quelltext eingebettete Javascript-Funktion ausführen 😀 Mit dem „@“ und dem auffälligen Titel „mail_x“ gibts du schon sehr einfache Anhaltspunkte, welche Funktion wohl interessant sein könnte, da muss man ja nur noch den Funktionsaufruf selbst finden.
    Entschuldige meine Ironie, aber ich finds einfach witzig 😀 Ich opfere mich vielleicht, aber nicht für dich, weil deine Adresse brauchen sie auch nicht entschlüsseln: Du gibst den Schlüssel ja gleich mit. Und nichtmal die JS-Funktion ist notwendig, denn die Notation mit „_AT_“ und „_DOT_“ ist auch uralt.
    Das is, was ich mit „Illusion“ meinte: Man sollte sich die Stärke seiner Verschleierungsmethode schon bewusst sein und im Moment stehn wir auf einer Stufe 😉

    Reply
  12. Natürlich ist „_AT_“ und „_DOT_“ uralt, und natürlich muss man auch irgendwo den Entschlüsselungscode mitliefern (was will ein „normaler User“ mit verschlüsselten Daten – ohne die Möglichkeit sie zu entschlüsseln). Ich vertraue primär einfach darauf, dass – wenn Google es erst jetzt langsam auf die Reihe bekommt, JavaScript auszuführen – es die Spammer auch großteils nicht können.

    Einen 100% Schutz gibt’s sicher nicht. Aber alles ist besser als nichts.

    Reply
  13. Mit Verlaub: Das ist dumm und naiv!
    Das Google JS „nur“ langsam lernt liegt wohl eher daran, dass sie Fehler vermeiden möchten, die Bots bewusst in Kauf nehmen. Zudem ist „Eine Mail-Adresse finden“ dann doch wesentlich leichter, als „Inhalt von Nicht-Inhalt unterscheiden“ und „potentiellen Inhalt indexieren“+Kontext erhalten. Und letzten Endes wenn Google durch JS generierten Inhalt indexiert, was solls dann damit machen? Verlinken geht schlecht 😉 Wozu dann überhaupt erst indexieren? Und warum dann erst ausführen?

    Zum Thema „Dekodierung mitliefern“: Es ging mir auch darum, dass die ganze Struktur und die Bezeichner nach „E-Mail“ müffeln. Die Adresse verstecken, aber das Versteck mit einem dicken, roten Pfeil versehen? Das „@“ is irgendwie notwendig, aber die Funktion muss doch nun echt nicht „mail_x“ heißen ….

    == „Einen 100% Schutz gibt’s sicher nicht. Aber alles ist besser als nichts.“
    Bestimmt, bloss scheint mir sowas eindeutig der falsche Ansatz zu sein. Ich mein: Du bekommst kaum Spam. Prima, deine „Verschlüsselung“ funktioniert. Oder nicht? Ich bekomm auch kaum Spam. Das lässt sich mit Verschleierung nicht erklären. Könnte es dann sein, dass deine „Verschlüsselung“ vielleicht garnicht ausschlaggebend war?

    Ich mag ja Gleichnisse 😀
    Du kaufst ein Haus und ziehst ein Burggraben drum herum. Nach 2 Jahren sagst du „Siehst du, hat funktioniert: Es ist niemand eingebrochen“. Mal abgesehen davon, dass ein Burggraben eher bedingt ein Hindernis darstellt (ähnlich wie sowas hier ;)), gibt es kein Beweis dafür, dass dieser dafür verantwortlich ist, dass niemand eingebrochen ist.

    Reply
  14. Von optimalem Schutz rede ich ja gar nicht. Inzwischen verwende ich auch andere Methoden – Ich habe nur bisher noch nicht alle alten Seiten aktualisiert. Allerdings sitzt da ja auch nicht die ganze Zeit jemand vornedran, der guckt, ob eine Funktion verdächtig aussieht. Entweder kann der Spider Javascript – dann ist es sowieso egal, wie man die Mail-Adresse verschlüsselt. Oder er kann es nicht – und dann darf ich meine Funktion auch mail_x nennen.

    Jetzt juckt’s mich aber mal wieder im Finger. Ich glaub, ich sollte den Test von TillLate mal wiederholen – Sozusagen der Spam-Test 2010. Nur dumm, dass unser Mail-Server schon so viel ausfiltert. Da muss ich ja dann die Mail-Logs untersuchen 😉

    Reply

Leave a Comment.

Link erfolgreich vorgeschlagen.

Vielen Dank, dass du einen Link vorgeschlagen hast. Wir werden ihn sobald wie möglich prüfen. Schließen