Générateur de mot de passe complexe et configurable

Générateur de mot de passe complexe et définissable en java

 

Le langage java n’est plus à présenter.
Ici je vous propose modestement quelques lignes afin de créer un générateur de mot de passe (password).

 

import java.security.SecureRandom;
import java.util.Scanner;

public class PasswordGenerator {

private static final String UPPER = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
private static final String LOWER = "abcdefghijklmnopqrstuvwxyz";
private static final String DIGITS = "0123456789";
private static final String PUNCTUATION = "!@#$%&*()_+-=[]|,./?><";

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
SecureRandom random = new SecureRandom();

System.out.println("Entrez la longueur du mot de passe:");
int length = scanner.nextInt();

System.out.println("Inclure des caractères majuscules? (o/n)");
boolean includeUpper = scanner.next().equalsIgnoreCase("o");

System.out.println("Inclure des caractères minuscules? (o/n)");
boolean includeLower = scanner.next().equalsIgnoreCase("o");

System.out.println("Inclure des chiffres? (o/n)");
boolean includeDigits = scanner.next().equalsIgnoreCase("o");

System.out.println("Inclure des caractères de ponctuation? (o/n)");
boolean includePunctuation = scanner.next().equalsIgnoreCase("o");

String characters = "";
if (includeUpper) {
characters += UPPER;
}
if (includeLower) {
characters += LOWER;
}
if (includeDigits) {
characters += DIGITS;
}
if (includePunctuation) {
characters += PUNCTUATION;
}

char[] password = new char[length];
for (int i = 0; i < length; i++) {
password[i] = characters.charAt(random.nextInt(characters.length()));
}

System.out

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.