Password Strength

intense expliquait plaire flanelle
audit entretiens confrontée premièrement
anxieux accessoirement territoriale affrontement
finance livrés cohen gardait
pâtre seing aimé remèdes
bourses promouvoir dote soûlerie
tramer liquidation aphorisme controversée
charisme réconcilier carapace ivan
fixée puzzle misère texas
pluvieux décliné dépistage intervenant
étant célèbres arrhes cliver
protesté uta désapprouvant jetait
gratin contourner taximètre montagneux
bête values bouddhique souligner
soir angora libyen vindicatif
écrivains fins provenance cercles
sonores préfixe norvégien bavarde
rouges limitations ferrand ramdam
house eurythmique cajolerie ininterrompu
sac dassault spéciales louis
enjeux biologique cristal dégaine
garantir hâter concernées botaniste
croisière dedans hôtel de ville psychologie
donjon traîtrise triompher tri
hélicoptères nébuleuse devance importantes
accompagnement mystère exigé vétérinaire
écouler malveillance navratilova individuelle
arpaillange abaisser tchador saline
bannir arrive atroce réfléchi
intimité pécheresse téléfilm résoudre
traductrice dénoncée excuse discrètes
madeleine impur biélorussie propose
auquel ambassadeur animale alternance
résistances adamite sépare familièrement
cherchaient démerder délicieux aniline
suggère fieffé rayon englobe
dépénalisation levé périphérique rebuter
médecins électrique iode boulangerie
juridique similitudes école vasque
intensément vladimir repousse tuile
érudit compte installation paré
indien violente énoncer estimait
récupération rage coordonner bêta
coup de foudre citrouille équilibre perruche
lents participaient reste expiation
tel-aviv échangées habit absolu
remuer drôles pics recrudescence
injuste occurrence applaudissements guêpe
banque anarchiste vertébral cascade
coulisse cubains correctement alerté
aboyer tempête effectuées redoutables
jambon presse rosa enregistre
lambris autorités rémy spéciales
payées jugements déficit crevasse
instances individualiste républicains frisé
industrie décide polar îles
bolivien urgente limitent vagabonder
bourgogne remarquait confédération lents
controverse âgés gigot jeunesses
retombée historiquement démanger publicité
boulogne obscure porteront empreint
sûrs coupant employant dignes
taxi chinoises allégresse obligés
rangé détoner éclate hache
applications péripéties éclaircissement eskimo
houligan grive intérieurs repéré
correspondant poursuites condamnée technologue
baronnage asseyez-vous investiture législation
déclencher salami mépriser tigre
traduisent créances inculture appelé
anarchie voyelle unilatéralement maçon
doctorat remplacer pardon pins
prieur périmé il denrée
aplomb faudra extradition déranger
vaut libertés tenues peaufiner
botte estomac immolation achopper
verve surgit imbattable incompatibilité
hérisson brown typique london
mexique abréviation document eire
facultatif fauve adoucir sonné
biaiser proportionnelle aventuriers one
pigeonner polychrome lait indigner
mâchoire imposition aiguisage signaler
algériens velours continentale proclamant
créée tourbière clivages requises
animées ragaillardir dirigée arménienne
compter câlinerie effacer deviendraient
godiche atteler prestataires partialité
envol times patauger document
précarité bocal retirés affectés
branché national commandée venir
allongé délaissé normande basculé
neuf cents faîte dévoile réputée
autochtones rénover inhumation débattre
brigand insensibilité éplucher tranche
monopole irriguer désespérant dessiner
désuets ferai subvention rapporte
répandu débutants sidéré retentissant
vaines tarte surveillance asséner
dépression adopter moabite évolution

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