begin process at 2010 03 22 13:19:54
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité & Cryptage

 > FONCTION QUI GÉNÉRE UN MOT DE PASSE ALÉATOIRE

FONCTION QUI GÉNÉRE UN MOT DE PASSE ALÉATOIRE


 Information sur la source

Note :
8,33 / 10 - par 3 personnes
8,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité & Cryptage Classé sous :mot, passe, fonction, générer, aléatoire Niveau :Débutant Date de création :16/04/2007 Date de mise à jour :22/05/2007 22:00:09 Vu / téléchargé :16 252 / 522

Auteur : italiasky

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note


 Description

Cette fonction permet de générer un mot de passe aléatoire d'une taille donnée ($size)

Les caractères à utilisés sont à indiquer dans le tableau $characters.

Par défaut, le mot de passe contiendra des chiffres et des lettres (minuscules et majuscules).

L'alternance de ces caractères est obtenu de façon aléatoire.


Source

  • <?php
  • /***********************************/
  • /* Génère un mot de passe */
  • /***********************************/
  • // $size : longueur du mot passe voulue
  • function Genere_Password($size)
  • {
  • // Initialisation des caractères utilisables
  • $characters = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z");
  • for($i=0;$i<$size;$i++)
  • {
  • $password .= ($i%2) ? strtoupper($characters[array_rand($characters)]) : $characters[array_rand($characters)];
  • }
  • return $password;
  • }
  • // Petit exemple
  • $mon_mot_de_passe = Genere_Password(10);
  • echo $mon_mot_de_passe;
  • ?>
<?php

/***********************************/
/*     Génère un mot de passe      */
/***********************************/
// $size : longueur du mot passe voulue
function Genere_Password($size)
{
    // Initialisation des caractères utilisables
    $characters = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z");

    for($i=0;$i<$size;$i++)
    {
        $password .= ($i%2) ? strtoupper($characters[array_rand($characters)]) : $characters[array_rand($characters)];
    }
		
    return $password;
}


// Petit exemple

$mon_mot_de_passe = Genere_Password(10);

echo $mon_mot_de_passe;

?>

 Conclusion

Pratique pour générer des mots de passe aléatoirement de longueurs voulues, contenant pas seulement que des chiffres ou que des lettres...  bref un "vrai" mot de passe pour un petit plus en terme de sécurité ;)

Je l'utilise beaucoup, j'espère qu'il pourra également vous servir ;)

PS : (pour débutants) pour récupérer un mot de passe dans une variable, il suffit donc de faire par exemple :

$mon_mot_de_passe = Genere_Password(10);

Téléchargez le zip pour l'exemple ;)

++

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

16 avril 2007 18:00:22 :
Petite modification pour la mise en page ;)
22 mai 2007 21:57:23 :
Prise en compte des remarques ;)
22 mai 2007 22:00:09 :
Problème dans le zip..

 Sources du même auteur

Source avec Zip FONCTION QUI CALCULE L'AGE A PARTIR D'UNE DATE DE NAISSANCE
Source avec Zip TRANSFORMER UNE DATE FORMAT ANGLOPHONE( AAAA-MM-JJ) EN FORMA...

 Sources de la même categorie

FONCTION DE NETTOYAGE DE VARIABLES AVEC UNE INSTALLATION DE ... par jroger
ALGORITHME DE CÉSAR SUR LA TABLE ASCII par Nementon
Source avec une capture CODEC D'OBFUSCATION DE LIEN HTML (PHP5) par masternico
GÉRER UN .HTPASSWD par coockiesch
Source avec Zip SERSESSIONS > CLASS PHP5 POUR GERER LES SESSIONS SIMPLEMENT par Astalavista

 Sources en rapport avec celle ci

Source avec Zip GÉNÉRER UN MOT DE PASS ALÉATOIRE par narkos2
MOT DE PASSE POUR SITE WEB EN PHP par Chifou
Source avec Zip Source avec une capture IMAGE ANTI-SPAM AGRÉABLE À LIRE ET À REGARDER par SurfMaths
TABLEAU DE NOMBRES ENTIERS ALÉATOIRES, TOUS DIFFÉRENTS OU NO... par BreakingCentral
PROTEGER UNE PAGE PAR MOT DE PASSE par keyloger666

Commentaires et avis

Commentaire de kankrelune le 16/04/2007 18:49:10

function Genere_Password($size)
{
    $password = '';
    $chars = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
                   "a", "b", "c", "d", "e", "f", "g",
                   "h", "i", "j", "k", "l", "m", "n",
                   "o", "p", "q", "r", "s", "t", "u",
                   "v", "w", "x", "y", "z"
                  );

    for($i=0;$i<$size;++$i)
        $password .= ($i%3) ? strtoupper($chars[array_rand($chars)]) : $chars[array_rand($chars)];

    return $password;
}

;o)

@ tchaOo°

Commentaire de jeca le 17/04/2007 08:07:23

Il y a aussi ça :

$pass = md5 (uniqid (rand()));

Mais la longueur ne peut être choisie, ; dans le cas présent, c'est obligatoirement 32 caractères.

Commentaire de keyserbruce le 17/04/2007 10:25:21

Et pouquoi pas ça ?

$password = substr(crypt(time()),-8);

Et la, la longueur peut être choisie.

Commentaire de coucou747 le 19/04/2007 02:35:07

ou md5(microtime());
avec du str_replace pour virer ce qui peut porter a confusion (o et 0), bref

on est tous d'accord pour dire qu'un pass se genere en une ligne

#  $p = rand(0, 2);
#
# switch($p)
# {
# case 0: $q = rand(0, 9);
# break;
# case 1: $q = rand(0, 25);
# break;
# case 2: $q = rand(0, 25);
# break;
# }


a remplacer par

if (rand(0, 2)===0) $q = rand(0, 9);
else $q = rand(0, 25);

Commentaire de CString le 19/04/2007 17:47:41

Dans le tableau de mot de passe je suggère de mettre des caractères spéciaux comme "!?*+-"

Commentaire de Astalavista le 21/04/2007 02:44:13

On pourais aussi mettres des caractères du genre :
ALT + 159 = ƒ
ALT + 170 = ¬
ALT + 185 = &#9571;
non ?

Commentaire de coucou747 le 22/04/2007 15:53:09

cote securite oui, maintenant... c'est pas non plus courrant un bruteforce sur un login, et ca se voit si on logue les ip de tentatives de login et les heures...

Commentaire de maxioutils le 22/06/2007 19:23:55

Bah pour être franc, sur ce qu'à dit Jeca, on peut bel et bien choisir la longueur, du caractère.
Mon code prends le timestamp actuel et le hash en md5.  Ensuite avec un substring(), on peut couper le md5 de façon à avoir la longueur voulu !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

mot de passe [ par huricane ] Bonjour, J'ai un problème pour crypter de simple mot de passe dans une base de donnée. Je suis sous postgresql et je dispose d'une table utilisateur o LDAP : Authentification avec mot de passe crypté [ par Startrik ] Bonjour, Voila je fais une application php qui permettra d'authentifier un utilisateur en se servant de son login et mot de passe qui sont dans une an la fonction mail() [ par refkaben ] Bonjour &#224; tous!J'ai une fonction mail qui sert &#224; envoy&#233; le mot de passe &#224; un memebre en cas ou il l'a oubli&#233;, j'ai le code su générer un nombre aléatoire entre 1 et 16 [ par aze555666 ] bonjour. quelle est la fonction php pour g&#233;n&#233;rer un nombre entier al&#233;atoire entre 1 et 16??? le but est ensuite de r&#233;cup&#233;rer Générer un mot de passe [ par massbbc ] Salu j'aimerai générer un mot de passe, l'afficher et ensuite l'envoyer sur un mail .Aidez moi SVP include config et sécurité? [ par stroubinou ] Bonjour! Voila, je vous explique mon probleme, j'ai une galerie photo (visible ici ) ... je l'ai install&#233;e chez un copain (ben ouai, faut bien se Pb de conception [ par blinix123 ] Bonjour à tous, alors voila, je vous explique avant de vous balancer tout le code :pJ'ai un code mini-chat, et un code page protegé par mot de passe, problème chez free [ par Egon2204 ] bonjour a vous ! je suis débutant dans la programmation en php et pour l'instant je n'ai pas rencontré de réels problèmes ! mais j'ai tout de meme une Cryptage mot de passe [ par Tit0x ] Hello all =)J'aimerais avoir quelques petites infos. Je voudrai crypter les mots de passe de mes (futur) membres. Il y a le cryptage par MD5 mais c'es Remplacer un tableau. [ par themwa059 ] Salut a tous ! Voila, j'ai un petit site de PSP et J'aimerai simplement savoir comment remplacer un tableau login/password (lors de la connexion) par


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,076 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales