Password Strength

craintes spasme génération captivité
aérospatiale reçoit moderniser publique
acte dissoute élites impressionner
soulignent inconfort poulenc attention
pertes mandarine familier résonance
télécran bibliothèque prendrait course de haies
sage-femme rames major brouillon
miennes resteront confondre jaillir
volume créances alligator ambitieux
invitation sagement élevé acclamer
agen enchanteur  relancé
niveaux gâchette non-immixtion lascif
benoît déplore agrégation manipuler
sortant longue rassemblent théologie
mouvoir migrations portera musées
vincennes régulière vitro malle arrière
libeller genévrier commenté léniniste
consul bigarrer dépit de permanente
courroucer retours  insatisfait
président metz respectueux football
gageure aiment négligeables façon
nouveaux suivre effronterie éducatif
goujaterie euphorie oncogènes environnement
pans clair macao prévenir
signer jim figurait match final
églantine assortiment bactérien intenable
défaillance justifié saccharide admirable
harangue arceau intégriste hôpitaux
hébergement supportable penchant débander
protocolaire précédentes moulins chacune
durée soucieuse soliste irakiens
tri subtile feuilles chauds
candidate surfaces fonder volets
inintelligible augmente exilés lycéenne
artificielles convoi bruccio échantillon
teint unedic désespère destiner
sauté milices agit chapon
agence juliette fournisseur iode
invectiver abrité australiens concurrente
psychisme dépensé lumières jupe
emmerde tunisie plonger patricio
stephan manger herbes commentaires
ambiante restes rentabilité resta
aboutirait sang versé vlan antinomique
adhésion pasticher passagers dépensé
salutation pratiquer dure accroître
coproductions vaccins intéressent divaguer
déontologie semelle arbitre urbanisation
prescience diego tbilissi epinay
hindoue infondé diamant innocence
cons dissoudre alliés désamorcer
fonciers crachat centrales inconnus
sommeiller croche-pied tâtonner salissure
quotidiens convenablement envoie contrôleurs
rassurés bouteur restée expérimentés
sylvie en-tête chanceler delta
imparfait baisse scène de théâtre souhaite
fourrure oiseux abondance clamp
recrues fernand devez limiter
perçoivent imiter reconnus assassinés
crispation connasse balayé désigner
circuler adéquate lime rayons
démêlés agencer  honnêteté
laissez solidarités survêtement prenaient
gaston location continueront sévir
veau corbeille soumis communauté
mastiquer commerçants commission divorce
interne revêtir stéphane bar
droitière tiers tabous dévasté
cal candidatures précédente bouteur
luxueux supplicier titiller réputation
consciencieux astrakan louche délicats
médiéval au messieurs avorter
boxe autocéphale pardonner 
incité pratiquée volige princesse
lapin liant tribunes proxénète
expositions suspendu nationalisation énumérer
communiste illustration fois rend
interrogation arbitrages successives bénéficier de
agissements minotier démodés peignoir
tranchée voyez fondatrice aigle
ressentie baisse indiquent parlait
voudra preuves comptaient service
recrutement grandi créativité inclément
onzième contrariété adressés félonie
débiteur broadway sœurs inouï
ride incomparable serviette humaniste
juriste renfrogné sourcil lieux
paradoxalement pape arrhes asticoter
imaginée argot rupture fragrance
prononcés graf puissances moabite
hasardeux équarrir comprenant amateur
opposée fresnes garnier austral
procureur datée commenceront séparées
brighton chatoyer inégal pièces
nuancé sont charpente découvre
unes fictif show-business narrer
végétation handicapés boite jupon
inconséquent joint savantes engin
bonheur évalue bouddhiste synthèse

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