{"id":1134,"date":"2011-07-24T12:35:29","date_gmt":"2011-07-24T10:35:29","guid":{"rendered":"http:\/\/hjacob.com\/blog\/?p=1134"},"modified":"2016-12-12T17:03:08","modified_gmt":"2016-12-12T16:03:08","slug":"usability-dau-kompatibler-schutz-der-e-mail-adresse","status":"publish","type":"post","link":"https:\/\/hjacob.com\/blog\/usability-dau-kompatibler-schutz-der-e-mail-adresse\/","title":{"rendered":"Usability: DAU-kompatibler Schutz der E-Mail Adresse"},"content":{"rendered":"<p>Der permanente Zuwachs von Spam-Mails hat Webmaster dazu gebracht, die E-Mail Adressen auf Webseiten zu verst\u00fcmmeln. Wo fr\u00fcher ein sch\u00f6ner [code lang=&#8220;javascript&#8220;]&lt;a href=&quot;mailto:[EMAIL]&quot;&#8230;&gt;[\/code] verwendet wurde, liest man heute Sachen wie <code>service {\u00e4t}\u00a0unseredomain {punkt} com<\/code> &#8211; das sch\u00fctzt vielleicht vor Spam Bots (wobei gute Systeme auch eine solche Syntax knacken k\u00f6nnen), ist aber Usability-technisch ein Graus &#8211; sowohl f\u00fcr Heavy-User, die die E-Mail Adresse rauskopieren und im Mail Programm korrigieren m\u00fcsen, also auch f\u00fcr die DAUs &#8211; die gar nicht erst kapieren, dass es sich dabei um eine E-Mail Adresse handeln soll.<\/p>\n<p>Kleine Anekdote am Rande &#8211; die Fakult\u00e4t der BWL der Uni Marburg hatte auf ihren Seiten die oben beschriebene &#8222;Anti-Spam-Syntax&#8220; verwendet, gleichzeitig aber einen Hyperlink mit <code>mailto:<\/code> verwendet (wo nat\u00fcrlich die E-Mail als Klartext drinstand) &#8211; der Nutzen der Anti-Spam-Syntax wurde also ad absurdum gef\u00fchrt, weil die Bots nat\u00fcrlich im Source-Code der Page schauen, wo sie dann die Mail im Klartext fanden. Ich habe sie damals auf diese Problematik hingewiesen und gerade habe ich noch mal geschaut, was daraus geworden ist: <a href=\"http:\/\/www.uni-marburg.de\/fb02\/personal\" target=\"_blank\">Personal der Uni Marburg (BWL)<\/a> &#8211; das ist dann Usability-technisch der Supergau. <\/p>\n<h2>Wie macht man es richtig?<\/h2>\n<p>Im wesentlichen kenne ich f\u00fcnf Varianten die E-Mail Adressen auf Webseiten halbwegs vor Spambots zu sch\u00fctzen, wovon allerdings nur 2 halbwegs sicher sind. Hier eine \u00dcbersicht inkl. meiner Einsch\u00e4tzung zu Sicherheit und Usability nach Schulnoten.<\/p>\n<table>\n<tr>\n<th>Methode<\/th>\n<th>Sicherheit<\/th>\n<th>Usability<\/th>\n<th>Wartung<\/th>\n<tr>\n<td>&#8222;Anti-Spam-Syntax&#8220;<br \/><code>(hallo {at} domain [dot] de)<\/code><\/td>\n<td>5<\/td>\n<td>4<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>E-Mail als Grafik einbinden<\/td>\n<td>2<\/td>\n<td>6<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>Mail Encryption (Hexdecimal \/ HTML Entities &#8211; <a href=\"http:\/\/www.knechtology.com\/stop-spam\/email_encoder.html\" class=\"external\">Beispiel<\/a>)<\/td>\n<td>5<\/td>\n<td>1<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>Email als iFrame + Sperrung durch robots.txt<\/td>\n<td>6<\/td>\n<td>1<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>Javascript Methode<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<\/tr>\n<\/table>\n<p>\nUnterm Strich ist also die L\u00f6sung via Javascript die beste. Also folgt nun eine Anleitung wie man diese umsetzt.<\/p>\n<h2>Mit Javascript E-Mail Adressen verschl\u00fcsseln<\/h2>\n<p>Das Prinzip ist sehr simpel: Man hat eine Javascript-Funktion, die an den gew\u00fcnschten Stellen die E-Mail Adresse einf\u00fcgt. Dabei wird die Adresse nat\u00fcrlich nicht als Klartext \u00fcbergeben, sondern nur die Bestandteile. Das ganze sieht dann so aus:<br \/>\n[code type=&#8220;javascript&#8220;]<br \/>\n&lt;script type=&quot;text\/javascript&quot; charset=&quot;utf-8&quot;&gt;<br \/>\n\/\/&lt;![CDATA[<br \/>\n\tfunction email(ending, domain, name) {<br \/>\n\t\tdocument.writeln(&#8218;&lt;a href=&quot;mailto:&#8217;+name+&#8217;@&#8217;+domain+&#8216;.&#8217;+ending+&#8217;&quot;&gt;&#8217;+name+&#8217;@&#8217;+domain+&#8216;.&#8217;+ending+'&lt;\/a&gt;&#8216;);<br \/>\n\t}<br \/>\n\/\/]]&gt;<br \/>\n&lt;\/script&gt;<br \/>\n[\/code]<br \/>\nDiesen Code packt man dann am Besten in eine separate Javascript Datei, die man dann in alle Unterseiten l\u00e4dt.<\/p>\n<p>An der Stelle, an der man eine E-Mail ausgeben m\u00f6chte, ruft man dann einfach folgenden Code auf:<br \/>\n[code type=&#8220;javascript&#8220;]<br \/>\n&lt;script type=&quot;text\/javascript&quot; charset=&quot;utf-8&quot;&gt;<br \/>\n\/\/&lt;![CDATA[<br \/>\nemail(&quot;com&quot;, &quot;hjacob&quot;, &quot;kontakt&quot;);<br \/>\n\/\/]]&gt;<br \/>\n&lt;\/script&gt;<br \/>\n[\/code]<br \/>\nUnd schon erscheint die E-Mail Adresse inklusive passenden mailto-Hyperlink. Clean, secure und easy.<\/p>\n<p>PS: Am Besten die Javascript-Funktion noch etwas ver\u00e4ndern &#8211; umso unterschiedlicher, desto sicherer. So kann man ja zum Beispiel den Domain-Namen nicht als Variable verwenden, sondern hardcoded in die Funktion schreiben (macht nat\u00fcrlich nur Sinn, wenn man wirklich nur E-Mail Adressen von dieser einen Domain anzeigen will).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie ver\u00f6ffentlicht man E-Mail Adressen am Besten auf Webseiten, ohne dass sie direkt von Spam Robots gefischt werden. Inklusive \u00dcbersicht und Tutorial.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[352,13,215,3],"tags":[354,366,19,353,29,118,355,367,386],"_links":{"self":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/1134"}],"collection":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/comments?post=1134"}],"version-history":[{"count":7,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/1134\/revisions"}],"predecessor-version":[{"id":1368,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/1134\/revisions\/1368"}],"wp:attachment":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/media?parent=1134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/categories?post=1134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/tags?post=1134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}