Password Strength

découvrant fabuleux achetées simples
adieux millionnaire cérémonie extrémiste
dispersés communal porta marion
billets feuilleter gauchère morale
auberge converti caractères recyclage
applications attentif intéressés diagonale
émigrants  automatiques production
allure enterrer ouïe leeds
épicé répliquer traînent amonceler
voté foultitude consacrée genièvre
remplie ferroviaires cinq cents reins
lienemann lexicographie râpé nice
fièvre tronc arbre durs vénérer
excès brown indépendante juifs
malignité scrupuleuse échapper tâter de
lie affolement caustique crispation
lapsus opérés ont assurées
armés remontent semblant exactement
découvrant foutre quota brusquement
recommandé bannière directif martyrs
éducatives vandalisme modifier affluent
sceaux amazonienne situés constituant
wallon discuter font bitumé
accoucher passagers remèdes amonceler
dotés sitôt conducteur sceptique
 singes molière prédateur
foyers milieux panthéon onzième
plaignent intraitable forte hébergement
dénoter abasie module vœu
gagnant défendu augmente distribuées
peuple auvent temple alcool
cotation non-sismique aoun cornillon
exacte soweto deçà salé
dague castro finir portemanteau
volubile empêcher déplaire lenteurs
serres veto lumineux coude
assurées inquiété paie turbulent
moise intruse rétrograder illicites
boys perpignan millimètre déclare
temps passés astronomie château fort voudra
quais veux crié voulaient
sirènes faulkner immunisé probable
fripouille semer feinter frimeuse
coran habilité convaincus gênés
paulhan tours gens blessés
doter drapeau entourer crasse
pulmonaire turc partition technologiste
 souvenirs ombilic alphabétique
instruction look détrousser gang
trolleybus maghreb avant-toit territoires
déficits peiner cycliste renonce
éducative facultatif lectrice froid
marasme comparaisons dispos poste
danseur colporter massacrer rila
je paul obscur importun
dialectique bouches chasse parjure
actionnaires interprétation exposer dégauchissage
instrument barcelone entiers crise
bloquer verbal rencontrées superbement
agressivement fabrique fade exhorté
ombres consultations peintres infectieux
proust franck récipient prématurément
assassin crs aborder occidentaux
antinomique hélicoptères impose hésiter
festoyer échappement instinct mesurer
tirage lancement débouchant radiner
pique culte épidémie silène
racontait fardeau supprimé mourut
réparer enregistrement deuxièmement trafiquer
 croyaient socio-politique solaire
cargos abord dénigrer connaissance
alliance transfèrement vocations inspirés
maillechort alliance capitaine kouchner
cuve populiste comparée apéritif
incidents pif sciage la valette
urgents fonde concerto envergure
comique honnêtement regrouper ayrton
africain bactériologie ferai foulard
exemplaires syrie stades pulmonaire
bourré mondiaux casserole larmoyer
devons cérémonies pinte télévisée
armes correspondante interrompue développement
prudente dessécher amazonienne hospitalisé
houille partant islamistes chou-fleur
abyssinien décrit bibliothèques courante
politique cinglant constate pelle
vrais claquet identique revigorer
conventionnelle dynamiques expériences dallai
intertropical rassemblées exposants déplacements
résilier atrocité indigène briser
porter joyeuse fou rire conjuré
intruse abyssin penaud envol
millénaires naissent mélodique interroger
infaisable inoxydable questions communications
autodétermination traîtres délinéament retrouvera
soudure dangereux modestement licenciés
reconnus mégalomane couple compenser
entrepôts spoutnik pouvait achromatique
sabotage pouponner écœurement opposant
forcé trio déçus javier

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