Password Strength

avertit rigidité loire coleman
hasard miennes commissaires heurter
amarrer satiriste dévaler officiels
levier céleste portrait médical
monnaie ombilic diffusés douceur
distingue allegro souplesse mickey
déroulent saveur procure réussir
écroulement adverbe intérêt festin
mufle chant déchiré affirmée
compact concepts bornes persistent
traque pendule annie bouchon
surgissent logistique achromatisme epinal
incarne réaffirmé majoritairement agglomération
totalement tailleuse nomenclature fais
idéaux adventiste coca gober
responsable kenyan redoutables provocation
vendetta incrédule imaginer avisé
candide superlatif mondiaux rangement
abhorrer tâche bluffeuse milan
alléger pan voyons incorrect
durée cousette taie compère
cherché ouvrent nerfs acier prévaut
casablanca bécot miellé champ
faits divers municipales sèchement maigrir
requérant grecque gangster considérables
palestiniennes détiennent panacée flatteur
péjorativement éducateurs philips généralisé
modérés quinzième mégoter marée
maximale cesse épine essieu
tunisienne rivalité obligeant régularité
dior assassin gobelet attendons
fédérales marais forts jachère
convier néerlandaises informés artiste
superbement symphonie indivis gaullistes
disculper adorer atterrer flaque
huilerie châssis ghetto prédécesseur
austral suffirait sexualité complot
maillechort notablement cailler motif
entrent apostrophe idée délicats
participeront exigent fonctions survenu
carré documentaire montoir réserves
chiite nerf chômeur égoïste
mécontents catholicisme envoie baleine
 réjouit conseilleur enceintes
dubitatif possessions alphonse bru
délaisser quimper réunira échafaud
accomplit implicite restauré mireille
vietnamien trois aucune prédominer
conjecturer transferts mur instant
fréquentes inconscient réunie développés
taquin inacceptable non-ingérence entortiller
apprécient frontalières bénir crème glacée
goutter opposent déclenchement emplettes
aplatir souci au courant abstraitement
débrayage suprématie assises judas
objets sos imputer crucial
laine accueillie egyptienne équateur
falot philanthrope skieur grotte
refuse valent généreuse hésitant
gratitude dramatiques acquérir cuveau
assureurs nuée volontaires infecter
visent lignage régularité mouton
obligataire obligée tendance évolution
aphasie ameublement perspicace écart
embrouillement voués collant visiblement
disputent pacte israéliens perd
sheffield utilisé témoigne barbès
bluffeur dus affiché pompidou
ôter babouche albumine subsister
âgé oisif drapeaux quotidiennes
suivant conclusions embobiner paganisme
méconnaissance vouer volga injurier
paire peugeot présidents tire
logements chansons rudolf bruine
escalope promettait continuellement situées
extrêmes escadre requises antonio
consommer câline décoller seringue
rivage perfectionner argument artificiellement
consensus fers cachait modifier
armature acception individualiste traversée
remous volées cresson pochard
comment défiant libeller round
sourit historique affermage entend
falaise aubaine sentir éloges
indigène chausson concentration préoccupante
propager tisserande hermès assommant
vacances filet caustique sur
légèrement baser prompt détection
semences médicaux dégoutter forteresse
repentir juré vœu parfumé
raoul réalisatrice inventaire désirant
arrogamment rigides substantiellement bonne
avion) bouddhique résolument cagnes
contribuent demandeurs adolescent étranges
pantin chancellerie attentif vanné
escorte communiquer ravitailler iodure
ardent déshabiller pays récit
mélancolique gaspiller si aubaine
commerçants réjoui plongé dans saisies
perforer helvète intransitif fange

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