IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Créer un mot de passe aléatoire


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 151
    Points : 73
    Points
    73
    Par défaut Créer un mot de passe aléatoire
    Bonjour,

    je tente de créer un mot de passe aléatoire mais je bloque une aide serez la bienvenu

    Alors voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //creation de mot de passe 
    //defini tout les caracteres du mot de passe
    $letters = "azertyuiopmlkjhgfdsqwxcvbn0123456789";
    $nbr_chars = "10";
     
    for($i=0,$i<$nbr_chars,$i++)
    {
         $pass.= rand ($letters,$letters);
    }
     
    echo 'Votre mot de passe est : ';
    echo $mp;
    il me sort que rand a besoin en parametre d'une variable de type entier
    Ma question est la suivante comment transformé tout ce joyeux monde ie la variable letters en entier ?? Soit faire correspondre chaque carractere a un entier et chercher un entier aleatoire avec rand et enfin afficher le caractere correspondant dans la variable pass


    Merci d'avance
    Mon site web : techpaf

  2. #2
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Salut,

    Tu devrais regarder la doc officiel.
    La fonction rand() prend en paramètre 2 entiers (int min, int max)

    Regarde plutôt du côté de array_rand

    ++

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 15
    Points : 38
    Points
    38
    Par défaut
    le plus simple c'est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //Mélange tout
    $passShuffle = str_shuffle("1234567890azertyuiopqsdfghjklmwxcvbn");
     
    //ne prend que les 6 premier caractères 
    $pass = substr($passShuffle,0,6);
     
    //cripte le mot de passe
    $pass = md5($pass);

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 151
    Points : 73
    Points
    73
    Par défaut
    Merci le code marche avec str_shuffle

    je l'ai un peu modifie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //creation de mot de passe 
    $nbr_chars = "10";
     
    for($i=0,$i<$nbr_chars,$i++)
    {
         $passe_shuffle = str_shuffle("azertyuiopmlkjhgfdsqwxcvbn0123456789")
         $pass.= substr ($pass_shuffle,0,1);
    }
     
    echo 'Votre mot de passe est : ';
    echo $pass;
    Il marche niquel , merci bien des méthodes a conseiller pour les mots de passes apres ça ?

    va me crypter mon mot de passe mais je peux garder le cryptage et le mettre directement dans ma base de donnée ??

    Ma technique de creation peut-elle est plus securisée ??

    Apres j'ai finis je pense ^^
    Mon site web : techpaf

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 15
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par antoine974 Voir le message

    Ma technique de creation peut-elle est plus securisée ??
    oui tu rajoutes des majuscules et des caractères spéciaux a la chaine que tu str_suffle

    mais bon c'est de la paranoïa

  6. #6
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Bonsoir,

    Tu peux mettre le résultat du md5 dans la base de données effectivement.

    La seule contrainte reste que lorsque ton utilisateur enverra son mot de passe lors de la soumission du formulaire, tu devras faire la vérification avec le champs dans ta BdD et le mot de passe qu'il a saisi crypté en md5.
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 151
    Points : 73
    Points
    73
    Par défaut
    c'est de la paranoïa
    Ouai mais je suis un Fou moi ( je l'ai deja fait le rajout de Majuscules et de caracteres spéciaux, j'ai du 100% secure sur tout les tests de mot de passe
    en fait c'est juste le premier mot de passe que recevront les membres mais bon histoire de se compliquer la vie et de faire un truc secure jusqu'au bout ^^

    Sinon pour la version en production je garderais que les lettres et les chiffres sinon c'est trop compliqué pour les membres

    Merci bien sujet totalement clos
    Mon site web : techpaf

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WS 2003] créer un mot de passe à l'administrateur du domaine
    Par debutante_systeme dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 29/03/2010, 11h27
  2. Réponses: 6
    Dernier message: 17/09/2007, 22h05
  3. créer un mot de passe dans ProcessStartInfo
    Par jerome.fortias dans le forum C#
    Réponses: 4
    Dernier message: 12/09/2007, 18h00
  4. Comment créer un mot de passe?
    Par Sabrina_of_darkness dans le forum Bases de données
    Réponses: 5
    Dernier message: 17/04/2006, 20h58
  5. [framework]génération de mot de passe aléatoire
    Par seb_fou dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 13/02/2006, 13h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo