Password Strength
traitées ethniques corruption vide
seulement congé bravo engraisser
recouvrir parfums redire ennuis
charles condamne automobile délibération
aïe confrontation semer stratégies
ration supprimée poissy impose
survenu conditionnement imposé occidentales
clergé chevelure silence maine
convulsion œil vigneron favart
productive suspecte féerie disquettes
pensionnaires donateurs officier souligner
initiateur pèse actuel tampon
hardiesse fleury publiée végétation
nommé dorment soigner évacué
aigreurs impertinence rétorquer assassiner
anonyme superficie désaccord hésitent
intéressé dard compromettre finales
chargé inapte éminence despotique
bourrer canadienne poursuivra majeure
éducation émotions championne lancement
policier requises proclamer joël
désobstruer cardinaux banaliser tend
bénéficient bétail gradés tendue
exploser merci tenu présager
débris diriger complaisant îles
perrot agitée risquer auquel
corrections inintelligible intersection valorisation
admise touches croyait reuter
rapsode matériels immédiate traducteur
urgent placées entame succédera
appuis philosophes dépérissement contenter
vichy primer maintenance réponse
pénétrant jacquard bêta échéance
mentalité assurément villette secret
merci laquais shah monastique
futile basse compromettre marseillaise
faudrait bordeaux arrêtée crânerie
stagiaires obligeant directions cantal
seigle école emprisonné concerto
aigreur collectivité demoiselle évacuer
bureaucratiques suie écrivent lignée
couvert de baume billy décortiquer
pressant sous-évaluer récupérateur trafiquer
volontaire baume plancher style
empires décentralisation prêt caillou
programmation entraîne sensibilisation tôkyô
raffinement trouille géochimie jungle
héroïque fleurer actionnaire acquéreur
stores athènes balivernes confronté
admirable déroulée éducatif levain
battage potassium contraction volant
manquent multicolore consommatrice escompte
gamelle scientifiques aura emprunte
intervenants recense mutuellement abords
fracturer état mental voiturer puisse
alluvion voilier jaseuse inefficace
teinter exprimer goulag charmes
allumer battus vaille timbre
objecter idéal sensiblement truand
tout-puissant documentaire violences efface
compartiments ulcérant épargne ébouriffé
excellentes tréteau pochoir prenaient
aucuns stages dynamite épines
respectée retraité pain groupe
participer inoxydable florissant reculer
favorisé indisposition renouvelée jeté
responsables mènent espérances exchange
détruits équipements helvète suffixe
brandir kyste éternuer attroupement
salzbourg tokyo mouvementé atterrir
contester récif jaquette émigrants
condiment chiffrées primaire bourges
surgit intellectuel signataire apologiste
oiseaux quelques parlée ghetto
pis obscur généralisée tirana
expérimentales croyait flanquer drôlerie
altérer antenne dynamiser réjoui
troubles crâneur arène idéaux
bsn incendier bouquin datas
griffe opa confond intertropical
campagnes balustrade chou-rave assassinat
bronches impératifs expiration flirter
personnages ironiquement disposent bambou
réconciliation figurer améthyste hydrate de carbone
chaussées opposent gambettes thaïlandais
évolué retenues cornouailles israéliens
interprétations autopompe élitiste différente
alibi successeur sympathique télégramme
endommager magiquement prouvé excrément
majeur préfixe téléfilm amnésie
contraindre ananas agnès bouge
ivre ainsi ortf déterrer
hydraulique détient succursale ahmed
tracasser historiques fitzgerald renaissance
choisie avion savoie épervier
melon parisiennes cyril insuline
drôlerie supprimé raisonné plagier
ukrainiennes possession abdel dose
intervallaire bénin terrible crédulité
féroce laiteux appesantir géminer
<?php
/**
* @file generer_password_xkcd_com.php
* @brief Ce script va générer un mot de passe tel que vu sur le site xkcd.com.
*
* @author hughes monget
* @see http://monget.com/
*/
echo '<p><a href="http://xkcd.com/936/" target="_blank">Password Strength</a></p>';
$str_chemin = dirname(__FILE__).DIRECTORY_SEPARATOR.'liste_francais.txt';
$arr_str_mot = file($str_chemin);
$arr_str_mot = array_map('trim', $arr_str_mot);
$arr_str_mot = array_filter($arr_str_mot);
$arr_str_mot = array_map('strtolower', $arr_str_mot);
$arr_str_mot = array_unique($arr_str_mot);
echo '<pre>';
for ($ii = 0; $ii < 100; $ii++)
{
$arr_tmp = array();
for ($jj = 0; $jj < 4; $jj++)
{
$arr_tmp[] = $arr_str_mot[mt_rand() % count($arr_str_mot)];
}
echo implode(' ', $arr_tmp).PHP_EOL;
}
echo '<hr />';
highlight_file(__FILE__);