Aussi disponible en : English · Español · Português · العربية
Traducteur leetspeak
Convertissez du texte en leet ou relisez-le, avec une réponse honnête sur les niveaux qui survivent à l’aller-retour.
Qu’est-ce que le leetspeak ?
Le leetspeak — souvent écrit 1337 — remplace les lettres par des chiffres et des symboles qui leur ressemblent. Le A devient 4, le E devient 3, le O devient 0. Il est né sur les messageries des années quatre-vingt, à la fois comme marque d’appartenance et pour passer sous des filtres de mots rudimentaires, et il survit aujourd’hui dans les pseudos de jeu, les noms d’utilisateur et les mots de passe.
C’est un chiffrement par substitution sans le moindre comité derrière. Personne ne publie de table normative, chaque outil choisit donc la sienne. Celui-ci propose trois des conventions en usage et, plus utile encore, vous dit ce que chacune coûte.
Car la question intéressante à propos d’une substitution n’est pas de quoi elle a l’air, mais si l’on peut récupérer son texte.
Comment utiliser le traducteur
- Choisissez le sens. Du texte vers le leet convertit à la frappe. Du leet vers le texte fait l’inverse et affiche toutes les lectures que votre saisie pourrait avoir, et non une seule supposition.
- Choisissez un niveau. Le basique échange six lettres contre des chiffres. L’avancé en ajoute quatre. Celui des symboles amène @, $ et compagnie. Le panneau du dessous indique, pour celui que vous avez retenu, si le décodage rend votre texte exact.
- Lisez le panneau avant de vous fier à une lecture. Lorsque plusieurs lectures existent, l’outil les liste et met en évidence celles qui sont de vrais mots anglais, car c’est ainsi qu’un humain choisit la bonne.
Le niveau le plus agressif est celui qu’on peut défaire
On suppose volontiers que plus la substitution est agressive, plus le texte est massacré et plus il est difficile à récupérer. C’est faux, et faux d’une manière qui se vérifie en comptant.
La réversibilité tient à une seule propriété : un symbole doit-il représenter deux lettres différentes ? Le niveau basique substitue six lettres et emploie six symboles distincts : rien ne se télescope. Celui des symboles substitue onze lettres pour onze symboles distincts : rien non plus. L’avancé substitue dix lettres avec seulement neuf symboles et, par le principe des tiroirs, deux lettres doivent se partager l’un d’eux. Ce sont le i et le l, tous deux écrits 1.
Cette unique collision fait toute la différence. Passez les 5 000 mots de notre liste courante dans chaque niveau puis décodez-les : le basique rend exactement une lecture dans 100 % des cas, celui des symboles aussi, et l’avancé plafonne à 41,3 %. Quatre paires de mots ordinaires deviennent littéralement identiques : fail et fall donnent f411, hail et hall donnent h411, ill et iii donnent 111. Aucun décodeur, si habile soit-il, ne peut vous dire d’où vous êtes parti.
La raison pour laquelle le niveau des symboles y échappe ne manque pas de sel : il déplace le i sur le point d’exclamation, ce qui libère le 1 pour ne signifier que l. Ajouter une substitution plus exotique a rendu le chiffrement plus propre, non plus confus.
Pourquoi le décodage ne peut pas être une table de correspondance
Encoder du leetspeak est une application simple : chaque lettre a un remplaçant, on parcourt la chaîne et on substitue. Décoder semble être le même travail à l’envers, et c’est là le piège. L’inverse d’une application plusieurs-vers-un est une application un-vers-plusieurs. Si 1 peut signifier i ou l, une chaîne comportant trois 1 possède huit lectures, et un décodeur bâti comme simple table de correspondance en renvoie tranquillement une comme si c’était la réponse.
Cet outil déploie donc toutes les lectures. Sur une saisie courte, cela fait une poignée d’options qu’il suffit de regarder. Sur une plus longue, le nombre double à chaque caractère ambigu, d’où un plafond : au-delà de douze positions ambiguës il affiche la lecture la plus probable et vous donne le total réel, plutôt que de se figer ou de tronquer en silence une liste que vous croiriez complète.
Ce qui le rend utilisable, c’est le filtrage par dictionnaire. La plupart de ces lectures ne sont pas des mots : l’outil met donc en évidence celles qui le sont. C’est exactement ainsi qu’un humain lit du leetspeak, et aussi ainsi que procèdent les casseurs de mots de passe — bon à savoir si vous comptiez leetspeaker un mot du dictionnaire et appeler cela un mot de passe solide.
Limites honnêtes
Il n’existe pas de leetspeak officiel : ces trois tables sont donc des conventions et non des normes. Le traducteur de quelqu’un d’autre divergera du nôtre quelque part, et aucun des deux n’aura tort. Ce qui se généralise, ce ne sont pas les tables mais la propriété : comptez les lettres qu’une table substitue et les symboles distincts qu’elle emploie ; si le second nombre est plus petit, cette table est irréversible.
Le dictionnaire qui sert à repérer les vrais mots est une liste de 5 000 mots anglais courants, la même que celle du vérificateur de mots de passe. Il ne connaît ni noms propres, ni argot, ni autres langues, ni vocabulaire technique : une lecture non mise en évidence n’est donc pas fausse, elle est simplement absente de cette liste.
Le traducteur travaille lettre à lettre et ignore tout du sens. Le leetspeak le plus chargé que l’on croise va souvent au-delà de toute table, en remplaçant des lettres entières par des formes de plusieurs caractères — |\| pour le N, /\/\ pour le M — et rien de cela n’est traité ici. Ces variantes sont d’ailleurs impossibles à décoder automatiquement.
Pourquoi est-ce gratuit ?
Parce que cela ne nous coûte rien. La substitution, le déploiement de toutes les lectures et le filtre par dictionnaire s’exécutent dans votre navigateur à mesure que vous tapez : rien n’est envoyé, rien n’est conservé, et aucun serveur n’intervient pour voir ce que vous avez saisi.
Il n’y a donc ni compte, ni inscription, ni limite. Passez-y un paragraphe entier si vous voulez et, si vous testiez un mot de passe, raison de plus pour qu’il n’ait jamais quitté votre machine.