Accueil > Forum > > > > Sécurité des mots de passe
Sécurité des mots de passe
samedi 19 novembre 2011 à 00:51:13 |
Sécurité des mots de passe

Jiho64
|
Bonjour,
Je projette d'écrire un sujet sur la sécurité des sites web en général et je souhaiterai avoir quelques précisions sur les mots de passe, afin de ne pas écrire de bêtise, même si mes questions vont bien au-delà des points techniques que je souhaiterai aborder.
J'ai donc plusieurs questions :
base64_encode() est bien une fonction réversible ? (question rhétorique en fait, mais c'est pour être sûr que j'ai compris)
L'idée de faire une boucle avec cette fonction pour crypter un mot de passe est-elle risible ? même en faisant une boucle de 100 itérations ?
La fonction md5() n'est pas réversible car elle génère un hash ? (question rhétorique encore)
Peut-on affirmer que les CMS open sources PHP tels Wordpress ou Drupal ne stockent jamais de mot de passe en clair, mais des hashs ? crypt, md5 ou sha1 d'ailleurs ?
Plus compliqué...
Sachant que la fonction md5() génère toujours un hash de 32 caractères composé de lettre minuscules et de chiffres, peut-t-il y avoir un hash identique pour 2 mots de passe différents si $salt reste le même ? (la question marche avec sha1, 40 caractères, majuscules et chiffres)
Si la réponse à la question précédente est oui, et en se basant sur un mot de passe composé de minuscule, majuscule, chiffre, ponctuation, bref tout ce qu'on peut taper avec un clavier occidental, existe-t-il un nombre optimal de caractère pour un mot de passe ?
En effet, s'il existe plusieurs solutions pour un hash, il y en a obligatoirement une (ou deux) plus courte que les autres non ?
Merci d'éclairer ma lanterne..
|
|
samedi 19 novembre 2011 à 01:24:19 |
Re : Sécurité des mots de passe

NHenry
|
Bonjour,
1) base64_encode, comme son nom l'indique encode la donnée, donc pas de cryptage et réversible.
2) En général on préfère hasher un mdp plutôt que le crypter.
Mais dans le cas de coordonnées bancaire, le cryptage (si on stocke l'information) est une base, car un numéro de carte hashé n'a aucune utilité.
3) MD5 (tout comme SHA1) n'est pas réversible
4) Oui, ça s'appelle des collisions, pour un même hash, il existe plusieurs chaines sources possible.
5)Pour retrouver un mdp à partir d'un hash, il faut y aller par brute-force, mais utiliser un mot de passe compliqué ne garanti pas qu'un mdp plus simple ne puisse donner le même hash.
Actuellement, il y a des techniques pour retrouver une chaine source pour un hash MD5 (lourd, mais techniquement et temporellement possible), de fait, on lui préfère SHA1 maintenant.
---------------------------------------------------------------------
- Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien
- Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite :
)
- Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés.
---
Mon site
|
|
samedi 19 novembre 2011 à 13:06:51 |
Re : Sécurité des mots de passe

Jiho64
|
Merci pour cette réponse rapide !
|
|
samedi 19 novembre 2011 à 21:09:28 |
Re : Sécurité des mots de passe

TychoBrahe
|
Salut,
Ha, voici un sujet intéressant :)
Je vais commencer par me faire un peu de pub en recommandant un article que j'ai écrit à ce sujet : Chiffrement, hachage et compagnie : disambiguation. Ceci fait, je me permet de compléter la réponse donnée par NHenry.
Sachant que la fonction md5() génère toujours un hash de 32 caractères composé de lettre minuscules et de chiffres
Oui et non. Quand on calcule le md5 de quelque chose, on génère un hash stocké sur 128 bits. Afin de représenter ce hash on va utiliser une notation hexadécimale, et donc 32 chiffres allant de 0 à F (oui, en base 16 on va utiliser les premières letrtes de l'alphabet afin de compléter les chiffres manquants).
peut-t-il y avoir un hash identique pour 2 mots de passe différents si $salt reste le même ? (la question marche avec sha1, 40 caractères, majuscules et chiffres)
mais utiliser un mot de passe compliqué ne garanti pas qu'un mdp plus simple ne puisse donner le même hash.
Comem NHenry l'a dit, une colision est possible. Cependant je tient à relativiser cette possibilité. Dans le cadre du md5, le nombre de possibilités est de (plusieurs notations) :
2^128
16^32
340282366920938463463374607431768211456
Soit approximativement 3.4*10^38
Il faut savoir que le corps humain est composé d'environ 10^27 atomes et la terre 10^50. Alors avec de l'ordre de 10^38 possibilités il y a de la marge, énormément de marge. Si, pour md5, il est possible de créer des colisions (lorsqu'on connais la donnée de base il me semble), le risque d'avoir par erreur une telle colision est ridiculement faible, et a vrai dire totalement négligeable.
Si la réponse à la question précédente est oui, et en se basant sur un mot de passe composé de minuscule, majuscule, chiffre, ponctuation, bref tout ce qu'on peut taper avec un clavier occidental, existe-t-il un nombre optimal de caractère pour un mot de passe ?
Comme toujours, il faut maximiser la longueur ainsi que le jeu de caracctères utilisés et bien entendu éviter les mots du dictionnaire (même écrits en |_337). Certains recommandent d'utiliser de simples phrases qui, bien que le jeu de caractères soit restreint, ont l'avantage d'être très longues et faciles à retenir.
Au passage, regarde donc un peu du côté des rainbow tables ainsi que de John the Ripper.
|
|
lundi 21 novembre 2011 à 09:19:04 |
Re : Sécurité des mots de passe

syndrael
|
Pas mieux que mes collègues !!
S.
|
|
jeudi 24 novembre 2011 à 20:07:31 |
Re : Sécurité des mots de passe

Jiho64
|
Merci pour ces précisions TychoBrahe, ton blog est très intéressant, particulièrement ton article sur les vulnerability scanners.
|
|
Cette discussion est classée dans : fonction, mot, mots, question, passe
Répondre à ce message
Sujets en rapport avec ce message
mot de passe [ par huricane ]
Bonjour, J'ai un problème pour crypter de simple mot de passe dans une base de donnée. Je suis sous postgresql et je dispose d'une table utilisateur o
Question sécurité d'une base de données [ par MadM@tt ]
Bonjour à tous, voilà je développe un site en php a vec une base de données MySql. Seulement je me pose plusieurs questions sécurités surtout par rapp
LDAP : Authentification avec mot de passe crypté [ par Startrik ]
Bonjour, Voila je fais une application php qui permettra d'authentifier un utilisateur en se servant de son login et mot de passe qui sont dans une an
Fonction inverse à password() ??? [ par Eric25 ]
Bonjour,Je voudrais savoir s'il existe une fonction inverse à la fonction password. J'ai stocké des mots de passe dans ma base en les cryptant avec pa
la fonction mail() [ par refkaben ]
Bonjour à tous!J'ai une fonction mail qui sert à envoyé le mot de passe à un memebre en cas ou il l'a oublié, j'ai le code suivant:if($action="valider
probléme avec la fonction crypt [ par misterpoulet ]
Bonjour a tousVoila je suis en train de créer un site web qui comportera une interface admin.Donc j'ai voulu empécher n'importe qui de pouvoir y touch
les mots de passe [ par kishkaya ]
Il parait que certain mot de passe prennent en compte l'utilisation de caractere qui ne s'affichent pas (comme F1 ou Ctrl + quelquechose)j'aimerais co
Mots de passes temporaires [ par samraimi ]
Bonjour,Je souhaiterais sécuriser une partie de mon site par mot de passe. Mais je voudrais avoir à envoyer moi-même mot de passe (jusque-là pas de pr
Gestion des mots de passe des utilisateurs [ par Dexterage ]
Bonjour,Je travaille actuellement sur un petit projet perso, et je voudrais avoir quelques avis sur les gestions des mots de passe utilisateurs.Quand
Problème avec ouverture de page par mots de passe sur mon site fonctionne sur firefox mais pas sur IE [ par Filou54 ]
Espace Privé <tit
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|