
Un CLI de génération de mots de passe prêt pour la production et cryptographiquement sécurisé, avec 17 modes de génération, une transparence de l'entropie et des options de personnalisation complètes.
Un générateur de mots de passe CLI prêt pour la production, cryptographiquement sécurisé, avec 17 modes de génération, transparence d'entropie et options de personnalisation complètes.



| Générateur | Commande | Description |
|---|---|---|
| Aléatoire | random, r | Mots de passe aléatoires cryptographiquement sécurisés |
| Passphrase | phrase, p | Passphrases basées sur des mots utilisant la liste EFF |
| Leetspeak | leet, l | Passphrases avec substitution de caractères (A→4, E→3, etc.) |
| Code PIN | pin | Codes PIN numériques de longueur configurable |
| Prononçable | pronounce, pr | Mots de passe faciles à prononcer basés sur des syllabes |
| UUID | uuid, u | UUID RFC 4122/9562 (v1, v4, v7) et court (Base58) |
| Base64 | base64, b64 | Secrets encodés en base64 sécurisés pour les URL |
| Secret JWT | jwt | Secrets à haute entropie pour la signature JWT (HS256/384/512) |
| Clé WiFi | wifi | Clés compatibles WPA2/WPA3 (8-63 caractères) |
| Clé de licence | license | Clés de licence logicielles (format AXB, ex. 5x5) |
| Codes de récupération | recovery | Codes de sauvegarde 2FA (numériques ou basés sur des mots) |
| Code/Secret OTP | otp | Codes TOTP/HOTP et secrets avec URI otpauth |
| Motif | pattern | Mots de passe basés sur des grilles visuelles |
| Phrase thématique | phrase (personnalisé) | Passphrases à partir de listes de mots thématiques (animaux, science-fiction, etc.) |
| Phonétique OTAN | phonetic, ph | Convertir du texte/mots de passe en alphabet OTAN (Alpha-Bravo) |
| Analyser | analyze, check | Analyser la robustesse d'un mot de passe existant |
| Historique | history | Afficher l'historique des générations de mots de passe (10 entrées par défaut) |
.bat et .sh dédiés avec menus interactifssecrets de Python pour le CSPRNG.env (recommandé) ou .vault.key hérité avec des permissions strictes 0600--easy-read et --easy-say# Clonez le dépôt
git clone https://github.com/krishnakanthb13/password_generator.git
cd password_generator
# Installez les dépendances (colorama, cryptography, pyperclip, etc.)
pip install -r requirements.txt
# Générer un mot de passe aléatoire de 20 caractères
python main.py random -l 20
# Générer une passphrase de 4 mots
python main.py phrase -w 4 --capitalize
# Générer une passphrase en leetspeak
python main.py leet -w 3 -s _
# Générer avec analyse d'entropie
python main.py --show-entropy random -l 16
# Lancer le mode interactif
python main.py --interactive
# Utiliser un profil prédéfini (Fort)
python main.py --preset strong --show-entropy
# Mot de passe basique de 16 caractères
python main.py random
# 24 caractères, lettres seulement
python main.py random -l 24 --no-symbols --no-digits
# Facile à lire (pas de 0/O, 1/l/I)
python main.py --easy-read random -l 20
# Avec exigences minimales
python main.py random -l 16 --min-upper 2 --min-digits 2 --min-symbols 1
# Mode équilibré (surtout des lettres, moins de symboles)
python main.py random -l 24 --balanced
# Passphrase standard de 4 mots
python main.py phrase -w 4
# Avec capitalisation et séparateur underscore
python main.py phrase -w 5 -s _ --capitalize
# Casse alternée (Haute entropie)
python main.py phrase -w 4 -s . --alternate
# Sortie : aPpLe.bAnAnA.cHeRrY.dAtE
# Tout en majuscules avec séparateur trait d'union (Haute entropie)
python main.py phrase -w 4 -s . --uppercase
# Sortie : APPLE-BANANA-CHERRY-DATE
# Version leetspeak (Substitution intelligente de 50 %)
python main.py leet -w 4 -s -
# Sortie : 4PPl3.8@N@[email protected]
# Passphrase thématique (en utilisant 'animals.txt')
python main.py phrase -w 4 --capitalize --wordlist data/wordlists/animals.txt
# Sortie : Tiger-Falcon-Shark-Wolf
# 5 segments de 5 caractères
python main.py license --segments 5 --segment-length 5
# 4 segments de 8 caractères
python main.py license --segments 4 --segment-length 8
# Secret JWT pour HS256
python main.py jwt --bits 256
# Clé API Base64
python main.py base64 -b 32 --url-safe
# Jeton UUID (v4 Aléatoire)
python main.py uuid --upper
# UUID v7 (temporel, triable)
python main.py uuid --ver 7
# Ou raccourci
python main.py uuid --v7
# UUID court (encodé Base58, ~22 caractères)
python main.py uuid --short
# Générer un UUID v7 avec le raccourci
python main.py u --v7
# Générer 10 UUID v4 courts
python main.py uuid --v4 --short -n 10
# Conversion phonétique OTAN
python main.py phonetic --text "PassForge"
# Sortie : Papa-Alpha-Sierra-Sierra-Foxtrot-Oscar-Romeo-Golf-Echo
# Analyser un mot de passe existant
python main.py analyze "p@ssword123"
# Enregistrer dans l'historique
python main.py --log random -l 16
# Voir les 10 dernières entrées d'historique (par défaut)
python main.py history