Better hashid
This commit is contained in:
parent
1d1d8d2bba
commit
4012f7a192
|
@ -5,28 +5,34 @@ robots: noindex
|
|||
|
||||
# hashid
|
||||
|
||||
Le nom du projet est: `hashid`, en minuscule (c'est important pour le rendu).
|
||||
Le nom du projet est: `hashid`, le protocole de rendu est
|
||||
[là](https://mdk.fr/pages/obiree2uaza2sh-rendu.html).
|
||||
|
||||
L'exercice consiste à écrire un outil permettant de reconnaître un hash.
|
||||
L'exercice consiste à écrire un outil, en Python, permettant de
|
||||
reconnaître un algorithme de hash, lorsqu'on lui donne un hash.
|
||||
|
||||
L'outil devra fonctionner *sans* serveur HTTP, le JavaScript est cependant autorisé : votre programme devra donc pouvoir être lancé en ligne de commande avec node.js. Tous les langages sont autorisés.
|
||||
|
||||
## Exemple
|
||||
|
||||
:::shell
|
||||
$ ./hashid 68b329da9893e34099c7d8ad5cb9c940
|
||||
$ ./hashid.py 68b329da9893e34099c7d8ad5cb9c940
|
||||
md5
|
||||
$ ./hashid adc83b19e793491b1c6ea0fd8b46cd9f32e592fc
|
||||
$ ./hashid.py adc83b19e793491b1c6ea0fd8b46cd9f32e592fc
|
||||
sha1
|
||||
|
||||
Sur 12 points : Être capable de distinguer les hash suivants: CRC16, Adler-32, md5, sha1, du bcrypt avec son salt tel que renvoyé en PHP par `password_hash("foo", PASSWORD_BCRYPT)`, et du whirlpool.
|
||||
Sur 12 points : Être capable de distinguer 6 hash différents.
|
||||
|
||||
Sur 6 points: Reconnaître correctement au moins 15 hash différents.
|
||||
Sur 6 points : Reconnaître correctement au moins 12 hash différents.
|
||||
|
||||
Sur 1 point: Une option `--help` avec un "Usage" lisible.
|
||||
Sur 1 point : Une option `--help` avec un "Usage" lisible (utilisez argparse).
|
||||
|
||||
Sur 1 point: Proposer une option pour pré-écrire à l'utilisateur la commande John the Ripper (disons `--john`) ou hashcat (disons `--hashcat`) pour tenter de casser le mot de passe.
|
||||
Sur 1 point : Proposer une option pour pré-écrire à l'utilisateur la
|
||||
commande John the Ripper (disons `--john`) ou hashcat (disons
|
||||
`--hashcat`) pour tenter de casser le mot de passe.
|
||||
|
||||
Sur 1 point: Extraire le premier paragraphe de Wikipedia à propos du hash trouvé pour en afficher une description à l'utilisateur, si c'est fait au runtime c'est mieux si c'est optionnel, disons `--wikipedia`.
|
||||
Sur 1 point : Extraire le premier paragraphe de Wikipedia à propos du
|
||||
hash trouvé pour en afficher une description à l'utilisateur, si c'est
|
||||
fait au runtime c'est mieux si c'est optionnel, disons `--wikipedia`.
|
||||
|
||||
Sur 1 point: Une option pour lister tous les hash connus par l'outil, disons `--list`.
|
||||
Sur 1 point : Une option pour lister tous les hash connus par l'outil,
|
||||
disons `--list`.
|
||||
|
|
Loading…
Reference in New Issue
Block a user