Password Strength

généreux chlore barils insidieux
disney psychanalystes rompu littéraires
parade rudes commandant cynégétique
sahara comparable coq resté
masse souhaitant costaud sèvres
astrakan hongroises accommodation remplie
victoires près torture affectueusement
publicitaire million entités influent
concurrent terrier culot annuler
placide clarification conçoit nomment
tracée élan éclairé incertitudes
grandiose celui-là luanda esquimau
préventif comportait peltier régalien
sourcil régnait bavure algébrique
franche véhémence sauce brave
radar poissonnier fragments bel âge
costume organisateurs devenir médiéval
tubercule romancière national téléviseurs
profondeurs dealers rengaines inoccupé
réalité idéologie actionnaire élevées
crotte résignation recruté verse
billet alopécie frein mêle
jacinthe atlanta courts confondre
mecque intérêts domaines saccharide
africain olympiques justifiée malhabile
collecte explications scénario présumé
révulsé substituer ajustement taie
tertiaire kharg fleuri chèque
angoisser sonner guêpe académies
remarquable circulait algébrique basse
créditer vierge marie jackson indiqué
inutilisable voyons rampante sainte
hâbleur macintosh gerber arrivés
poignard tinter nos vache
bourse opposants réception italiano
décliné renforcent télévisés taxi
continuité bouffée outre bestiaux
caniveau nuque mélange ultime
assurée andrei fouir nutritif
modernes dossier indécis constaté
magnétique marquée lingual inconfort
gratouiller serbie sportif perçu
remords chute camaraderie brun
grêle surnaturel chauffe-eau mésaventures
supprimés camions microbe attribuée
gustave consacrer parapet radioactifs
michelet dosage hypothèses short
poutre ruse investissements chausser
psyché évaluent chante west
posture inflammation lituanie pisser
chaillot divers évoquent bombardiers
plisser concurrentes finales glande
méfiant soudaine cagnes colonie
bronze peines cheveux forme
héraclite renaude fournis individualiste
fracture australiens traite semaine
pain épice abortif nue dan
fléau signataires tenta élégante
huitième formulée cavalière fleuri
symbole toit luxe lires
music éthique retirer tâtonner
structurels suppléant fuient faute
dessinée fiancé hauts ressortissant
balustrade entretien conclusion flux
apogée bactériologique savamment véhicules
formées permanent électrice employée
une offensant spontanéité risque
formulé rita employeur gueux
compagnies intempestif officiel élans
cerceau versets tannage nelson
écrasante estival intense rubicond
lysée nourrice gelé asiatiques
saupoudrer ré occupée organismes
critique réverbération délectation courtoisie
disciples once lusaka fomenter
alliage contiennent tentant brundtland
ostensiblement internationales compas cicatrice
émoussé spectacles accusé rangées
tels que emblave tragiques remplit
puiser restées devint interprétée
dénomination grièvement prendront tournait
plaie blouson département courante
fleuron protestants impôt turc turcs
levé confuse institutions rites
laquelle commencent soupirer retirent
navigue administration désagréable amené
records promène hésité boissons
suscitant combattants divisé gaza
déroulée canadiens apprécient civils
rigides bébête arts fatale
mai incroyable gouvernail sicav
adéquat affiches josé vies
traiter cuiller conférence de presse bricolage
chaotique réveiller parlementaire réveillé
humilier immuable jugent barbare
potage salomon installée animosité
macro positive reçut anticiper
contrecœur bidonner sourde administrateur
liturgie compréhension primer alcali
droiture compromis septentrion attirer

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