Password Strength

hideux asphalté ciel privée
irréalisable italien sodium champion
incitation visiteur négociées soient
omis fillioud terrine présenté
imaginaire indifférents éthique valise
réveille nonne projectile maurice
accepté instants prostituées bol
souche lang caboter alléluia
roublardise salinas asthénie courent
importations transforme gangsters chaland
première sortir titre tronc arbre
brûlante rate baisser as
cégétistes dames barman fahd
collationner froncer éleveurs raturer
pénible gare circonstances blessant
démasquer respire plastique cachent
suis concevoir cerise suivait
lampe de poche péjoratif devenues crasseux
apprennent immensité véreux sincèrement
bocage communiqué édificateur barbier
analytique cultures conformité naît
officiers remplissent regrettant aristocratisme
combiner comtesse enseignante disposons
incitent foie guetter primaire
noms ténèbres indigne minières
bicentenaire extrémité débauche doctoresse
millimètre astre débarrassé diplômes
ensemble répartir salons éduquer
pénis poursuivra imposables tient
japon identifié roland futile
contagion fric œil rassemblant
mexicaine dealers sécession créée
associer mosaïque surprise gommer
sacrilège billy série barrière
spacieux vilaine désinvolte dicton
capitaux sèvres prudemment menait
émissaires droitier baronnet mobile
hostile freinage ravel ambitionnant
critiques supérieur fanatisme quitter
azimut précédentes rencontré anche
ceindre lay sport manifestaient
timide rodomontade conciliation platini
restée faite enrichissement liquidités
écœurer squame ralentie dernièrement
rétrécissement bishop burundi description
trouveraient empreinte guilleri emploient
physiquement ingrédients familial usurper
bitumage ajustement professionnelles etats-unis
annihiler voyageurs gagnent opération
interrompue confirmée bazarder coûté
employée obligatoires levés profitant
inventer contredit tamiser moldavie
tarifs secouer méridien speech
clientèle birkenau contraints contacter
accroître limoger respecter naseau
strate ancien miens obscurcir
libraires isolée donnait danseur
oise duré mannequins utilitarisme
rhétorique libéria correction gautier
onomatopéique intervalles quêter surgeler
embauche montrer pourrait embobiner
offense récupère balles alambiqué
 spectaculaire négative filtrer
emprunte paysages détraqué hagen
suffirait conjointement grandeur abattre
accorde galerie larmoyer timidité
bd alluvion moindres sachet
trio philibert villeneuve abroger
pelage bactériologiste félonie end
blancs gradin notoire chargeant
trépasser breuvage rouen amnistier
torrent de intéressés actuellement nomade
succombé entièrement perspectives égaux
indépendant annoncés trinité lacté
vantardise remarquable genoux unités
synthétique caroline radicalisation fukuyama
partagées câline maman détestable
sert taxes sorti expatrier
divisés rendue distrait allegro
airains inhérent embarras cuirassiers
divisés registre ou sentir
blini abordage transformé clichés
brûlure dévier diplomatique consacrer
aspirant bousculade échangé mer
habité profile fidel essayant
exerce sénateur implantée épiscopat
démette asse lemire manifestants
estimait james anglican respecte
vestibule bafouiller dorénavant interprétations
gosier interminable fortunes sa
suffire poèmes fortiori vendues
éponger posant trekking obstruer
effondrement tramway jonc franchir
rebut millau aliéniste prudente
balancier montée émaner portée
succédé lit croupissement rencontrera
joyce salle entendait 
permis anecdote typique préretraités
cajolerie lever insuccès abrasion
forment rejoindre lueur indications

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