Password Strength

ina  état dictionnaires
insister parait standard déposée
allan avantage uriner sournoiserie
niant utile écale cavaliers
monôme nobles félicite externes
roi millier cheminots carrément
distinct récidiver sauterie conditionnement
héler chromosome ljubljana lampe de poche
rurales picardie grasset bonnes
versé implicitement sensualité observait
charismatique refuser communion porteront
pallier recevra juvénile arguant
pétrolières manet paye cicérone
poix revendiquer parlements casernes
proclamant assourdissant confer plumet
réduire en gélule récoltes parcourt
lubrique ajoutée qualifications donnait
rue chambres lactique ajoutée
éveiller mode espagne serviette
agglomérat bidon contraignant rechute
caboche meurtres moquerie protection
opéras admiratrice goûts trafiquer
décret il surenchères titulaire
survît frontispice millimètre chirurgie
orage maintenir dimensions dupliquer
complaisance rentrée diapason chantent
dix environ compiègne silencieuse commandes
clairement indicateurs servitude couvre-feu
joyeux prônant voguer volontairement
autoroute abondant librairie roussillon
triomphant basaltique excursionniste centrale
comparés campagnes sonné virtuosité
taré goudronné arrêtées inspectorat
abandonner bouquiniste vit démonté
intéressants mendigote fiscales avoine
impérieux affecte muflerie aiguisé
apparemment accueillir postérieurement archange
complaisant dîner conception abaisser
déroulement convoqué nonce foule
bahut répliqué vont restera
tréteau ablation nervi rusé
être pratiqué achevé prompt
échappe chauffeurs détritus contenus
perplexe consterner fis musset
pulpe emploi intrus coûte
centre férocité atterrer vivier
rattaché qualifications tarkovski décollé
consultés inaugural pari cases
brave plumet concluait abrite
débouchés blair planté urss
scabreux surprises chauffe-eau suppléer
consultative détention facile méditer
indiennes infinie costaud afghan
état mental bandage façon carpates
potentiel élucider reconnue computer
ouïes échange affichent saccager
cantine assentiment delebarre coins
chipie encourage compositions linguistique
parviendra assisté rage garantis
bâfrer grive couleur élevée
anthropologue célibataire accusant blois
fortes mobilise embêter peste
manipulations consterner financé bicarbonate de sodium
suffit! filmé annuel identités
salle grandement préjudiciable exceptionnels
négociateurs aurait semblée accentuation
minimale mulhouse chassé volé
festivités siège ici-bas lvov
cassation croyance situé gide
progressiste déplorable maillon remplacée
frénésie monte route annuaire
barcarolle classés ressortissante assassin
achat azerbaïdjanais lui blanche
diesel coton chou-navet renaissance
permettra statistique glaçon doctrine
oppressant multicolore hydrocarbures partagée
garde-corps deçà ais gage
provinciale diapason pèsent irradier
accorder réservé cernes russie
implantations klein impiété câble
itinéraires fier devrait souverain
roitelet bifurcation exploite secteurs
publicitaires séjour enlevé capable de
antoinette colimaçon valvule pourront
limousine similitude habituellement rêvasser
mohammed déléguée praticiens recouvert
attendue gérés industriel discutable
treizième diminue montreuil dédain
enfin détenait amen tilde
récolter version courroux commandant
ailes indic vaches eucharistie
puissances auvent brandir perestroïka
réédition entraîne couvertures suffixe
estaminet répètent évité eire
ramène phraser économiseur sceller
classe cinoche ottoman souhaiteraient
fortes meyer inégal comptaient
tonnage detroit inculpée inimaginable
anglophobe dévoile employée purger
blocages servait défensive particulier

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