# upassword

~~~
USAGE:
    upassword -p [-f aeskeyfile] [clear [salts...]]
    upassword -p [-f aeskeyfile] -j JKEY codetu [salts...]
    upassword -p -f aeskeyfile -k crypted [salts...]
    upassword -f aeskeyfile -G [password [salt]]
    upassword -f aeskeyfile -s
    upassword -f aeskeyfile -e clear
    upassword -f aeskeyfile -d crypted
    upassword --batch

OPTIONS
    -p, --hash-password
        Crypter un mot de passe (option par défaut). Si le mot de passe en clair
        et/ou le salt ne sont pas spécifiés, ils sont choisis au hasard.
    -j, --clear-is-codetu JKEY
        Indiquer que l'argument clear est un numéro d'étudiant, à partir duquel
        il faut générer le mot de passe. Cette option n'est valide qu'avec -p
    -k, --clear-is-crypted
        Indiquer que l'argument clear doit d'abord être décrypté avec la clé AES
        spécifiée avant utilisation. Cette option n'est valide qu'avec -p
    -G, --aes-genkey
        Générer une clé AES pour utilisation avec les options -s, -e, -d
    -s, --aes-showkey
        Afficher encodée en base64 la clé AES contenue dans le fichier spécifié
    -e, --aes-encrypt
        Crypter un mot de passe avec la clé AES spécifiée
    -d, --aes-decrypt
        Décrypter un mot de passe avec la clé AES spécifiée
    -f, --aes-keyfile
        Spécifier le fichier contenant la clé AES. Cette option est obligatoire
        avec les options -G, -s, -e et -d
    --shell
        Afficher les valeurs pour évaluation par le shell

MODE BATCH
Utiliser l'option --batch active le mode batch. Dans ce mode, chaque ligne est
un ensemble d'arguments, comme si on avait lancé le script à plusieurs reprises.
L'analyseur est limité: le découpage des arguments est fait sur les espaces.
Les lignes commençant par # sont ignorées.
Si une ligne commence par --batch-after, alors cette ligne est affichée après
chaque résultat. Ceci permet de générer un script qui peut être évalué.

Voici un exemple:
    upassword --batch <<EOF
    --batch-after process_password1 args
    --shell
    --shell fixed-password1
    --batch-after process_password2 args
    --shell fixed-password2
    EOF
Le résultat serait quelque chose comme:
    clear='<random-password>'
    ... # toutes les valeurs lm, ntlm, crypt, sha, xsha, ssha, md5, smd5
    process_password1 args
    clear='fixed-password1'
    ... # toutes les valeurs lm, ntlm, crypt, sha, xsha, ssha, md5, smd5
    process_password1 args
    clear='fixed-password2'
    ... # toutes les valeurs lm, ntlm, crypt, sha, xsha, ssha, md5, smd5
    process_password2 args
~~~

-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary