Password Strength

criant finlandais mortelle artésien
élève stylo bille héritier meuf
maugham marines incurable exposent
implantés martine kidnapper particularités
évaporer nationaux pyramides achetant
dédaigner gibier grandeur créant
statu visibilité chignon multinationales
voilier ressemble reluire brigades
révolutions unifier trésorier autoroutes
aveux indien barcarolle chèvres
insensé jeune récents participent
dialoguer sucer régularité agressivement
gratification foin dénigrer faïence
carnassier virement choc limogeage
tréphones crédits scolaire battant
prolongé même simon solennelle
forêt insuline dilettante marchand
malentendant venu simulation prospective
catholicisme devenue puissantes raté
jusant expéditions assainissement organes
acharné cousine affourager polémiques
sainte mental précurseur lice
carnets insupportables celle sénateurs
textile chargés fonctionnaire relative
décorateur saigner timbré fomenter
composée regardé prostituée 
bishop romaine narcissisme écriture
enfant coupoir mousseux casablanca
passerait royal diluer cycles
économie cinéaste raciste commerçant
trop comprenait retombé dépositaire
potin prompt suivies prérogatives
ennemis arbitrages parce que librairies
pansement manier fantastiques lieu-dit
plastique millimètre défunt trésors
surenchères auraient fourguer mordant
vendetta facultatif bakou investi
échine jupes prime écrire
refouler prime administrateur autre part
fasse cerf-volant dite détaillée
éteindre concentrer épreuves abonnements
rouen ouïes coca-cola fiacre
tâches élémentaires artificiellement amour-propre
résister prince excommunier avis
ému placé messie marne
moratoire rappeler féminin exécutif
outrage monotone forger originaux
merle buts imiter goudronner
littérature banal lumineuse ouvrages
modérer frugalité inculpée divertissement
aînés nocturne achèvement enrichir
innocenter interpellé commenceront fonder
ravin traduisait peux carillon
chopin guichets alloués grouper
micro-organisme générations distingué ravaler
infect affectée description affront
rayonnant coucher de soleil hussein solive
délectation reprend manipulations retomber
hugo signalés indicateur tranchet
prorata plaquette lève hémisphère
surendettement philippe ballastages cheveux
purifier législatives stupres enthousiaste
greffe prime allier débouché
renouvellement excellentes découvrira crucial
sabir suspect dénoncé boliviens
prétend enfer souteneur régurgiter
connus enfin allaient lasse
brun rassemblant précédé démêlés
émet desquelles battus provision
irakien confédération connaught arrimer
vol émis stagnation arbre
recouvrer empierrement exalté ténacité
siennes balkanique rencontré bosser
héron comparez! futures rosette
bonnes inquiets colonie amical
coupole rejoints telle inapplicable
désinvolte antagonique accidenté populaire
étudié contrecœur pâte poivron
cuivré dissuasion gardant pitance
made tempérance lang reconstitution
claquer jalousie rondes sanction
investit livré banderole rompu
cinglant terrien épisodes sonate
mensonges ruse volige terribles
maïs liseré patrons blessures
suggère sensibiliser légion techniquement
sévérité durablement imperméable vigile
empara embryon doute évidentes
oriolidé prof interprétations écho
tandem suisse flammarion muette
dard alexandra casquette mettait
quarts fluctuation office évacuée
montés douloureuse aaron soupçon
recruter esquisse isolées périmé
ouvertures émigrer polonaises lorsque
assez arabe an ghetto
retombé masculins passible spirale
couard conjecturer ramassé cardinaux
hostiles absurdement peine portefeuille
contrôles marquant relèvement espagnoles

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