web-dev-qa-db-fra.com

Un mot de passe 80 bits est-il suffisant à toutes fins pratiques?

Je sais que demander combien de bits d'entropie composent un mot de passe fort, c'est comme demander la longueur d'un morceau de chaîne. Mais en supposant que le NSA n'est pas à vous, et qu'il ne vaut guère la peine de passer une décennie à forcer votre courrier électronique, alors 80 bits suffiront-ils?

29
Peter

Réponse courte: le plus c'est le mieux, mais pour l'instant (2014) c'est probablement suffisant.

Il existe une distinction importante entre le piratage de votre compte Gmail et le craquage d'un mot de passe hors ligne. Si vous souhaitez pirater un compte Gmail en devinant le mot de passe, vous ne pouvez faire que quelques essais par seconde au maximum. Google bloquera des milliers de tentatives de connexion à un seul compte dans un délai trop court.

Cependant, si nous parlons, par exemple, d'une connexion Windows, elle est stockée localement. Windows a une base de données avec le mot de passe haché quelque part sur le disque dur (en termes simples: le mot de passe crypté). Cela signifie qu'une personne ayant accès au disque dur peut extraire le mot de passe haché et commencer à craquer aussi rapidement que le peut son ordinateur, ce qui peut représenter plusieurs millions de tentatives par seconde.

Ou lorsqu'une base de données est piratée (voir: LinkedIn), un mot de passe haché est souvent obtenu et les gens peuvent commencer à craquer localement comme avec une connexion Windows. C'est là que la force des mots de passe devient vraiment importante.

Edit: Comme emory et JS. commenté, vous devez supposer que tous les services sont piratés à un moment donné, donc alors que en ce moment vous ne pouvez pas être capable de forcer brutalement votre mot de passe Gmail très rapidement, cela pourrait changer n'importe quel jour. Et toutes les entreprises n'admettent pas (ou ne savent pas) qu'elles ont été piratées. Je pense toujours que c'est correct d'utiliser des mots de passe raisonnables (si les pirates ne peuvent pas le casser en 5 minutes, ils vont simplement passer à l'un des 90 millions de mots de passe qu'ils ont obtenus), mais c'est un point valable qu'aucun service n'est parfaitement sécurisé .


À propos de la force du mot de passe

(Jargon: vous pouvez considérer "l'entropie" comme étant de "vraies données aléatoires".)

Alors 80 bits suffisent-ils? Considérez le mot de passe de 80 bits suivant: 1111111111. Ne semble pas très fort ... Que diriez-vous de celui-ci, qui est de 160 bits: "batterie de cheval" (20 octets fois 8). Mieux, mais c'est en fait 3 mots au lieu de 160 bits. S'il y a 10'000 possibilités dans la langue anglaise, vous pouvez faire 1 billion de combinaisons avec 3 mots, ce qui est beaucoup, mais loin des possibilités 1 quindecillion que vous auriez avec 160 bits d'entropie. Enfin, que diriez-vous de 0MxLrTm8Z1? Cela est généré par un générateur de nombres aléatoires sécurisé. C'est 10 caractères et prend 80 bits de stockage. Mais combien d'entropie contient-elle vraiment? C'est seulement alphanumérique (a-z A-Z 0-9), ou 62 possibilités, ce qui ne fait que 8,39 * 10 ^ 17 possibilités, ou 59,5 bits d'entropie.

Donc, avoir un mot de passe à 10 caractères ne signifie pas que vous avez 80 bits d'entropie à traverser avant de trouver l'original. Pour stocker 80 bits en caractères imprimables (ceux que vous pouvez taper sur un clavier), ce qui inclut des caractères spéciaux comme *&$@, vous aurez besoin d'un mot de passe de 13 caractères.

Réflexion prospective

Un autre problème est que les ordinateurs deviennent toujours plus rapides. 80 bits est sécurisé pour l'instant, mais si vous cryptez un fichier en 2014 avec un mot de passe désormais sûr, il pourrait peut-être être craqué en 2017 après 36 mois * et les ordinateurs sont devenus environ 4 fois plus rapides.

Alors qu'en 1993, une passe de 6 caractères Word (tirée directement d'un dictionnaire) pouvait être une sécurité raisonnable, en 2014, nous débattons de la question de savoir si 10 caractères aléatoires suffisent.

* Les lecteurs attentifs remarqueront que c'est deux fois la loi de Moore (les lecteurs encore plus attentifs noteront que la loi de Moore concernait les transistors sur une puce, pas la vitesse d'un ordinateur).

Utilisation du mot de passe

Et enfin, nous devons réfléchir à des questions pratiques: comment gérez-vous vos mots de passe? Si je vous dis que 80 bits suffisent probablement (ce que je viens de faire), allez-vous mémoriser un mot de passe aléatoire de 13 caractères avec beaucoup de caractères étranges, puis l'utiliser pour chaque compte que vous avez?

La question de savoir si un gestionnaire de mots de passe est une bonne idée est un autre sujet, mais l'utilisation de mots de passe différents est préférable à la mémorisation d'un mot de passe maître fort. Il serait préférable d'utiliser un mot de passe fort et unique partout, mais ce n'est tout simplement pas possible sans l'écrire ou utiliser un gestionnaire de mots de passe, ce qui présente d'autres risques. Je laisse ces considérations à une question spécifique.

43
Luc

Le point faible de toute stratégie de sécurité est toujours la prévisibilité humaine. Tout mot de passe intelligent auquel vous pouvez penser et dont vous vous souviendrez sera remarquablement similaire à beaucoup d'autres mots de passe intelligents que les gens utilisent. Nous ne sommes tout simplement pas aussi uniques que nous le croyons. Les gens pensent et mémorisent essentiellement les choses de manière bien comprise et prévisible.

Quelques principes de base que j'utilise en ce qui concerne les mots de passe.

  1. Utilisez un gestionnaire de mots de passe. Nos cerveaux ne sont tout simplement pas équipés pour stocker plusieurs mots de passe sécurisés. Si vous pouvez mémoriser vos mots de passe, alors ils sont trop simples.
  2. N'utilisez jamais le même mot de passe pour plus d'un service. C'est extrêmement important, mais presque toujours ignoré. Ce principe est facile avec un gestionnaire de mots de passe et pratiquement impossible sans.
  3. Votre identité n'est aussi sûre que votre mot de passe le plus faible. Aussi insignifiant ou banal que vous puissiez croire que votre e-mail ou votre compte de réseau social soit, il doit toujours être sécurisé, car il peut souvent être utilisé pour accéder à vos services plus confidentiels.
  4. Si vous pouvez l'éviter, n'utilisez pas d'indices de mot de passe. Si un service l'exige, utilisez quelque chose d'aléatoire et non personnellement identifiable. Cela dit, ne le faites que si vous avez mis en place une stratégie de gestion des mots de passe robuste. Vous ne devriez jamais avoir à utiliser la récupération de mot de passe, car vous ne devriez jamais perdre vos mots de passe.
  5. Utilisez la longueur de mot de passe maximale possible. Encore une fois, cela nécessite l'utilisation d'un gestionnaire de mots de passe. La plupart des services prennent désormais en charge au moins 16 caractères. Utilisez-les tous.
  6. Verrouillez et cryptez tous vos appareils mobiles. Vos informations personnelles (aussi banales soient-elles) sont précieuses pour les cybercriminels.
9
user1751825

Il a été déclaré (pour une source faisant autorité, voir Mots de passe que vous pouvez mémoriser - mais que même le NSA Can't Guess on The Intercept ) que le NSA est capable de (au moins) "un billion de suppositions par seconde" dans le contexte des phrases de passe PGP. Les phrases de passe PGP sont délibérément coûteuses à vérifier, et elles peuvent ont amélioré leurs capacités depuis, mais nous pouvons toujours l'utiliser comme une sorte de référence, car il est peu probable qu'il y ait plus de quelques ordres de grandeur avec un système raisonnablement conçu.

Un billion de suppositions par seconde correspond à 240 devine par seconde.

Un mot de passe avec un vrai 80 bits d'entropie serait ainsi sécurisé jusqu'à 2(80-40) = 240 secondes.

240 secondes est d'environ 35 000 ans.

En moyenne, nous nous attendrions à ce qu'un adversaire devine correctement le mot de passe dans la moitié du temps. C'est encore plus de 15 000 ans d'essais.

Même en comptant dans les progrès de la technologie informatique, et en supposant que vous n'avez besoin que de votre mot de passe pour être sécurisé pendant plusieurs milliers d'années, nous pouvons donc raisonnablement déclarer que un mot de passe d'entropie de 80 bits devrait être suffisant contre même une attaque hors ligne ciblée par un adversaire hautement capable pendant des centaines à des milliers d'années.

Il y a de fortes chances qu'ils se lassent d'attendre bien avant longtemps, et essayez plutôt une autre méthode, beaucoup plus susceptible de réussir .

Gardez également à l'esprit la différence entre la véritable entropie et la quantité de stockage nécessaire pour enregistrer les octets de mot de passe. Par exemple, mon gestionnaire de mots de passe (KeePassX sous Linux) insiste sur le fait que le nombre de "bits" du mot de passe est égal au nombre de caractères dans le mot de passe multiplié par huit. Cela conduit à des absurdités telles que quatre chiffres PIN pour une carte bancaire revendiquée comme ayant 32 bits de force (4,3 milliards de valeurs possibles) au lieu de la valeur beaucoup plus précise 13-14 bits de force (car 13 bits permettent d'encoder 8192 valeurs possibles, et vous avez besoin d'environ 13,3 bits pour encoder 10000 valeurs).

Une façon d'obtenir 80 bits de véritable entropie consiste à générer un mot de passe de 6 ou 7 (à 12,9 bits chacun, soit 77 et 90 bits respectivement) en utilisant la méthode Diceware . En utilisant l'un des les listes de mots EFF (celui qui est unique dans les trois premiers caractères de chaque mot), cela peut être représenté en 18 ou 21 caractères; cela se compare assez favorablement à un mot de passe alphanumérique à casse vraiment aléatoire (minuscule a-z, chiffres 0-9), qui aurait besoin de 17 caractères pour coder 80 bits d'entropie (car log2 2617 ≈ 80 ou 2617 ≈ 280), et peut être plus facile à retenir car il serait possible de mémoriser les mots et de taper uniquement les trois premières lettres de chacun.

8
a CVn

Oui, en particulier à la lumière des "objectifs pratiques" pour le type d'attaquant non NSA.

Pour les mots de passe en ligne, la vitesse à laquelle les attaques sur le mot de passe peuvent être effectuées est limitée. En outre, il existe généralement des exploits de sécurité (le service client étant le plus grand exploit de sécurité par conception) qui sont souvent beaucoup plus vulnérables que votre mot de passe. Pourquoi gaspiller des centaines de milliers de dollars en cassant votre mot de passe 80 bits si vous pouvez obtenir CS pour vous accorder l'accès avec quelques minutes de ingénierie sociale .
Oui, quelqu'un qui vole la base de données de mots de passe sur un serveur pourrait inverser votre mot de passe avec force brute, mais cela ne se produira probablement pas avec 80 bits , ils préfèrent faire les 10 millions d'autres utilisateurs qui ont des mots de passe 20 bits et s'arrêter là. De plus, vous n'avez rien à perdre car c'est un mot de passe aléatoire qui n'est pas utilisé ailleurs. Cela ne vaut rien.
Les intrus ont déjà un accès root au serveur à ce stade, donc quoi qu'ils puissent faire sur le système compromis, ils le feront quand même. Au-delà de cela, ils ne peuvent rien faire avec votre mot de passe.

Pour le mot de passe Windows, 80 bits sont également de loin suffisants. Bien sûr, quelqu'un pourrait lancer une attaque par force brute, mais aussi boiteux que NTLM, même la célèbre machine à 25 GPU à 348 milliards de NTLM par seconde prendrait 110 000 ans pour une recherche exhaustive.
D'autre part, vous pouvez simplement brancher le disque dur sur un autre ordinateur et lire le système de fichiers de toute façon, sans connaître le mot de passe. Cela prend environ 5 secondes et vous n'avez même pas besoin d'ouvrir votre boîtier si vous avez un adaptateur SATA-USB. Que fera probablement un attaquant?

En revanche, pour le chiffrement complet du disque, la clé (ou le mot de passe) n'est normalement pas stocké, mais un schéma de dérivation de clé compliqué est utilisé pour dériver la clé de déchiffrement pour la table de clés de déchiffrement. Cela limite la vitesse à laquelle une attaque peut se produire. Truecrypt utilisait autrefois 2 000 itérations, Veracrypt utilise actuellement environ 320 000 itérations. Il est raisonnable de supposer que tous les systèmes de chiffrement de disque complet utilisent un certain nombre d'itérations (bien que certains en utilisent plus, d'autres moins - je suppose que Bitlocker est plutôt à l'extrémité inférieure).
Le fait que vous ayez besoin de lire et de décrypter au moins 2 secteurs (après avoir effectué quelques milliers d'itérations) afin de vérifier si un mot de passe correspond à des retards massifs d'attaques parallèles supplémentaires. Un mot de passe aléatoire de 80 bits est donc un obstacle tout à fait non négligeable pour l'attaquant moyen non NSA.

Un mot de passe 256 bits vous donnerait-il plus de sécurité? Bien sûr, mais vous devez également appuyer trois fois plus de touches à chaque fois. C'est là que la partie "pratique" entre dans l'équation sous l'autre angle. Peu importe qu'il soit pratique pour quelqu'un de vous attaquer, mais aussi que le système reste pratique à utiliser tous les jours.

5
Damon

Je pense que oui, mais il est important de comprendre la véritable entropie quand il s'agit de la façon dont les ordinateurs utilisent la force brute.

Un mot dans le dictionnaire dans n'importe quelle langue peut être considéré comme un caractère, semblable à un caractère chinois. Et il y a des mots communs et des mots rares. Les mots rares peuvent être considérés comme ayant un très grand alphabet, les mots communs ayant un alphabet beaucoup plus petit, mais toujours beaucoup plus grand que l'ensemble anglais.

Cela étant dit, les calculateurs d'entropie de mot de passe ne prennent pas cela en compte, ils traitent un mot de passe à chaîne comme s'il s'agissait d'un mot de passe aléatoire, ce qui n'est pas le cas.

Un mot de passe à chaîne: "el1zabeth267" Un ordinateur devinera cela en gros deux caractères, pas douze.

4
Andrew Hoffman