Password Strength

charisme nicolaïte remplie afin
girafe poitrine remercié inconfort
diamant cerner bénévole prochains
chapon transformés secousses représentations
intercesseur denrée orange cotonnade
répondent inculpations cordons embarrasser
pomper oscar pater familias allécher
barbarie dilettante seoir appropriée
corpulence adhéré rideau rééditer
crasse cerisier noter abortif
congressistes rancœurs recel composé
aident constater déroulés résidences
postulat hébreu anarchiste petre
éclaire bruits nuances radioactifs
ailerons démonté caresser paraissaient
preston confortable lointaines scanner
repris terre pincée taiwan
parizeau baryton amen exige
équilibres moustachu choisir battant
pullulation allô confiant libération
schmidt surveillance iran alarmant
polytechnique achat similitudes foyer
contaminateur étai droitière désertique
auteur collaboration prohibé laquer
fan préfixe pacifistes frai
télex apocryphe inopiné fier
reuter pérès arbres exceptions
généralisé moralisation bruccio risque
vivant divergentes collective orphelin
rencontre moteur décoller domestiques
tintamarre automne haute chère
par estaminet croyants bucarest
mésaventures défis plèbe démodé
autos abats faisable négliger
erreurs carnaval suppurer réunions
dramaturge astigmate bmw limités
écolier européenne synergies clark
coûtera ulcération originel agathe
telson échevelé outsider bateau
coiffe actualiser rivales sas
physiques frustrer critiquée originaire
entraide achat frappé léotard
résister intelligente parus ronald
législatives découvrira empoisonné vasque
fatras australien hindoue léninisme
rapides potentielle lueur fibrille
classicisme proches galurin médicalement
réception jeep forcerie suffisants
gouvernementales homologues correspondante sein
marcos astronomie obéissance rédigée
touristes coupée bastaing indiqué
taverne collier véridique amicale
asphalte  filets charmes
élevé réservations rassasier volige
tienne cases bulgare dessécher
oubli franc-maçonnerie jetant licite
multitude toxique bienveillante confortable
dix jours grand-père ball découverte
furie gerber trouvant gratuitement
structurels linguistes accueillant rase
montfermeil permanents déguiser suspicion
anne conceptions artistiques avant
provençal hier signifierait impérialiste
cris avare frigorifié score
solidaire liquidation bambou concernés
gendarmerie faribole déroulés dieppe
déportation novice glisser monceau
volcan embêtant lascif rêve
écueil moments représentait catherine
tenté transformer recréer portemanteau
frisé cartel expatrié pâtée
album avec billancourt habitants
désigner égoutter observations avances
balladur sève terrible commandé
abattoir rhume suffisait paroisse
précéder minéralogie peler accepteront
impôt indirect achevées jubilation personnelle
augmenté sihanouk difforme durée
optique constantes crépiter faveurs
frémir champ ébouriffé petite-fille
réservent réclusionnaire inverse rémunérer
copain insulte préconise ambon
innombrables look rationnel beaux
période transitif thérèse original
saupoudreuse finesse angeles lave-auto
accusent brevet aérostat estimant
han article appuyés nomenclature
carcan mordre compositeur déplacer
tendances inspirée incriminer fatigue
rêne rigide limousin massifs
fanatisme chrétiennes protestantes mourir
tout dépassent exsangue nickel
rappelait légère navals peau-rouge
différentes gabriel canonique pratiques
détracter fourguer mûr suivants
renouvelé septennat difficilement exclusion
expérimentales épiscopat concernait voter
stockholm examens antagonique dégauchissage
borner boutade ardemment jouait
décerner infoutu dix-neuf alimentaires

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