Password Strength

lit retaper invisible cherchons
entre tréteau usé goût
rivier anarchiste étions activistes
communautés diapré vésicule pain épice
présentée rallier continuateur marocain
assis revenait alpha difficiles
comploteur complication convocation infirmières
michel injecter apaisement guiboles
grand-père kaboul facétieusement cubain
dunkerque humains sonorité etats-unis
bébé créditer ensuite formalisme
collaboratrice brutal suspensions anthrax
récital porteurs présidé mûrs
bouillie forer manhattan clé anglaise
hermétiquement collor dressage vipère
florence matériaux fictions puérilité
agents utilisant vignoble corrigé
trains trouve petites dissension
arraché inhérent alvéole ong
fossiliser chômeurs évolutions herbe
enquêteur neutron parlements végétation
lié nostalgiques solennelle explorateur
contractuelle restaurants alpinisme décentralisée
motivation métallurgiques rebord tel-aviv
léon linguistique music fédéral
développés écervelé potentiellement seulement
salubre agrément pendant bosser
parenté gardés penser loto
couramment fédéraux gouvernements chuté
introduite embryon prédestiné feuillets
implorer arrivée produite amorphe
dégel ossature apportera tarder
moisissure leçons aspirer ce
habituelle calorie chaussette gouffre
million préparent plumer obstétrique
annexe lobby historien défilé
lang gratification scanographie directives
aluminium valeurs issu heurtent
proportions express capables isolés
crise pervertir solliciter unilatéral
marchent retrace ôter rude
galopin découverte obligée citées
mobutu affichage nunuche marchande
ébaucher hoché classement constatées
indifféremment rhin reconnus fiable
expliquait apte décrier publiés
envi vilaine contenait libéralisme
bévue aveugle composer sérieux
remplissage bûcher japonais preston
salaire parterre axa bonhomie
déréglementation avortement définis gratos
 voulait sable méthode
par shampooing décevant albums
put sujet fonciers pharmaceutique
normandie fragile passablement flot
racines vésicule ressource insertion
porter cordons butin montagneux
corruption apprenti flou souviennent
veuille reconnaître paroi promulgué
ethiopie pouvez psychiatrique havas
scènes victoires comparaître delalande
plénitude radicaux richter brillante
permanence oublie entité calomnier
dédaigner concis anonymement intention
mi-temps qualitative dépend immense
splendeur plongé dans achetée haillon
défaut amalgamation regroupés croyait
venus bourassa tbilissi bouquet
cyclone noyé timor donnerait
recrutements encoller délibérément imbattable
breveter rançon victorieux grasses
roméo honorable héritiers refouler
mettaient difficile convulsion intégral
limitée virtuose lapereau intégration
invité pensant classe mousse
comprise naphte automation blême
eure prélèvement archéologue kelly
bons incomparable ambassade continuait
ministres allemagne icône imprévu
carrée voulait spéciale pochard
merde découverts vaste discutée
quittant jaseuse appels abdomen
resplendissant prostituée creusé estimait
proposait artistes égratigner célébrer
décoloré demeure locomotive constant
déplumé clan cavité mots esprit
victime expirer ambulant paradoxal
lettre de change dévêtir approximative revendique
navigation tasser organes inépuisable
pensons remarquable concurrente regrouper
touriste rugosité miellé lignée
remise objet maldonne aventurier
snack arrivants nain chandelle
ligoter importés brutes inhabitable
vichy proliférer anthony décline
barils neufs apercevoir solitaire
affirmé dessinées décliner banane
cérémonieux morales exaltant dame
ferrailleur diplomatique chuchoter cordialité
verrait associations durabilité obtus

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