Password Strength

notion insolite actes lancés
occultation alarme bouffer inhumation
circule enrayer tournage modestes
nuance modifié sortant honda
irrecevable immodéré liés commençons
cosse impensable voudrais réellement
bien fouilles agitent 
belges estropié sen nettoyé
kurdistan anémie professionnelle joli
frenay usure élue surprises
radiner arbrisseau barres entraîneur
bacon miser phases impéritie
vaguement causé attaqué devoir
ordinaires ouvriers transportés circonscription
racistes bactérien japper cérébral
humilier perdre feuilleter retrouvée
délice engueuler équipement écrivait
vagues chansons férocité asphalté
suédoise cuiller scepticisme connard
bague traquenard ton voyelle
lambin orgueilleux justifie décidée
écarter ordinateurs débats liquidités
ravir susciter allongé influencer
diluer sommaire implications sable
qualifiant commercialisation généalogie bouclé
toubon sapeurs inflationnistes confessions
contrebalancer durent élargissement polonaises
cafard coca-cola espionne polygone
huit tension pivotant bâclé
parlé complément connaîtra contenu
désagréable défiant facture austérité
ficher tracteurs parfait quotidiens
bisou dispersé sapes argentins
victor gilbert discuter impôts
aujourd'hui saumon religion consommation
affirment ivoire fauve morale
licenciés escale bogota rupture
confère failli nues servante
leurre songe nappes abandonnées
colback illimité doubles bactériologique
gloser répartition géodésique réfugiés
impassible pronom étonnés inutilisable
éclair regroupement thésauriser subsistent
raboter bige ortega consulter
trictrac apprenait marron rurale
airs emploi entendra serve
hivernal remémoration excaver féerie
arracher dotés ballets vaille
plaignante pénétrer julien concentrations
pitoyable fossoyeur garantie laideron
ecosse repousser rente palme
joyce alléger dialogues terminale
penchant muséum visas câline
fantastique métamorphoser épuration friable
habitations narrateur centaine enfers
géodésique chatoyer administration mois
languedoc situés tourné nombre
fief autocritique carburants libérien
appareils val jeunesses mitsubishi
orphée protéine impérativement prodigalité
kanak œufs jolie injection
rébellion americana insensibles concrètement
chemise de nuit maximale clé à molette accomplie
prose public maxillaire horizon
renfort grévistes moustache tonnage
succèdent fracture apercevoir masses
lacunes centaines taverne exhalaison
intéressant plaisirs harceler griffonnage
renversé intertropical fragiles renforcer
ai enseignements commutateur monaco
abyssinie enjeu avisé chambranle
inutile alentour désignée conducteur
surveiller apportés  irréaliste
indirectement adamien chevelure malgré
meringue aiguë affiches présumés
trekking parodier boutons visiteur
décombres allemands réveillon recouvert
puce insee bariolé culture
méditation télécran courts abortif
bouteille panthéon insistance trouvé
niger enjoindre palestinienne adverbe
rare gall biens légion
burlesque bobine provoqués chandail
 percher dais pinte
distribuée raboteuse compétente enfance
gardait fumer hélium épingle
interrompu répertoire migration interrégional
koweït bassiner plus bas manquent
commise garanties perçue viande
mêlé déceler thom médecins
engueuler désagréable ouvrières plaisance
nager tertre plumet puis
fierté tristement médiation constat
mécanicien douloureuse stage nocturne
essuie-mains hebdo sent vigilants
boston cerveau démodé exceptions
radicales automatiques toulouse endommager
quart caduc tactique épidémique
femme légale diplômés souviens
bénéficiait incommodité alarme monnet

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