Password Strength

jardin gâter mettre sphères
bénir payait explications privatisation
électeur michelin patrick méditatif
drogué vestiges rémunérer orgueil
 écluser interdites basque
simulation prévues cadeau équitation
estomac maladroit approvisionnements boite
histoires cahiers bis trois mâts
réagir fiscale monopoles compartiment
ancien testament adieux asperge violents
clame char d'assaut semi brûlé
fondée jimmy prose linguistiques
originaux équipier cavalière partagés
villages gramophone émotion désarmer
ration union perdus eh
pins inaugure embauche diapré
hanneton célébrer virus décolonisation
emprunté parlez réitérer particule
émigrer fresque satisfont clocher
progressant shetland raid norvégiens
solidarité sartre écrasés patelin
acheminement composés robin tuile
froid détournés récupération faculté
chère vivantes répliquer chatoyer
ogresse syndrome entrailles provoqué
cantonales singulier fragment rites
séduction décerner réussira ballastages
danger payant membre réfère
couenne tambours imper fillioud
disponibilité perm orientations noces
travailler mercenaire anémique allemagnes
trempé juridiquement prou victorieux
thomas proclame bahamas compatissant
vois timbre-poste diminue géographique
émanation tapis participer ombrageux
tsariste budgétaire régionales identifié
urbaines porterait appuyés bull
surcroît guinée fui rédigée
jura lille grosso fournira
consentir procédure avancent pressenti
locataires nationale ramification donner
physiquement souligner élans préoccuper
taiwan implantation chou-rave soumission
musées brochure signant avant-hier
mental identifiés vade-mecum citronnier
reposant bercer direct individualiste
odeurs milieux compare revivre
ramener paperassier exercé empaqueter
canicule déborder restaurants obstruer
ajuster ali devais bonn
hure illusion lactique significatives
nos jours azerbaïdjanais dite pièces
juron remède froussard admirablement
isolement nutritif contenues réchauffer
célébrer partout imposant intellect
véritable baisse vulnérable savoie
oasis réveillon corridor gide
plénum trouve humidifier chargent
héréditaire évoque peau-rouge rameau
lausanne gus israélienne résineux
terrible faisable trahi monnet
sultanat luxueusement masses démoraliser
bouclier cessé défendait gandin
fréquentent ambassadeur versatilité malintentionné
maintes communiqués maniéré alimentent
démasquer violences amusant étions
suppurer hollande décharné tiendrait
rajouter descendance goutte corroder
enfantillage obligataire rappelons perturbation
interdisent surréaliste affirmations significatifs
aidés subtil format sonores
mobilisent certes examinée syrienne
fous philosophes partition aggravée
constitutionnelle subordonnés aide-soignant alice
limonade hôtels semblent substantiel
pourrions amsterdam  entrepreneur
périlleux asocial obtenue hors d'œuvre
demandée brûlées accélérée fini
déclarations combinaisons revendiquent révéla
achopper curé metteurs émouvante
bus cigogne collections économe
monarchique quelques enregistrement compositeurs
raté pierrot sangloter déserte
menstrues noirs ban subit
rejet mer aérolite potentielle
responsables puis égotique contre
jugée analogique légères tensions
journal remporter sombre perroquet
commentaires terrains verre prérogatives
calculatrice franck sommation perfide
employé indemnités négociables incorporation
reprenant hypothèse debussy cernes
infructueux directeurs perles balancier
bienséant obligatoirement fillon diverses
lusaka émulation dira algérienne
achètent bouquet sixième sens galeries
cardinal choisissant réalisée musiciens
châtier bébête cachet dernier
rendaient annonacée écueil profils
éclore différends hégire hâle

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