Ergebnis 1 bis 11 von 11

Thema: [javascript]Mail-Adresse verschlüsseln

  1. #1
    TP-Special Mod Avatar von webmichl
    Registriert seit
    Jun 2001
    Ort
    8°21' O 49°1' N
    Beiträge
    8.679

    [javascript]Mail-Adresse verschlüsseln

    Wer Mailadressen im Klartext in seine Seite einfügt, läuft in Gefahr, daß Spam-Robots diese Adresse auslesen und das Postfach von altbekannten Angebotsmails überflutet werden. Eine einfache, "banale" JS-Verschlüsselung dürfte da helfen.

    EDIT
    eine variablere Lösung im übernächsten Post...



    In einem externen Javascript werden die Adressbestandteile definiert und per document.write zusammengefügt ( extern deswegen, da sich ansonsten der HTML-Validator beschwert ):
    Code:
           var An = "hotzenplotz";
             var Dn = "raeuber";
             var En = "de";
             var LinkText = An + "@" + Dn + "." + En;
             
             function setMailLink() {
               document.open();
               document.write("<a href=\"mailto:" + LinkText + "\">" + LinkText + "</a>");
               document.close();
             }
    In die HTML-Seite wird dann einfach folgendes eingetragen:

    Code:
          <script language="JavaScript">setMailLink();</script>
    Natürlich darf nicht vergessen werden, das Javascript im HEAD-Bereich einzubinden...
    Gruß, der Michl


    * * * if you want them to RTFM, make a better FM! * * *

  2. #2
    TP-Special Mod TP-Sponsor Avatar von Thomas
    Registriert seit
    May 2001
    Ort
    Arnsberg - Sauerland
    Beiträge
    21.685

    Thumbs up

    schönes, einfaches und simples () script, welches ich oft benutze

    wenn ich jetzt aber mehrere mail-addys auf einer Seite/Site brauche, muss ich das "vervielfältigen", so habe ich das (ganz alleine ) für mich ausgetüftelt:

    Code:
    <script type="text/javascript">
    
    function setMailLink1() {
    	var An = "anna";
    	var Dn = "meine-domain";
    	var En = "de";
    	var LinkText = An + "@" + Dn + "." + En;
      document.open();
      document.write("<a href=\"mailto:" + LinkText + "\">" + LinkText + "</a>");
      document.close();
    }
    </script>
    <script type="text/javascript">
    
    function setMailLink2() {
    	var An = "beta";
    	var Dn = "meine-domain";
    	var En = "de";
    	var LinkText = An + "@" + Dn + "." + En;
      document.open();
      document.write("<a href=\"mailto:" + LinkText + "\">" + LinkText + "</a>");
      document.close();
    }
    </script>
    Aufruf dann entsprechend:

    Code:
    <script language="JavaScript">setMailLink1();</script>
    <script language="JavaScript">setMailLink2();</script>
    bis zu einer gewissen Anmzahl mail-addys ist das ja auch ok, habe aber jetzt den Fall, dass ich reichlich mail-addys in einer Site auf diese Art unterbringen möchte.

    im konkreten Fall haben alle addys die gleiche Domain, es wäre also nur der Teil vor dem "@" auszutauschen.

    kann mir aber auch vorstellen, dass dieses script für Sites mit einer Reihe ganz unterschiedlichen Adressen zum Einsatz kommt.

    Lässt sich das script/der code für solche Fälle nicht verkürzen/vereinfachen?

    (bin ja "bekennender Nicht-Coder" )

  3. #3
    TP-Special Mod Avatar von webmichl
    Registriert seit
    Jun 2001
    Ort
    8°21' O 49°1' N
    Beiträge
    8.679

    Lässt es...

    Die function:
    Code:
         	   function setMailLink(An, Dn, En) {
         		 var LinkText = An + "@" + Dn + "." + En;
         		 document.open();
     		 document.write("<a href=\"mailto:" + LinkText + "\">" + LinkText + "</a>");
         		 document.close();
         	   }
    Der Aufruf:
    Code:
       <script language="JavaScript">setMailLink('raeuber','hotzenplotz','de');</script></br>
         <script language="JavaScript">setMailLink('kaspar','hauser','de');</script>
    Gruß, der Michl


    * * * if you want them to RTFM, make a better FM! * * *

  4. #4
    TP-Senior
    Registriert seit
    Jun 2004
    Ort
    leipzig
    Beiträge
    214
    was passiert denn, wenn der spam-bot einen browser imitiert, dessen js deaktiviert ist? ist die verschlüsselung dann nicht sinnlos?

    (hab mich mit dem thema spam-bots und js noch nicht wirklich auseinander gesetzt)
    BeCreated - Geduld und Zeit für Ihre Wünsche

  5. #5
    TP-Special Mod TP-Sponsor Avatar von Thomas
    Registriert seit
    May 2001
    Ort
    Arnsberg - Sauerland
    Beiträge
    21.685

    Smile

    kleiner Verbesserungsvorschlag noch, weil der Validator wegen "language" meckert, statt:

    <script language="JavaScript">setMailLink ....

    besser:

    <script type="text/javascript">setMailLink ....

    und der Validator ist glücklich

  6. #6
    TP-Special Mod TP-Sponsor Avatar von Thomas
    Registriert seit
    May 2001
    Ort
    Arnsberg - Sauerland
    Beiträge
    21.685
    Ergänzung aus dem aktuellen Dr. Web-Newsletter:

    9 Varianten der Verschlüsselung: http://www.csarven.ca/hiding-email-addresses
    mail-addy erscheint erst auf Klick (php): http://grassegger.at/xperiment/verbergen-email-spammer/

  7. #7
    TP-Moderator Avatar von Adromir
    Registriert seit
    Jun 2004
    Ort
    Hannover
    Beiträge
    4.811
    Wobei die Javascriptverschlüsselung der Email mit vorsicht zu genießne ist, da sie ein Verstoß gegen die in §6 des TDGs definierten Bestimmungen für ein Impressum darstellen können..

    Mal eine kleine Komplikation Abseits der Programmierseite..

  8. #8
    TP-Newbie
    Registriert seit
    Mar 2005
    Beiträge
    1

    Noch ne Möglichkeit...

    ... http://www.hidemail.de.
    Hier kann man sich den Javascript-Streß sparen und hat trotzdem ne verschlüsselte Mailadresse.

  9. #9
    Registered User Avatar von sveniboy
    Registriert seit
    Mar 2005
    Beiträge
    61
    @thomas:
    Nützen denn Deine erwähnten Methoden was? Ich meine die von Deinen angegebenen Links.
    Wie kann man denn überhaupt prüfen, welche Methode die "sicherste" ist? Ist nämich schon ein interessantes Thema, da ich gerade meine erste Page aufbaue und nicht in jede "Falle" tappen möchte...

  10. #10
    TP-Special Mod Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    Da das Thema heiss diskutiert wird, stelle ich hier mal die Methode von Typo3 vor, um Emailadressen zu verschlüsseln, meines Erachtens eine hervorragende Methode.

    PHP-Code:
    /**
     * Encryption of email addresses for <A>-tags See the spam protection setup in TS 'config.'
     *
     * @param    string        Input string to en/decode: "mailto:blabla@bla.com"
     * @param    boolean        If set, the process is reversed, effectively decoding, not encoding.
     * @param    string       key for encrypt, either 'ascii' or int between -5 and 5
     * @return    string        encoded/decoded version of $string
     */
    function encryptEmail($string,$back=0,$method=1)    {
        
    $out '';

        if (
    $method === 'ascii') {
            for (
    $a=0$a<strlen($string); $a++) {
                
    $out .= '&#'.ord(substr($string$a1)).';';
            }
        } else    {
            for (
    $a=0$a<strlen($string); $a++)    {
                
    $charValue ord(substr($string,$a,1));
                
    $charValue+= intval($method)*($back?-1:1);
                
    $out.= chr($charValue);
            }
        }
        return 
    $out;

    Der Link wird erzeugt mit

    PHP-Code:
    $link="javascript:linkTo_UnCryptMailto('".encryptEmail($mailToUrl)."');"
    Dem HTML werden 2 JS-Routinen hinzugefügt:
    Code:
    // JS function for uncrypting spam-protected emails:
    function UnCryptMailto(s) {	//
    	var n=0;
    	var r="";
    	for(var i=0; i < s.length; i++) {
    		n=s.charCodeAt(i);
    		if (n>=8364) {n = 128;}
    		r += String.fromCharCode(n-(1));
    	}
    	return r;
    }
      // JS function for uncrypting spam-protected emails:
    function linkTo_UnCryptMailto(s)	{	//
    	location.href=UnCryptMailto(s);
    }
    das Ergebnis sieht dann im Browser so aus: javascript:linkTo_UnCryptMailto('nbjmup;tufggfoAejtmbct/ef');

    Der Linktext wird z.B. so dargestellt:
    empfänger<span>@</span>domain<span>.</span>de

    wobei man das @ durch beliebige Zeichen ersetzen kann,z.B.(at), ebenso den Punkt, z.B. (dot)


    wenn das nicht sicher ist ...
    Geändert von steffenk (17.01.2006 um 18:03 Uhr)

    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer

  11. #11
    TP-Moderator Avatar von Adromir
    Registriert seit
    Jun 2004
    Ort
    Hannover
    Beiträge
    4.811
    Nachteil der Methode ist leider, daß eine JS- Verschlüsselte Emailadresse gefahr läuft nicht den Ansprüchen des TDGs zu entsprechen. Und das ist ja auch der Grund warum man seine Emailadresse auf die Webseite schreiben sollte (ansonten wäre die beste Methode ja die Emailadresse gar nicht erst zu veröffentlichen).

    Ich hab da mal nen Tool geschrieben, mit der man die Email ins ASCII- Format bringen kann: http://www.schatzwaechter.de/tools/text_con.php
    Ist auch kein 100% Schutz, stellt aber schon mal ne Hürde dar..
    Je größer der Deppenfaktor, desto gigantischer das Bescheidwissergefühl
    -Dieter Nuhr

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. mail-addys verschlüsseln
    Von Thomas im Forum HTML & CSS
    Antworten: 27
    Letzter Beitrag: 14.01.2005, 18:48
  2. update furmolar soll email adresse überprüft werden
    Von pierre im Forum Traum-Dynamik
    Antworten: 1
    Letzter Beitrag: 13.06.2004, 11:28
  3. Wird Ip Adresse beim FTP Programm zwischengespeichert?
    Von Jascha im Forum Dreamweaver & andere Webeditoren
    Antworten: 2
    Letzter Beitrag: 26.09.2002, 00:21
  4. Antworten: 12
    Letzter Beitrag: 18.09.2002, 14:42
  5. Formular mit eMail adresse
    Von •meko• im Forum Flash & Multimedia
    Antworten: 1
    Letzter Beitrag: 20.08.2002, 15:57

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51