De l’art d’être banal

“Le Nombre imaginaire” ou les mathématiques comme terrain de jeu où l’imagination seule fixe les limites.

Nous avons commencé d’évoquer l’art de la préservation des secrets. Il en existe une catégorie essentielle pour chacun de nous : ce sont ceux qui nous permettent de prouver notre identité sur Internet – mots de passe, codes confidentiels, réponses à des questions secrètes. Si nous laissons échapper ces secrets – et il n’est que trop facile de le faire, comme l’actualité le montre régulièrement – alors n’importe qui peut se faire passer pour nous, voler nos informations les plus précieuses et celles qui nous sont confiées, infecter via un mail de notre part l’ordinateur de nos amis, voire induire un malheureux contact Facebook à nous envoyer en urgence un virement de dépannage dont nous ne verrons jamais la couleur.

Il existe des recommandations de bon sens : utiliser des mots de passe complexes, jamais deux fois le même, ne jamais les confier à un tiers, utiliser – si on leur fait confiance – un « coffre-fort à mots de passe » comme nous en proposent des acteurs reconnus de la sécurité informatique. Force est pourtant de reconnaître que nous n’appliquons que rarement ces recommandations, dont certaines sont d’ailleurs contre-productives. Parlons-en un peu.

Beaucoup de sites, par exemple, insistent pour que votre mot de passe contienne au moins un chiffre, une majuscule, voire un caractère spécial autre qu’un chiffre ou une lettre. L’intention, a priori louable, est qu’un attaquant qui essaie de percer votre mot de passe ait besoin de couvrir plus que les 26 lettres de l’alphabet à chaque position. Mais ce type de contraintes, avec l’irritation due aux refus répétés du site d’accepter votre mot de passe, encouragent en fait la paresse et les comportements stéréotypés. Si le fait d’imposer un chiffre dans le mot de passe ne vous pousse pas à utiliser votre date d’anniversaire (cruelle erreur, car elle est facile à trouver sur Facebook ou ailleurs), il vous conduira sans doute à remplacer un I par un 1, ou un O par un zéro. Si un caractère spécial est imposé, vous aurez tendance à remplacer un S par un $, un à par un @, un é par un &. Rien qu’un attaquant chevronné ne connaisse pas ; les programmes qu’utilisent les hackers exploitent automatiquement ce genre de biais. De plus, pour une même longueur, les règles de ce type réduisent le nombre de mots de passe potentiellement valides, ce qui in fine peut simplifier la vie des attaquants. Enfin, concevoir et mémoriser ce type de mots de passe très contraints demande des efforts, et nous avons donc davantage tendance à les réutiliser systématiquement. Le pire étant le cas où, tout en vous imposant ces règles, le site internet vous interdit de dépasser une certaine taille pour votre mot de passe ! Oui, cela arrive.

Or la meilleure solution actuellement recommandée va exactement à l’opposé : c’est la phrase de passe. Nous connaissons tous par cœur une ritournelle, un couplet de chanson, un alexandrin de Hugo, un tercet de Baudelaire, une citation de Guitry, voire une strophe de Heine, une phrase de Shakespeare dans le texte. Voici qui peut constituer la base d’un excellent mot de passe – si le site vous laisse faire. Il vous suffit d’inscrire la première lettre de chaque mot de votre phrase, de façon à obtenir un mot de passe long au moins de 12 ou 14 caractères. Pourquoi ne pas utiliser la phrase elle-même ? Certains auteurs le recommandent, mais d’autre s’y opposent car beaucoup de programmes de craquage utilisent des dictionnaires et essaient des combinaisons de mots ; si votre mot de passe ne contient que quelques mots, il reste vulnérable. Utiliser la première lettre de chaque mot vous permet d’en utiliser beaucoup. Certes, un programme de craquage de mot de passe pourrait se connecter à un dictionnaire de citations – mais le nombre de phrases ou de strophes susceptibles d’être utilisés même dans une seule langue est astronomique comparé au lexique de cette langue. Cependant, prenez garde à ne pas utiliser une phrase qui apparaît comme devise sur votre profil Facebook ! Si vous êtes un passionné réputé de Hugo, choisissez plutôt les paroles d’une comptine ; si vous êtes fan de rap, utilisez plutôt le premier couplet de la Marseillaise ou le refrain de l’Internationale.

En résumé, l’important est, comme on l’a vu dans notre dernière chronique, de maximiser l’entropie de notre mot de passe : compte tenu de l’information a priori dont dispose un attaquant, notre mot de passe devrait être représentatif d’un ensemble aussi large que possible de mots de passe du même ordre, tous aussi probables que lui. Peu de mots de passe différents peuvent contenir notre date d’anniversaire ou le nom de notre chat ; en revanche l’ensemble des phrases que nous pouvons mémoriser est immense. Comme tous ceux qui cherchent à être discrets le savent, la banalité est notre meilleur déguisement !

Cependant, tout cela ne servira à rien si le site web auquel vous vous connectez ne joue pas le jeu de son côté. Votre mot de passe ne doit être connu de personne, y compris de ce site ! Pour le vérifier, vous pouvez prétendre avoir oublié votre mot de passe. Si un site vous le renvoie gentiment par mail, arrêtez tout de suite de l’utiliser : ce n’est pas sérieux. Un site normalement sécurisé doit vous renvoyer un lien vous permettant de créer un nouveau mot de passe, dont il n’aura lui-même pas connaissance.

Comment, me direz-vous, un site peut-il contrôler mon mot de passe s’il ne le connait pas lui-même ? Comment puis-je lui prouver que je suis bien moi sans pour autant partager ce secret-là avec lui ? Cela paraît magique, et c’est là qu’intervient la très jolie notion de codage asymétrique.

A partir de votre mot de passe, un logiciel – présent sur votre ordinateur – va calculer ce que l’on appelle une signature, ou (pour les spécialistes) un « hachage ». Il s’agit d’une suite de caractères obtenue à partir de votre mot de passe par un algorithme dit « asymétrique » : Il est très facile de calculer une signature à partir du mot de passe, mais l’inverse est effroyablement difficile. Seule la signature sera envoyée sur le site web, où elle sera stockée et associée à votre nom. Plus tard, quand vous vous connecterez au site, le mot de passe que vous entrez sera « haché » à son tour, et sa signature comparée à celle que le site a en mémoire. Ainsi, sans connaître votre mot de passe, le site peut s’assurer de votre identité.

La signature d’un mot de passe peut être plus courte que ce mot de passe, et de fait il peut exister plusieurs mots de passe ayant la même signature. Mais la probabilité que cela arrive est si faible que l’on considère cela comme virtuellement impossible.

Si un attaquant arrive à voler les données du site web, il y trouvera votre nom associé à une signature. Cela en soi ne lui suffit pas, car il faut ensuite qu’il détermine un mot de passe ayant exactement cette signature-là. Sa seule possibilité est d’essayer un mot de passe, de le hacher, de comparer la signature obtenue avec celle qu’il a volée, et de recommencer. Il devra peut-être essayer un nombre astronomique de possibilités, mais les logiciels de craquage modernes peuvent en tester plusieurs millions par secondes, en testant d’abord les mots de passe les plus courants – dont on trouve des dizaines de millions dans les boutiques clandestines du web profond – et en utilisant des dictionnaires comme nous l’avons mentionné.  

Votre défense ? Un mot de passe long, le plus long possible, avec le moins possible de mots reconnaissables dedans : c’est pourquoi la phrase de passe reste la meilleure option (à moins d’opter pour le coffre-fort, si vous faites suffisamment confiance à la société qui vous le propose).

Yannick Cras
Le nombre imaginaire