3) Mots de passe

Hygiène du mot de passe :

Le but d'un mot de passe est de fournir un paramètre qui permettra de vous identifier, soit directement en comparant le mot de passe que vous donnez à celui enregistré, pour vous identifier, soit en le fournissant comme argument à un algorithme qui déchiffrera alors un contenu.
Les mot de passe ont donc 2 objectifs :

  1. Ne pas permettre à quelqu'un d'être deviné
  2. Rendre difficile les attaques incrémentales (qui testent tous les mots de passe)

Conseils :

  1. Les meilleurs mot de passe sont les mots de passe aléatoires, combinant chiffres et lettres, et encore mieux, caractères spéciaux.
  2. Ne pas noter le mot de passe sur un fichier texte librement accessible sur votre PC. Ne pas non plus le noter sur un bout de papier collé à l'écran. En effet, si vous êtes chez vous, le risque est plus faible, mais en entreprise, c'est une faute grave. Apprendre votre mot de passe par coeur est le meilleur moyen de ne pas avoir de problèmes de ce point de vue. Je reconnais que retenir Lj$5*C:é par coeur est plutôt complexe.. C'est pourquoi il est plus souvent utilisé un mot de passe auquel vous et vous seul comprenez la logique.
  3. Une bonne chose est d'en changer de temps en temps, tous les 2 mois par exemple. Changer régulièrement de pseudo permet de bloquer certaines attaques par brute force lentes. Le changement mensuel forcé de mot de passe est une mesure qui devrait être mise en place dans toutes les entreprises.

A éviter :

  1. La règle d'or est d'éviter absolument les mots de passe courts. Un mot de passe de site internet comprend au moins 6 caractères. Exemples : "Léo", "cine", "miam", voire "K£a6"
  2. Les dates d'anniversaire. c'est la première chose qu'un attaquant tente. Exemples : "11081972", "12novembre", "26 juin 1949", "04/03/87"
  3. Les noms et prénoms (voir surnoms) de gens que vous connaissez. Extrêmement courant, donc par conséquent extrêmement faible du point de vue sécurité. Exemples : "Rachelle", "Dupont", "cocotte", "mon amour"
  4. Les mots en rapport avec le pseudo, s'il y en a un (par exemple sur internet). Votre pseudo est quasiment tout le temps visible, or, il ne doit pas être un indice sur votre mot de passe. Le pire est de reprendre des termes, ou une partie du pseudo. Exemples avec le pseudo "Pilote de chasse" : "pilote", "mirage 2000", "avion"
  5. Evitez aussi les mots de passe directement tirés de la disposition du clavier. Exemples : "azerty", "azertyuiop", "aqwzsx"
  6. Les mots de passe composés simplement de chiffres sont, à longueur équivalente, beaucoup moins forts. Evitez aussi les suites logiques de nombres. Exemples : "0123", "123456789", "789456123", même "65679524" (8 caractères) qui est moins fort que "fü'7Kà" (6 caractères). Les numéros de téléphone sont donc par là prohibés, ils sont cassés en 16 minutes par une attaque de force brute (10 caractères), et en moins de 10 secondes si on connait l'indicatif.
  7. Pour les connaisseurs, les mots de passe utilisant des caractères issus de l'alphabet leet sont à mot identique plus performants, mais constituent aussi un danger, à cause de la présence de dictionnaires leet. Exemples : "l33t", "s4lut", "h3110"
  8. Enfin, et je sais à quel point c'est contraignant, il est préférable de ne pas prendre de mots du dictionnaire. En effet, cela rend votre mot de passe particulièrement vulnérable face à un type d'attaque en utilisant. Exemples : "bonbon" sera moins sûr que "vfdrt", "anticonstitutionnellement" sera à coup sûr moins performant que "kanupter"!

La sécurité d'un mot de passe est très difficilement calculable, c'est là l'objet d'algorithmes parfois complexes, se basant parfois sur des analyses de probabilités poussées.
Pour résumer, la sécurité d'un mot de passe est globalement régulée par, en premier lieu, sa longueur, en second lieu, les types de caractères utilisés (dans l'ordre de sécurité : nombres, lettres, majuscules/minuscules, caractères spéciaux), et en dernier lieu la logique que suit l'enchainement des caractères. Pour résumer, les meilleurs mots de passe ont 8 caractères, et sont issus d'une suite aléatoire.

Nous nous sommes lancés dans cette voie, et dans ce but d'évaluer votre mot de passe, nous vous proposons l'interface PHP suivante. Elle fait appel à un algorithme très fiable, créé par nos soin, qui a nécessité plusieurs heures de travail. Le mot de passe rentré est conservé quelques milliers de secondes, le temps d'un traitement et d'effectuer les calculs nécessaires à évaluer sa fiabilité. En d'autre termes, il n'est en aucun cas enregistré.

A aussi été rajouté un champ pseudo : vous n'êtes pas obligés de le renseigner mais si vous le faites, cela active une section supplémentaire de l'algorithme, qui vérifie le degré de ressemblance entre mot de passe et pseudo. Par exemple, le mot de passe "poumpoum2" sera reconnu comme plutôt bon, alors que si vous dîtes en plus que votre nom d'utilisateur est "poumpoum1", la ressemblance étant très forte, son taux de fiabilité chute. Renseignez donc un pseudo pour rendre l'analyse plus fiable.

Le taux de sécurité du mot de passe rentré est calculé, pour rendre un pourcentage de fiabilité. De plus, le temps estimé de cassage par un programme dit de force brute est affiché.

Suivez ce lien pour accéder à la page de l'algorithme de test de fiabilité des mots de passe.


Voyez aussi notre important document technique à propos du principe des grains de sel.


Estimation du temps de cassage :
Un ordinateur personnel calcule à peu près entre 1 et 10 millions de mots de passe par seconde. Un serveur équipé de puissants processeurs, ou quelques ordinateurs personnels travaillant ensemble, calculent quand à eux 100 millions de mots de passe par seconde. Mais une puissante 'grappe' d'ordinateur, ou un supercalculateur tel qu'en possède les gouvernements, en calculent 1 milliard par seconde ! Le projet Distributed.net a par exemple, grâce à un système de calcul distribué, accumulé une puissance de calcul de 75 Milliards de mot de passe par secondes !!
Dans notre exemple, nous avons pris pour référence 5 Millions de mots de passe calculés par seconde, ce qui correspond à la puissance fournie par un ordinateur neuf classique.