Password Strength
portait cocufier parure appartenu
broder dépréciatif pâté orge
signification définitives wayne jusque
gage coutume traverser classé
bière magistrature brosser compagnie
ratifié moldave velours sédition
décrets supposé répartis jetait
empirer prétendu urbanisation assombri
perturbation voyaient politiques bahut
algèbre batteur ourdir contenue
réunira gourmandise ordinaire aisément
macaroni dialectal digestion biens
productrice contrefaçon sportives enfermés
étaient chouette allocations prononcer
aquarelliste coléreux emplette chuter
roland conférence de presse crisper fête
passer dèche épicer divertissement
vénéneux transcaucasie propos rapidement
américaines expliciter plaie dissimulé
exclus subie evelyne clan
automatiques parcelles discrètes bermudes
envenimer je négociée probable
carma foisonner discute flotte
royal maquis washington urbaniser
auxiliaire homogène lourdaud taper
déchu jubilé caravansérail envahie
notamment médecins débourser réalisation
alertement confrontées lecanuet nationalisme
finir increvable base bénévoles
municipales débiteurs admirateurs fière
spécialisée dépannage cresson anachronique
affût effervescence mineur sensible
coopérations formateurs autorise saigon
obligatoirement luxembourgeois embauche pensées
pipelette écroulement peloton miel
grandissante baron blessures imposent
fiable complète décevant harry
poste bloque accalmie institutionnel
tribunes audiovisuels chope tâches
séparation recteur gogo pater familias
agriculture énergétique fourni accompagnés
utilité prédominer bloquent achevée
doutent carotte racisme falzar
attraction maltais park austérité
décade coopératif cognée inconditionnel
tournesol naturels chrétiens significative
composante accéléré souvenirs magazines
triple démentiel claude mortification
concerts ensemencement récoltes haie
disait laïus confus recommencer
glisser habit friser silicium
dégriser engendre remettre garde-manger
compositions congressistes révélateur agressive
prétendument vernir situation disparaître
dst rurale époques beaubourg
cochon égayer générique qualifiait
nuisance déconvenue absinthe signés
référence dirigeant mésintelligence règne
remarquablement sud diversifier héritiers
tâtonner utilisation hercule tombé
roussir fatuité dogmes timor
séraphique occurrence espèrent apportant
sauveteurs inconvenance impossibles désaccords
fraternité ouvrage indirects cajolerie
vieillard fasciné majeure fibre
heures ombrelle eus maintenait
compagnons brièvement exportations loisirs
noyé invoque juridiquement amérique
exploit écorcer antagoniste cerise
respectée licenciés cherchent cogiter
criminels pommettes endommager canada
que inévitable lausanne camps
rocardiens merlin conférence ondoyer
relâchés alfred pinces annoncé
auspices plans congés permanentes
sportivement droitière croquis proverbe
lacustre collationner délits distribuée
tournée itinéraires cantiques délai
pionnier confirmait plumes accident
amende narrer marchandises européen
tremplin passionnante feuillage séjourner
comptera franciscain alvéole procèdent
vend lancent données flemmardise
basse indifféremment pénitence donneront
washington complexion phare éléphants
salvador six raide série
besoin magnificence appliquée duc
vaseux conçue modeler sables
taie graphiste dualisme reliant
procédé apprêter joueur contrecœur
héritage comparés bilingue concours
courtage werner parti tchèque
commencement coopérations relève pivert
argument redoublé plus bases
conseils arriéré laurent célébrations
alité risquer protection sécheresse
connaissances balzac luxueux breuvages
decaux pouvoir albums tâter
psychanalytique bain coupable réserves
polygone sols gâcher mais
<?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__);