Télécharger - Site personnel de Serge Moutou
Télécharger - Site personnel de Serge Moutou
Télécharger - Site personnel de Serge Moutou
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Fichier <strong>de</strong> mots <strong>de</strong> passe : structure utilité<br />
1°) la fonction <strong>de</strong> cryptage UNIX crypt (man crypt)<br />
Chapitre 9 : L'authentification<br />
La fonction crypt est celle utilisée pour le cryptage <strong>de</strong>s mots-<strong>de</strong>-passe. Elle est basée sur l'algorithme DES (Data<br />
Encryption Standard)avec <strong>de</strong>s variantes prévues entre autres choses pour éviter l'implémentation matérielle d'un<br />
casseur <strong>de</strong> co<strong>de</strong>.<br />
L'argument clé est le mot-<strong>de</strong>-passe saisi par l'utilisateur, la chaîne encodée est constituée par <strong>de</strong>s 0.<br />
salt est une chaîne <strong>de</strong> <strong>de</strong>ux caractères pris dans l'ensemble [a-zA-Z0-9./].Cette chaîne est utilisée pour introduire une<br />
perturbation (parmi 4096) dans l'algorithme.<br />
En utilisant les 7 bits <strong>de</strong> poids faibles <strong>de</strong> chaque caractère <strong>de</strong> la clé,une clé <strong>de</strong> 56-bits est obtenue, qui est alors<br />
utilisée pour crypter <strong>de</strong> manière répétée une chaîne <strong>de</strong> caractères constante (souvent une chaîne <strong>de</strong> zéros).<br />
La valeur renvoyée pointe sur le mot <strong>de</strong> passe crypté, une chaîne <strong>de</strong> 13 caractères ASCII imprimables, les <strong>de</strong>ux<br />
premiers caractères représentant l'argument salt lui-même. Cette valeur renvoyée pointe sur <strong>de</strong>s données statiques<br />
dont le contenu est écrasé à chaque appel.<br />
Attention : L'espace <strong>de</strong>s clés consistent en 2^56, soit 7,2.10^16 valeurs possibles.Une recherche exhaustive est<br />
possible en utilisant <strong>de</strong>s ordinateurs massivement parallèles.Certains logiciels sont disponibles, comme crack(1), qui<br />
exploreront la portion <strong>de</strong> l'espace <strong>de</strong>s clés contenant les mots <strong>de</strong> passe habituellement utilisés par les humains. Ainsi,<br />
le choix d'un mot <strong>de</strong> passe doit au minimum éviter les noms propres ou communs. On recomman<strong>de</strong> fortement<br />
l'utilisation d'un programme comme passwd(1) pour vérifier la fiabilité <strong>de</strong>s mots <strong>de</strong> passe dès la saisie.<br />
L'algorithme DES lui-même a quelques inconvénients qui ren<strong>de</strong>nt l'utilisation <strong>de</strong> crypt(3) peu recommandable pour<br />
autre chose que le cryptage <strong>de</strong> mots <strong>de</strong> passe. Si vous comptez développer un projet cryptographique en utilisant<br />
crypt(3), abandonnez cette idée : achetez un bon bouquin sur la cryptographie, et utilisez une bibliothèque DES<br />
toute faite comme il en existe tant.<br />
Linux 19 Juillet 1997 (Christophe Blaess, 1997.)<br />
2°) Ficher <strong>de</strong>s mots <strong>de</strong> passe<br />
Le fichier standard <strong>de</strong>s mots <strong>de</strong> passe est : /etc/passwd<br />
Le format <strong>de</strong> ce fichier est :<br />
Nom:Mot <strong>de</strong> passe:Numéro utilisateur:Numéro <strong>de</strong> groupe:Champ spécial:répertoire <strong>de</strong> base:Programme <strong>de</strong> démarrage<br />
Par exemple : username:Npge08pfz4wuk:503:100:Full Name:/home/username:/bin/sh<br />
Np est le "salt" et le reste l'encodage. Il existe 4096 façons différentes <strong>de</strong> co<strong>de</strong>r un mot <strong>de</strong> passe.Par exemple ce<br />
même mot <strong>de</strong> passe, ici le très mauvais "password" peut être aussi codé : kbeMVnZM0oL7I. Pourquoi 4096 ? La<br />
chaîne qui est donnée ici est codée en base 64=2^6 et les <strong>de</strong>ux premiers qui font 12 bits peuvent être n'importe quoi.<br />
Et n'importe quoi sur 12 bits donne 4096.<br />
102 /163