Tech●●●●●Difficulty 2 of 5

Pourquoi ton site préféré ne connaît-il pas ton mot de passe ?

Un site bien conçu vérifie ton mot de passe sans jamais le connaître. Dans les années 1970, Unix laissait même tout le monde lire le fichier des mots de passe brouillés.

▶ Lancer l'histoire

Un site bien conçu ne stocke jamais ton mot de passe. Il en stocke une empreinte, un « hash » : une suite de caractères de longueur fixe, obtenue en faisant passer ton mot de passe dans une fonction mathématique à sens unique. Cette fonction se calcule vite dans un sens, mais il est pratiquement impossible de revenir en arrière : personne, pas même le site, ne peut retrouver ton mot de passe à partir de l'empreinte. Quand tu te connectes, le site fait passer ce que tu viens de taper dans la même fonction et vérifie que les deux empreintes correspondent.

Ces empreintes sont aussi très sensibles : change une seule lettre et le résultat n'a plus rien à voir. Un mot de passe presque juste ne révèle donc rien.

Schéma : plusieurs petits textes, dont certains presque identiques, passent dans une fonction de hachage et ressortent en suites de caractères complètement différentes.
Une fonction de hachage à l'œuvre : des entrées qui ne diffèrent que d'un mot ou d'une lettre donnent des empreintes sans aucun rapport, impossibles à retransformer en texte.Photo: User:Jorge Stolfi based on Image:Hash_function.svg by Helix84 · Public domain

Deux astuces rendent les empreintes volées bien moins utiles. La première, c'est le sel : une valeur aléatoire créée pour chaque compte et mélangée au mot de passe avant le hachage. Sans sel, tous ceux qui ont choisi le même mot de passe auraient la même empreinte, et les pirates pourraient les retrouver dans d'immenses tables précalculées. La seconde, c'est la lenteur : le hachage des mots de passe est volontairement lent, si bien qu'un pirate qui vole une base de données ne peut tester qu'un nombre limité de mots de passe par seconde.

Ces idées sont plus vieilles que le Web. Dans les années 1970, les ordinateurs Unix rangeaient les empreintes salées des mots de passe dans un fichier que tous les utilisateurs pouvaient lire, en comptant sur la fonction à sens unique pour faire son travail. En 1978, Robert Morris invente crypt, la première fonction de hachage de mots de passe volontairement lente. Des ordinateurs plus rapides ont fini par la rendre cassable : voilà pourquoi les systèmes actuels deviennent toujours plus lents, exprès.

Quiz

0/3

  1. 1.Que stocke réellement un site dans sa base de données quand tu crées un mot de passe ?
  2. 2.À quoi sert avant tout le « sel » ajouté à un mot de passe avant le hachage ?
  3. 3.Pourquoi les systèmes de sécurité utilisent-ils exprès des algorithmes de hachage lents pour les mots de passe ?

Récap

Les sites stockent un sel et une empreinte lente, jamais ton mot de passe : se connecter, c'est faire correspondre des empreintes.

Le fait surprenant · Le hachage des mots de passe est volontairement lent, pour freiner les essais des pirates.

Sources (4)

Pas de source, pas d'affirmation. Chacun des 16 faits de cette leçon renvoie à au moins une de ces sources.

  1. [1]Key derivation function · Wikipedia
  2. [3]Salt (cryptography) · Wikipedia
  3. [4]Cryptographic hash function · Wikipedia
  4. [5]Rainbow table · Wikipedia
D'autres leçons · 💻 Tech (3) Toutes les leçons « Tech » →

Une lumière de plus sur ta carte.

Reçois une leçon comme celle-ci chaque jour, sur les sujets que tu aimes. Gratuit, en deux ou cinq minutes.

Récupère la carte à partager de cette leçon ↗