Password Strength

assécher gagnée couenne pasteur
mit ordonner ortf coffret
patronage persécuter ultérieurement pullulation
vendôme ravaler pavillon pénètre
mentalités prague franchit déployer
eh leçons légale espérons
burkina départementales apercevoir gérer
placement horaire incertain souterraine
chamarré have élevé succombé
pieu thérapeutique refusés iraniens
évolution chancel régression sicile
disparu siéger oblation diabolique
kenya chipot inégalités pressés
rares jouet abdominal faut
compagnie précisé gastronomique investi
patron libère calmes simone
conclue raréfier boussole pulluler
capacités trouvons quentin attardé
traversait glapir cil fiancé
illimitée tbilissi croche-pied course de haies
défaites applique vexer pelouse
milliards skieuse avertissement chuté
publiera momentanément mandarine épidémie
irrésolution été départementales atomique
pragmatique envahisseur malfaiteur tracts
impérialisme persévérer actinie originalité
plainte loire retardé biquette
appelés leurs assaillants empoisonner
pantalon valait problème notice
diffusé bains leçon surcharge
mal oranger sensuelle bavard
barbe attirent moyen Âge armistice
compose supporte volage treille
droite influer visions rancunier
touches briller hypocrisie cagnes
descendance relative contenter protestants
gréviste croyaient laisse vade-mecum
or michel expérimentés désarmement
dextérité civils fusiller opérateurs
polémiquer rocher rassis rétrograder
boutade taxes alliance suscitent
gestes guadeloupe découvrant rôder
retirée corrèze tunis invoque
conçoit contemporaine frénésie multiplié
contraire caisse répondait lacunes
actualisation suer aveux torrentiel
être spécifique serviette durablement
gêne dévisager trésor perec
golf bouchers chartres cour de justice
amulette ressemblance veulent prospérer
loueur impressionner aveu emmerder
roseau gisements réalisateur athérosclérose
exilé inspecteur toxicomane contradictoire
systèmes assourdissant bruce papier
votée cinéaste  parraineur
disques ralentie offensant modifiés
aérostatique caverne vérité poursuivis
stupéfiant vers laïques inexpugnable
arc nuisance bâclé médaille
andain foules vaillance consommation
publique leitmotiv développent puits
média répartis caca emporter
registres anglicisme cursus togo
clandestin exploite serge foultitude
rigolo hargneux policiers connaissait
coûtera enthousiastes explicite fictif
oasis propension incontestable impôt indirect
encouragé prestigieux anamnèse accélération
fauteuils maximale diamant recompter
imprimés liquidité forcément obligé
évadé managua dépendait marionnettes
dorer marceau réplique fonctionnaire
voltage bureaucrate alpiniste rendraient
candeur lusaka comprise occurrence
vœu nationalisme tapisserie approprié
couché brèche évoquant vulgairement
spécialisé complice contentement cris
parut chiffonner ressemble machine
catholiques bigarré croche-pied venise
destinées linder moldave moissonneuse
antoine oh soirs incapable
conjugal démontrer thèmes beaux
mécréant désenchanter lada persifler
spectaculairement elle russie fournissant
tripoter mahométan armes fonctionnent
torgnole poursuivait failles marécage
maîtrise pratiquement renouveau littéralement
amalgamer chirurgiens généreuse dégénérer
coulisses oppresser réside provocation
boyau parapluie dément cave
atteindre réfléchi photographes prouver
délassement mutisme précéder augmentations
logeur patte herbe epinay
ta vierge attestation banqueter
espérances maltais aiment usager
énigme enduire azerbaïdjan croquer
finissent décrété meuble agrégation
montoir plupart équinoxe raconté
leurre solennelle cuisiner détective
hibou assistants perçu boursières

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