[PHP] Generer un mot de passe
Résolu/Fermé
Utilisateur anonyme
-
16 juil. 2003 à 15:32
adrienmarty Messages postés 67 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 25 octobre 2013 - 12 oct. 2013 à 22:11
adrienmarty Messages postés 67 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 25 octobre 2013 - 12 oct. 2013 à 22:11
A voir également:
- [PHP] Generer un mot de passe
- Piratage facebook changer mot de passe - Guide
- Mot de passe administrateur freebox ✓ - Forum Freebox
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Dans le texte, un seul mot a réellement été écrit en lettres capitales (majuscules). quel est ce mot ? ✓ - Forum Word
- Mettre un mot de passe sur un dossier - Guide
15 réponses
voila une ptite fonction ma fois bien utile qui pourrait te servir :)
function newChaine( $chrs = "") {
if( $chrs == "" ) $chrs = 8;
$chaine = "";
$list = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
mt_srand((double)microtime()*1000000);
$newstring="";
while( strlen( $newstring )< $chrs ) {
$newstring .= $list[mt_rand(0, strlen($list)-1)];
}
return $newstring;
}
voici les sources d'une fonction que j'avais créé pour généré un passwd :
function genere_passwd() {
$tpass=array();
$id=0;
$taille=6;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<$taille;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
return $passwd;
}
tu remplaces $taille pour changer le nombre de caractéres
A@++
function genere_passwd() {
$tpass=array();
$id=0;
$taille=6;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<$taille;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
return $passwd;
}
tu remplaces $taille pour changer le nombre de caractéres
A@++
teebo
Messages postés
33479
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 798
16 juil. 2003 à 15:33
16 juil. 2003 à 15:33
Oui sous apache...
http://httpd.apache.org/docs/programs/htpasswd.html
Mais si tu veux pour php seulement je ne sais pas...
. .
\_/
http://httpd.apache.org/docs/programs/htpasswd.html
Mais si tu veux pour php seulement je ne sais pas...
. .
\_/
Ah ouais pas bete, mais ca va me faire faire une commande system() pas du tout du tout portable... :/
Mais merci en tout cas, c'est deja une solution... :)
Kalamit,
o(^_^)o
Mais merci en tout cas, c'est deja une solution... :)
Kalamit,
o(^_^)o
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Super ! Merci beaucoup !
(Je precise que c'etait pas de la flemme, mais j'avais pas envie de recréer l'existant ! :o))
Kalamit,
o(^_^)o
(Je precise que c'etait pas de la flemme, mais j'avais pas envie de recréer l'existant ! :o))
Kalamit,
o(^_^)o
Merci merci ! N'en jetez plus ! :o))))
Je pensais juste qu'il y avait une fonction qui en generait un automatiquement ! :o)))
Kalamit,
o(^_^)o
Je pensais juste qu'il y avait une fonction qui en generait un automatiquement ! :o)))
Kalamit,
o(^_^)o
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
17 juil. 2003 à 08:46
17 juil. 2003 à 08:46
Par contre, j'espère que tu ne vas pas le stocker en clair :-)
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
T'inquiete pas pour ca...
md5() est mon ami.... :)
Kalamit,
o(^_^)o
md5() est mon ami.... :)
Kalamit,
o(^_^)o
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
17 juil. 2003 à 09:11
17 juil. 2003 à 09:11
AAAh très bien ! :-)
Je suis inquiet pasque je viens de voir que dans ma boite, ils cryptent les mots de passe avec une méthode à eux (genre ajouter 5 au code ascii des 3 premiers car. etc.)
Bref, ils parlent de sécurité... Mais c'est loin d'être sécurisé.
J'ai en plus malheureusement l'impression que c très courant : on peut voir le gd nombre de sites qui sont capables de te renvoyer ton mdp quand tu le perds, au lieu de plutot te donner un moyen d'en créer un nouveau ! T'imagine le bordel s'ils se font piquer la base sans le savoir ! :-|
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Je suis inquiet pasque je viens de voir que dans ma boite, ils cryptent les mots de passe avec une méthode à eux (genre ajouter 5 au code ascii des 3 premiers car. etc.)
Bref, ils parlent de sécurité... Mais c'est loin d'être sécurisé.
J'ai en plus malheureusement l'impression que c très courant : on peut voir le gd nombre de sites qui sont capables de te renvoyer ton mdp quand tu le perds, au lieu de plutot te donner un moyen d'en créer un nouveau ! T'imagine le bordel s'ils se font piquer la base sans le savoir ! :-|
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Et pis de toute facon, le stockage, c'est pas le plus délicat. N'importe quel sniffeur est capable de récuperer le mot de passe saisi par l'utilisateur... Donc :-/
Kalamit,
o(^_^)o
Kalamit,
o(^_^)o
Pour le cryptage des pass, j'ai une ptite astuce qui me parait pas trop mal.
J'encapsule le pass dans une chaine et md5 par dessus. L'interêt est que même si quelqu'un recup le md5, il aurra beaucoup plus de mal a recup le pass.
ça donne à peu près ça.
Pour ma part, je stocke la chaine que j'utilise dans un fichier non accessible via http dans en endroit un peu caché.
c'est pas la super soluce mais bon c mieu que rien ^^
J'encapsule le pass dans une chaine et md5 par dessus. L'interêt est que même si quelqu'un recup le md5, il aurra beaucoup plus de mal a recup le pass.
ça donne à peu près ça.
md5("pas facile de trouver le pass".$lepass."quand il est encapsuler d'une telle manière")
Pour ma part, je stocke la chaine que j'utilise dans un fichier non accessible via http dans en endroit un peu caché.
c'est pas la super soluce mais bon c mieu que rien ^^
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
17 juil. 2003 à 10:03
17 juil. 2003 à 10:03
Voui c pas bete de le stocker ailleurs sur le disque, mais ce n'est possible que sur un serveur web à domicile :)
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
non pas forcement mon hébergeur ( payant ) gère les acces avec un dossier web sur la racine que l'on ne peut pas supprimer et le domaine est dirigé vers ce dossier.
Moi quand je me log en ftp sur le serveur je vois tous les éléments que j'ai déposé avec en plus un dossier Web.
Si je dépose dans ce dossier, c'est accessible automatiquement via http sinon ça ne l'est pas.
Moi quand je me log en ftp sur le serveur je vois tous les éléments que j'ai déposé avec en plus un dossier Web.
Si je dépose dans ce dossier, c'est accessible automatiquement via http sinon ça ne l'est pas.
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
17 juil. 2003 à 12:53
17 juil. 2003 à 12:53
Oui, c'est vrai.
Mais comme tu le dis : payant... Donc, ta solution n'est pas envisageable pour tous les serveurs gratuits où tu déposes directement là où c'est accessible.
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
Mais comme tu le dis : payant... Donc, ta solution n'est pas envisageable pour tous les serveurs gratuits où tu déposes directement là où c'est accessible.
@++
Vous hésitez entre Linux et Windows ?
Vous voulez dépenser du temps ou de l'argent ?
c'est sur que dans ce cas, il est plus difficile de le rendre accessible.
La solution pour laquelle j'ai opter quand je me suis retrouver dans cette situation :
J'ai une fontion qui me retourne la date sous la forme : "Jeudi 17 Juillet 2003 @ 13:31"
Et je me servais de cette fonction pour encoder mon pass.
En gros ça donne une chaine du genre : "Jeudi 01 Janvier 1970 @ 01:00".$pass."Jeudi 01 Janvier 1970 @ 01:00"
Bref le principe c'est de rendre le resultat du md5 difficile a cracké. Apres que l'on stoke l'info dans un fichier, en bdd ou avec une astuce autre le principe est le même. A chacun d'avoir sa ptite astuce perso ^^
La solution pour laquelle j'ai opter quand je me suis retrouver dans cette situation :
J'ai une fontion qui me retourne la date sous la forme : "Jeudi 17 Juillet 2003 @ 13:31"
Et je me servais de cette fonction pour encoder mon pass.
md5( formatdate(1).$pass.formatdate(1) )
En gros ça donne une chaine du genre : "Jeudi 01 Janvier 1970 @ 01:00".$pass."Jeudi 01 Janvier 1970 @ 01:00"
Bref le principe c'est de rendre le resultat du md5 difficile a cracké. Apres que l'on stoke l'info dans un fichier, en bdd ou avec une astuce autre le principe est le même. A chacun d'avoir sa ptite astuce perso ^^
je veut cracke un mot de pass mais je ne svais pas faire
comment faire
comment faire
Va voir la: http://membres.lycos.fr/azerty0/
Tout y est expliqué...
Kalamit,
Parle à ma culasse, mon carter est malade. :)
Tout y est expliqué...
Kalamit,
Parle à ma culasse, mon carter est malade. :)
Symael.biz.st
Messages postés
89
Date d'inscription
lundi 10 décembre 2007
Statut
Membre
Dernière intervention
6 mai 2008
5
10 déc. 2007 à 15:23
10 déc. 2007 à 15:23
Ou se place ce code svp ? OUI JE SUIS UN AMATEUR ET ALORS ? xD
function genere_passwd() {
$tpass=array();
$id=0;
$taille=6;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<6;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
return $passwd;
}
function genere_passwd() {
$tpass=array();
$id=0;
$taille=6;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<6;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
return $passwd;
}
En fait, pour ma part cette methode n'a pas de caractère spéciaux ... voici ma version des choses :
private function generatePassword() {
$tpass=array();
$id=0;
$taille=100;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<$taille;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
$passwd.="!_$.".substr(time(),0,10);
return substr(str_shuffle($passwd),0,12);
}
private function generatePassword() {
$tpass=array();
$id=0;
$taille=100;
// récupération des chiffres et lettre
for($i=48;$i<58;$i++) $tpass[$id++]=chr($i);
for($i=65;$i<91;$i++) $tpass[$id++]=chr($i);
for($i=97;$i<123;$i++) $tpass[$id++]=chr($i);
$passwd="";
for($i=0;$i<$taille;$i++) {
$passwd.=$tpass[rand(0,$id-1)];
}
$passwd.="!_$.".substr(time(),0,10);
return substr(str_shuffle($passwd),0,12);
}
21 oct. 2011 à 05:02
Par contre j'ai viré $chaine je ne vois pas à quoi ça te sert là-dedans...
Aussi j'ai ajouté l'alphabet en minuscules. Pour un pass c'est bien d'avoir les 2. Et finalement comme j'en ai besoin de 8 tout le temps je me suis aussi débarassée de $chrs ^^
21 oct. 2011 à 05:03
4 févr. 2012 à 21:01
12 juil. 2012 à 16:34
12 août 2012 à 09:24