Password Strength

revêche magique prévisions indispensable
alimentation disposera philologue marseille
accomplit montpellier ajouter connus
dédier ambitionner papeterie hectare
stage cousette somnolent corridor
apposer fichiers pouls chantant
débordement équinoxe élucider potin
houleux prières saxons négociées
persécutions scrupuleuse catastrophe représentante
concasser ethnique enduire moqueur
rêveur encourager cribler enfiler
têtes rapatriés desserts habitués
sillage expurger durabilité agitent
rumeur venger délié as
maillet pendant accepteront technologies
populations traînée quarts marins
pinochet stratagème indice décéder
contraire de anachronique salutations changer
fouille analystes insulter diplôme
intersyndicale unifier remplacés restée
tempête uniquement atrocité livrées
brunei fausses éden bourde
volées  chancelant pourchasser
bonheur instance gus protectionnisme
boiter khmers modifié additionné
contrition machines effectue interroger
largesse concernées guadeloupe amirauté
havresac canalisation apesanteur bercy
généreusement profile mobilise caucase
paré laineux restreinte pierreux
médian bénéficié bitumé dévaloriser
dupont assume épisode nazie
rage ta allait radin
rapatriés honnêteté points chante
appréhension adultes fisc louange
acidulé tribunal scientifiquement vainqueurs
grand-père amabilité développe monstrueux
loges passager pull-over courtiser
irakiens potentielle poursuivaient revenue
pope avoine recrute encourager
inclus import rabibochage protecteur
vigoureuse bracelet médicinal augure
ovationner routes gamins soutenus
gan dise stewart fi
fédéral substituer abbatial couper
avéré tiroir courgette dévaler
espion catégoriquement élégamment rappel
glorieuses souper tantôt sèche
asseyez-vous trône shampooing variables
milliard héberger porteront ombrageux
brutale attendait nôtres parlait
collaborer précautionneux accusait atomique
basses suivant défavorablement enfer
piller alignement théâtrales dilemme
évolué bureaux bus endosser
remède chausson dame de pique approche
éloignées chantage tripes alligator
terroriser royaume consciente caché
chercheurs rude fiable spasme
vernir incapables limitées différences
résolue tapisserie restaurants remarque
monde telles que courante citoyenne
télégraphe courants voir acerbe
décroître gagnera excédents générale
inactif épargné nazisme distances
amateur interrompue frigo troisième
désagréable voulaient atlas short
tiroir desserte avoue patrimoines
loyauté attendant accore cheminement
révèle militant courber grimper
pourvoir tunis déprécier centrales
caviar cloîtrer ajaccio cliver
bonus fendre bébé ambassadeurs
chadli venin insuffisant attachée
lexicographe éclairé componction taillis
cotisation excéder indiquent débrouiller
déporté chicaner divinité taquiner
hégémonie socialement papillons deutschemark
fourrer dénoter tinter siennes
concret régurgiter sent lexicographie
droguer originales menotte voulue
vaguement ali lotissement blasé
loufoque tresser afrique opérationnelles
déçus naturiste pelouse dérégler
algériens agents relents maigret
aura ruser marée que
audacieux amendes administratifs actif
professionnelles cannes enseignante associative
normaux rationnement chacun gabriel
pence télévisions négociant effectue
engorgement frai exubérant feux
sorgho danièle superficie soutient
senti béret coin optimisme
montana ânerie ou oblique
identifié remarquables est vogel
foch parlementer gadoue rappelant
trésorière propager juristes enterrement
cuir mouchard wallon neutraliser
permanentes promettait exalter piège
narrateur gendarme savant éducateurs

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