Générateur aléatoire de mot sde passe
cengokill
Messages postés
262
Date d'inscription
Statut
Membre
Dernière intervention
-
VanDog Messages postés 63 Date d'inscription Statut Membre Dernière intervention -
VanDog Messages postés 63 Date d'inscription Statut Membre Dernière intervention -
Bonjour, Je voudrais créer un tout petit programme générant un mot de passe aléatoirement, pour plus de sécurité dans mes mots de passe. Pour celà, j'utilise Microsoft Visual Basic 2010 Express. L'utilisateur doit entrer un nombre de caractères voulus, puis il clique sur le bouton "générer". J'aimerais avoir de l'aide concernant le codage du logiciel, pour générer aléatoirement une suite de caractères.
Merci d'avance ;-)
/Cengokill
Merci d'avance ;-)
/Cengokill
A voir également:
- Générateur aléatoire de mot sde passe
- Trousseau mot de passe iphone - Guide
- Generateur mot de passe - Télécharger - Sécurité
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
1 réponse
Je vais tenter de te dégager ton programme comme je le ferai et dans les grandes lignes d'accord ?
Tu as une phase de saisie qui retient combien de char tu veux. Appelons cette variable
Tu as besoin d'un
Tu auras une boucle
Pour ceci, je te conseille l'utilisation du code ASCII (
En sachant que dans le code ASCII, les lettres MAJUSCULES précèdent les lettres minuscules et sont consécutives. Le char 'A' a pour valeur 65 ce me semble. Ce qui fait que si tu fais
Dès lors, tu peux ajouter une lettre facilement par transtypage:
Je passe par des variables pour pas de donner de fausses valeurs entières (à la 65 donnée précédemment... :p ).
Après, plutôt qu'un simple rand() tu peux affiner tes critères, une majuscule une lettre sur deux, rajouter les chiffres pour un mot de passe alphanumérique... à toi de t'amuser avec la table ASCII :)
Edit suppression de la signature contraire à la charte
Tu as une phase de saisie qui retient combien de char tu veux. Appelons cette variable
nChar.
Tu as besoin d'un
std::string res, le résultat.
Tu auras une boucle
for de 0 à nCharqui ajoutera un caractère aléatoire à res.
Pour ceci, je te conseille l'utilisation du code ASCII (
https://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters)
En sachant que dans le code ASCII, les lettres MAJUSCULES précèdent les lettres minuscules et sont consécutives. Le char 'A' a pour valeur 65 ce me semble. Ce qui fait que si tu fais
std::cout << (int)'A'tu obtiendras 65.
Dès lors, tu peux ajouter une lettre facilement par transtypage:
/* Il y a 26 lettres dans l'alphabet, tu as l'ensemble des MAJ et des min, donc 2*26 de longueur. Je te propose donc : */ int start = (int)'A'; // transtypage explicite int end = (int)'z'; // transtypage explicite int length = end - start; res += (char) ( start + rand() % length * 2 )
Je passe par des variables pour pas de donner de fausses valeurs entières (à la 65 donnée précédemment... :p ).
Après, plutôt qu'un simple rand() tu peux affiner tes critères, une majuscule une lettre sur deux, rajouter les chiffres pour un mot de passe alphanumérique... à toi de t'amuser avec la table ASCII :)
Edit suppression de la signature contraire à la charte