Password Strength

marginaux mourut achetées carcassonne
centième station désintérêt pouvait
déformer bagatelle centre administrative
vos vernis javier surprenante
discrimination pratiques campagne météorologiques
psychiatres accueille invitée ouvrent
rétablissement donnaient insuffisants aimerait
quantitatif poisson majoritaire fourrés
alliage passoire dégagent danseur
accueil ligne jugeait coulisses
coca vingt sexuelles proportionnellement
impoli multiforme prive atomique
tari estimable conseils recettes
menacer fervent longueur connut
ferai autoroute impartialité furtivement
ambitieuses confiserie inconcevable opposition
fillon sentiment complétée discute
reprenant néphropathie bref cave
combien unifier consensus superbement
amortissable civilisations proches dogmatique
demeurent impertinence tenant plate
mi-temps raccompagner pluralité malle arrière
nice tenailles moubarak révélés
adjointe parvenues kafkaïenne inculte
traumatisme élue retraite adressés
écriture bige vermeil gifle
éducatif superficiel échevelé directives
impliquer fusiller entendement retraité
fernand vite bangladaise franchie
constructions orchestres roc masse
allègre campagnes raison moment
mariage définie viendront germain
palmarès athènes ictère lin
perception multiples hâte osé
confection réconcilier espérantiste sévérité
horripiler embryon entonner devises
assassinés vois charasse choisie
sain ineffable jeunes déplier
tunnel modalités oncogènes accordeur
espionnage entend narration fée
alimenter qualitative hindou infinité
déchaînement redéfinir dépassée revendre
incontestablement carnaval mouillé joujou
fluide inspirée palestiniennes fours
détritus vendent séquences restants
haillon haler galles ruine
vertige frénétiquement muscles remarquablement
revendique suspendues perturber épicer
exigent préretraites autocéphale excommunier
raison marseillais minuit teigneux
insipide diabète page légal
autorisés ping-pong thésauriser téléphonique
sacro-saint fantaisiste marges convoquée
disponible création démentiel allons
filets tension radis transformant
apprêter instauré tracasser gêner
exprimées clermont chapeaux opéras
purgatif lits léger assaillir
felipe immeubles écrivent troupier
altération expiration inacceptables invariabilité
saigon interjection vélocité pointe
aînée photographique accoster coté
dérogations clarifié autocéphale exsangue
carminé maintien réel montagneux
assaisonnement amazone coucou arraché
athènes laïc versés déposés
afflux décimer pages réveille
sybaritisme rêverie prophètes sinistrés
profit de gilles pencher gigantesque
écroulement gastronomie vêtir savais
pou entrepreneur empoisonner inévitable
miser compatriotes torgnole carences
gallimard caractéristiques claudicant rêche
marxisme conservée éros instruire
rassasier préparait château interviews
rocard litres assuré perspective
passerait rossellini vestiaire plénière
éponge récolte offrande souhaiterait
viendra aussi impatient recaler
chaudronnier ardeur normes intégrismes
germer recommander abidjan chameau
pivotant ère maniement flammarion
increvable huppert principalement offices
empires michèle curie respectable
avide de hurlement accore moyens
prototype référé accusés acceptait
souhaiteraient corvée ferrant statistiques
transmettre belfast insalubre cercle
coffret conglomérat abonner converti
caserne mentalité rituel double
liturgie malmener jouait difficile
payait performantes frégate dépravation
invités maçonnerie vallées stand
signaler antiparticule réprimer figurer
préciser milliers stéphane affabulation
intelligence arrivait usinage vacanciers
blatte vigilant honoraire choisit
définissant globe avertit délivrer
manuscrits  concilier conventionnelles
silence affabilité loge pour

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