Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

______________ Projet: 

Coder un générateur de mots de passe développé en Java et exécuté directement depuis le terminal. L’utilisateur saisit la longueur souhaitée du mot de passe, puis le programme génère automatiquement un mot de passe composé de différents types de caractères : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux.



______________ Arborescence du projet: 

password_generator/
|___ PasswordGen.java
|___ README.txt



______________ Concepts de sécurité: 

	1 - Longueur minimale de 8 caractères: la longueur augmente l'espace de recherche nécessaire pour deviner le mot de passe;
	
	2 - Majuscules, minuscules, chiffres et caractères spéciaux: diversification/complexification des caractères, qui augmente l'espace de recherche; 
	
	3 - Génération aléatoire des caractères: éviter de choisir des mots de passe facilement prévisibles;
	
	4 - Mélange de l'ordre des caractères: concept de randomisation, qui évite d'avoir une structure prévisible.
		
	

______________ Bibliothèques et classes utilisées: 


____ Deux classes de la bibliothèque standard Java ____ 

	- java.util.Random : permet de générer des caractères de manière aléatoire;

	- java.util.Scanner : permet de récupérer la longueur du mot de passe saisie par l'utilisateur au clavier.

____ Classe Java ____ 

	- StringBuilder : permet de construire et de modifier efficacement une chaîne de caractères.



______________ Fonctionnement du programme: 

1) Saisie de la longueur:
	- l'utilisateur indique la longueur souhaitée du mot de passe;
	- si elle est inférieure à 8 caractères, le programme affiche un message d'erreur.
	
2) Définition des caractères à utiliser:   
					   . majuscules : ABCDEFGHIJKLMNOPQRSTUVWXYZ 
					   . minuscules : abcdefghijklmnopqrstuvwxyz 
					   . caractères spéciaux:  !@#%^%&*()_ 
					   . chiffres : 0123456789 
	
3) Génération du mot de passe: 
	- la méthode password_generator() génère le mot de passe; 
	- elle ajoute génère d’abord 2 caractères pour chaque catégorie, puis complète aléatoirement le mot de passe jusqu'à atteindre la longueur demandée.
	
4) Génération aléatoire des caractères: 
	- la méthode generateCharacter() choisit aléatoirement un caractère dans une catégorie donnée grâce à Random.
	
5) Mélange du mot de passe:
	- le programme crée un StringBuilder contenant le mot de passe;
	- une boucle échange certains caractères afin de modifier leur ordre.

About

Générateur de mots de passe en Java exécuté via le terminal en utilisant les classes Scanner pour récupérer la saisie utilisateur, Random pour sélectionner aléatoirement les caractères et StringBuilder pour construire et modifier le mot de passe.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages