Password Strength

logements cravache sommaire siècle
joxe franz intellect francophonie
tulipe tantôt énergétique conjoint
egyptien bercail supporte monumentale
der culier secrets gazeux
autre côté enquêteur eiffel défection
organisateurs jardin franchie banqueroute
justicier fée indigènes ball
prépare jetés pneu antoinette
incrédule coutumier genèse insolence
déconner appréciés surannés synode
murmure marines dérégler hurlements
clerc bariolé argenterie supposés
responsable énerver plats avènement
diurne syphilis moldave égratigner
dévolu ores amnésie demandent
confer morts prévision irremplaçable
grommeler tablier succédé empoisonner
édificateur repu fantastiques glapir
croquer réactif dam amours
désunir provision logiciels dimanche des rameaux
obséder muqueuse teinter dialectique
précipité irréel rétablissement vendue
dernier lieu encombrant imposer évoquant
chronologique plombier clientèle différencié
ombilic arthrite italiennes excédent
dialogue souvent mitterrand tollé
inclément immortel investiture recyclage
pain épice ténors coûtera présenté
moabite pouvons parlez approuvée
bourse favart sournois brown
ombrelle économiser prévient sept cents
titiller renforcés rouleau refusant
glue bébé héron réunissent
mandarine pacifiste relations lauréats
dates ressent aïe surplus
redéfinir respects apposition concierge
apologie phares hollande résine
ménagère mendigote dérision monde
insulte parisien confirmer noir
particularité insuffisances patrice escarpement
ronald telle cordon fusillade
local bossu doyen harry
perplexité occupée argonaute rushdie
raconté sujet queursage pieds
comparaître régimes développant transvider
diversifier surévaluer dévotion culottes
requête localité réunie souteneur
algorithme radars cavalières élastique
circulent secrétariat renouveler histrion
enjoué enfermés retenue œil
pointe rostres voiler perversion
fit panier chaudes grange
monopoles apprécié mairesse canaries
expertise réclamée pisser quatrième
pourrait secousses exerce déflorer
vis assourdir problèmes traîtrise
internet joxe intimidé paganisme
orifice inattention ravage couture
avortement généraliser trouvailles écorce
virgin cancers descendent spectaculaires
couramment écrabouiller naplouse dresser
pierrot voulue sanction neutralité
sceaux trembloter stades investiguer
sénatoriales pilote bénéfices péréquation
hindou achète mythique autour
donateurs  otages ménagères
embaument carioca cheveux noirs hasardeux
efficacité bacheliers supervision séisme
gageure aspect représentés gratis
camaraderie forestiers hasard bousquet
obligataires mésestimer importer racontait
malheur fuit appropriée joue
approuvent extraction comédies laser
gracieuseté eaux charité mener
éclatement perrot istanbul paillettes
masque seize franche deviner
semblent captivant invitée vides
généraliser antin denrées indemnisation
cachemire châteaux témoignent dame
si militaires incomplétude danoise
effectuant raccompagner utilité bons
pastoureau échine ambitionnant renfort
adorer prenez perspective sourdine
mulhouse étourdi limité suivies
roule chiite tante armés
semblables hommages bouillonner cubain
infidèle polychrome malavisé cagnes
laconique orthodoxie morne bal
intimement risques passablement bagarre
barricades microphone bilan souhaitaient
russes fournil comté patrimoines
boys éventualité encombrement duo
cravache antique folle blaise
étudié canot humide éternité
innocent veston potasser inquiète
congélateur verts culminant grenelle
œuvrer aiguë poste conserve
condamné détecter refouler ramenée
bâtir amélioré remarquait colombien

<?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__);