Vous affichez votre adresse email sur votre site. 2 jours plus tard, les seuls emails que vous recevez, ce sont des princes saoudiens qui ont besoin de donner 1 million de dollars, mais qui ont besoin de votre de RIB.
Une des solutions pour contrer cette menace est d’obscurcir les adresses email, les rendant ainsi moins accessibles aux robots tout en restant lisibles pour les utilisateurs humains.
La solution Muddle
C’est dans ce contexte que l’outil Muddle a été développé. Il s’agit d’un package PHP conçu pour masquer et protéger les adresses email des robots, permettant ainsi d’obscurcir les emails dans des projets PHP et Laravel. Muddle propose différentes stratégies pour obscurcir les emails cliquables et non cliquables, offrant ainsi aux développeurs la possibilité de choisir la méthode qui correspond le mieux à leurs besoins.
Pour les projets Laravel, Muddle fournit des composants Blade pratiques qui facilitent l’intégration de l’obscurcissement des emails dans les vues. Par exemple, au lieu d’afficher une adresse email en clair comme ceci :
<a href="mailto:{{ $user->email }}">{{ $user->name }}</a>
Vous pouvez utiliser le composant Muddle pour obscurcir l’adresse :
<x-muddle-link :email="$user->email" :title="$user->name" />
Muddle offre également des composants spécifiques à des stratégies d’obscurcissement, tels que :
• x-muddle-random : choisis une stratégie aléatoire à chaque fois.
• x-muddle-append : ajoute des caractères pour obscurcir l’email.
• x-muddle-concatenation : concatène des segments pour former l’email.
• x-muddle-encrypt : crypte l’email.
• x-muddle-entities : utilise des entités HTML pour représenter l’email.
• x-muddle-hex : encode l’email en hexadécimal.
Ces composants permettent une flexibilité dans la manière dont les adresses email sont protégées, rendant ainsi plus difficile leur détection par les robots.
Laravel c’est bien, mais moi je fais du vanilla
Bien que Muddle offre des composants Blade pour faciliter l’intégration dans les projets Laravel, il est important de noter que cet outil peut également être utilisé dans des projets PHP sans Laravel. En effet, Muddle est conçu pour être flexible et s’adapter à divers environnements PHP.
Comme pour Laravel, Muddle propose plusieurs stratégies d’obfuscation. Par défaut, la méthode make utilise une stratégie aléatoire. Cependant, vous pouvez spécifier une stratégie particulière en passant son nom en second argument :
<?php
// Exemple avec la stratégie 'hex'
$muddledEmailHex = Muddle::make($email, 'hex');
// Exemple avec la stratégie 'entities'
$muddledEmailEntities = Muddle::make($email, 'entities');
Les stratégies disponibles incluent, entre autres, ‘hex’, ‘entities’, ‘append’, ‘concatenation’ et ‘encrypt’. Chacune de ces stratégies offre une méthode différente pour obscurcir l’adresse email, augmentant ainsi la protection contre les robots collecteurs.
L’installation de Muddle est simple et se fait via Composer :
composer require mokhosh/muddle
En intégrant Muddle dans vos projets PHP ou Laravel, vous ajoutez une couche de sécurité essentielle pour protéger les adresses email de vos utilisateurs contre les robots malveillants, contribuant ainsi à réduire le volume de spam et à améliorer l’expérience utilisateur sur votre site