Password Strength

fers inabordable hôteliers musarder
péril sensibilisation réduit constants
beau trappe récuser orientales
mois basket-ball maternité découpage
négociables brusque comparés proviseur
virulente syndical cuit aventureux
influer ouïes penche navigants
couvert de volée fatigue aviser
aviez déroulent symboliquement énergie
affectée abordable crie tourmente
esclavage sanitaires mèche hypertonie
compliqué embrouillement dérange vents
honnêteté hypertension fiat baptisé
affichage humaine échapper statue
recueil aber probabilité valeurs
justifient amusement débordements éducation
crête raffinage cédant professionnel
relaxation laineux lancer 
pointes insinuation imprimeur récoltes
référer réservées offre chômeurs
périmé lyonnaise harceler renouveler
harpiste avancé séide laissait
métiers groupes égayer poisson
cousine Ève tassa écologie
assassinats substantiel garcia stalinien
transféré restructurations transferts étrangère
cap élimination visionnaire pitance
pleins bénéficient chemises imparfait
saoudite mie mésentente componction
manifestée exceptionnels accoucher fichu
diplomatie appétissant lits extérieurs
ascétisme couler vôtres révélée
dois respectant féconder actuelle
perd françois bis germer
roussillon enfler mucoviscidose larcin
aimé balai non-valable réunions
soupçonne payées pivert cracovie
introduit transposer programmés barreau
posée grecs cavaliers célèbres
hongkong concitoyens respectés apparus
produits bécot musique dise
peux panaméens suinter concéder
néologisme mobiles quinine décathlon
provoquant ministérielle démonstratif réaménagement
distingue controuvé homicide pauvres
emplir met lacérer bonsoir
guadeloupe avis alinéa initiative
anaphore véhiculer rude armature
recrutements déstabilisation salutaire relatifs
sauveur accidenté autorité redoutable
intégriste distributeurs proposées azerbaïdjanais
soigner dut ouvertures orgueil
sibérie congé festoyer étroites
recommencer statuaire écarts roitelet
constate françois genévrier théière
niger madrid posée voisine
accabler bavarder rénovation eux
exemple distancer exterminer description
boulots foultitude tribus privilégié
propres matérielles chou-navet célèbres
rade préhistoire retrouver acceptait
céleste sauf actualisation ramener
labyrinthe roupiller ton dénier
masure deale cuivré paramount
exigu machinal figuraient grasset
franc-maçon calendrier biaiser investi
mégoter tirailler euromarché contrôlées
plait alerté réconcilier agen
plate-bande liège abroger baromètre
convaincre enrayer baccalauréat remplies
assistée déclenchement gâcher patate
intrigant consulat craindre estrade
prônant coloré caution rhume
holocauste fusée annonacée bilans
domestique micro-ordinateur laval abus
niveau européennes railler harold
empoté radioactivité enfants fournée
demandait transpirer mystifier tendre
monstre connais susciter détourner
possibilités florins converser nuits
picorer consolidation blesser contacter
précautions niveau kidnapper relevées
nomenklatura cherchons férocité bangladesh
mystère cataclysme soutenus 
montante capable de disette azote
obligatoires bunker dissimuler aveuglant
london réclamée voter danse
effarouché concis rythmes empaqueter
original itinéraires échange ponts
touristes entreprend tandis dépravé
fier abasourdissement intacte copier
essuie-mains plantations voter nette
notait chauds accentué bourgade
phraséologique effigie terminal frisé
délivré essayons conseillère assentiment
chaussées créancières doucissage pantalons
fossile détenues fit filtrer
manuelle permettront convié refus
supermarché courant visas ignominieux
coudrier bureaucratiques réunissant disait

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