Crypter du texte, un email, une URL

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Crypter une chaine de texte (email, URL) sans en empêcher l’affichage à l’écran. Très utile pour empêcher l’aspiration des adresses emails.

Fonctions de ce filtre :
Crypter une chaîne de texte (email, URL) sans en empêcher l’affichage à l’écran ni l’utilisation par un logiciel de messagerie.

Note : SPIP propose par défaut la fonction |antispam pour crypter les e-mails.

function antispam($texte) {
   include_ecrire ("inc_acces.php3");
   $masque = creer_pass_aleatoire(3);
   return ereg_replace("@", " $masque ", $texte);
}

en bref il remplace le @ de l’adresse email par trois caractères...
du coup l’utilisateur lambda ne peut envoyer directement un mail en cliquant sur le lien, il doit penser à remettre le @


Je vous propose ci-dessous une autre méthode pour protéger vos emails de la plupart des aspirateurs :
crypter la chaîne de texte avec son équivalent numérique

Cette méthode permet de crypter l’adresse sans empécher son utilisation par un clic...
l’affichage est correct à l’écran et dans le logiciel de mail...

-  exemple : coyote
-  devient : coyote
-  à l’écran et dans le logiciel de mail : coyote

Inconvénient :
Cette méthode n’est pas parfaite car le cryptage est réversible.
Mais au vu du nombre de pages se trouvant sur le net, les spammeurs vont-ils jusqu’à rechercher le cryptage d’une page et essayer de l’interpréter ???
De plus, dans notre cas, le cryptage se fait sur une partie du code et non l’intégralité...

Avantages :
-  Il est possible de crypter n’importe quelle chaine de texte
-  le cryptage n’empêche pas l’utilisation du lien
-  Ce script devrait permettre d’empêcher l’aspiration par la plupart des moteurs de recherche « classiques » soit non pirates...


Cette méthode de protection vous intéresse ?

  1. Copiez-collez le code ci-dessous dans votre fichier mes_fonctions.php3
  2. Dans votre squelette, utilisez le utiliser le filtre de la manière suivante :[(#EMAIL|crypt_mail)]

exemple : <a href="mailto:[(#EMAIL|crypt_mail)]">[(#EMAIL|crypt_mail)]</a>

/*
 *   +----------------------------------+
 *    Nom du Filtre :  crypt_mail                      
 *   +----------------------------------+
 *    Date : dimanche 6 juillet 2003
 *    Auteur :  Jean-Pierre KUNTZ 
 *        alias Coyote   
 *   +-------------------------------------+
 *    Fonctions de ce filtre :
 *     Crypter une chaîne de texte (email, URL)
 *     sans en empêcher l'affichage à l'écran 
 *     ni l'utilisation par un logiciel de messagerie 
 *   +-------------------------------------+ 
 *  
 *   exemple d'utilisation dans un squelette :
 *
 *   <a href="mailto:[(#EMAIL|crypt_mail)]">[(#EMAIL|crypt_mail)]</a>
 *
 * Pour toute suggestion, remarque, proposition d'ajout
 * reportez-vous au forum de l'article :
 * http://www.uzine.net/spip_contrib/article.php3?id_article=197
*/


function crypt_mail($texte) { 
   $s=""; 
   for ($i=0;$i<strlen($texte);$i++) { 
     $s.="&#".ord($texte{$i}).";"; 
   } 
   return $s; 
} 
// FIN du Filtre crypt_mail

Discussion

10 discussions

  • Répondre à ce message

  • L’annuncio è ancora disponibile puoi contattarmi a mio indi rizzo privato per trovare un accordo grazie,

    Répondre à ce message

  • Etant donné que je suis sur spip, je suppose que je n’ai plus à faire quoi que ce soit car la plate forme intègre déjà cette fonction. aspirateur robot

    Répondre à ce message

  • Bonjour,
    je cherche à enlever la solution antispam d’origine de spip, dans quel fichier se trouve t elle ?

    Merci.

    Répondre à ce message

  • 2

    Je trouve ça astucieux, surtout du fait qu’on est pas obligé d’utiliser Javascript pour décoder l’adresse e-mail (ce que j’utilise pour mon propre filtre).

    Mais faudrait voir ce que ça donne avec un bon aspirateur de mails. J’ai lu que AspiroMail avec IE arrivait à aspirer des adresses codées.

    • DaredevilVF

      Effectivement, ce cryptage est à mon avis désormais obsolète. Les robots le lisent parfaitement.

      Pour la démo, voir le site aspirine.org,
      et surtout l’aspirateur sur http://aspirine.org/cgi-bin/trouvemail.pl

      J’ai donc laissé tomber cette fonction pour revenir à mon cryptage Javascript..

      Il y a une fonction plus récente qui doit fonctionner, mais qui est plus ardu à mettre en oeuvre dans l’article Un système antispam

    • merci pour ta remarque DaredevilVF...
      effectivement les spammeurs évoluent et ce script n’est peut être plus suffisant.

      j’espère au moins qu’il aura servi à qq spipeurs...

      salutations,

    Répondre à ce message

  • Répondre à ce message

  • Blue Prawn

    perso, voici comment j’ai fait pour appliquer ce filtre aussi sur les textes des articles, breves, etc..

    // utilisation: (#TEXTE|crypt_mail_texte)
    function crypt_mail_texte($texte)
    {
        return preg_replace_callback('|[-\w.]{2,}@[-\w.]{2,}|',
               create_function('$match', 'return crypt_mail($match[0]);'),
               $texte);
    }

    c’est peut-être pas la meilleur solution m’enfin çà à l’air de marcher.

    Répondre à ce message

  • 3

    Je n’y arrive pas...
    Je dois être stupide...

    Voir : http://www.centre-lecture.com/home/

    (en bas de page)

    Et dans le premier article l’auteur apparaît en clair...

    Merci

    Répondre à ce message

  • 2
    Roger FREBAULT

    Bonjour,

    Je trouve ce filtre superbe. Je l’ai intégré immédiatement dans mon site que je passe sous SPIP.

    Mais est-il possible de faire la même chose avec les email qui se retrouvent dans le texte des articles ?

    Sincèrement,

    Roger FREBAULT

    • Roger FREBAULT

      Un peu déçu tout de même de voir ce filtre non installé sur ce forum.

    • bouh, malheureusement ça ne marche pas pour moi,
      avec la balise (#TEXTE

      dans la source de la page HTML le texte est bien crypté, mais affiche dès lors qu’il y a un email spip du genre

      [pouf->zzz@toc.info]: 
      
      <a href="zzz@toc.info"class="spip_out">zzz@toc.info</a>

      ...et le class spip_out vient en + se coller tout seul !


      j’utilise donc le moins pratique (#TEXTE qui fonctionne sur des emails à l’intérieur du texte

    Répondre à ce message

  • 1

    Comment faire pour que l’email des internautes qui envoient un commentaire a la suite d’un article soit crypté ?

    Mon email sera-t-il crypté par le formulaire que j’utilise pour poster ce commentaire ?


    • 1. Copiez-collez le code ci-dessous dans votre fichier mes_fonctions.php3
      2. Dans votre squelette, utilisez le utiliser le filtre de la manière suivante :(#EMAIL
      exemple : (#EMAIL">(#EMAIL

      il s’agit de crypter des mails affichés sur une page pour éviter qu’il ne soient aspirés par un robot spammeur, relis l’article peut être ;-)

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom