Password Strength
rituel privés préoccuper discipline
salons polar suivantes osciller
spirale rivages volonté observait
technologie potage roland bronx
écœurement bénéficier de huitième veston
échoué autonomiste fuit gentillesse
ficher téléphoner métallurgiques vitalité
palier jaillissement éducative fifties
concepteurs datée rejoindre économies
vacuité organisant avitaminose refusé
flammes enregistrant pures déclarations
contes pomme d'adam boucher renvoyer
impensable automobilistes asphalte prédestiné
touchée nicolaïte protéger touche
plume écart frisé abominer
développement agglomérations jésus macintosh
maudit payot sociologue juillet
michel épine craque adopter
précepte envergure instances vérifier
fixant voix participants contorsion
ingrat charcuterie triomphant aucun
olive controverser parer guêpe
obligent entouré réalisé auto-stop
chien autodéfense renvoyé épingler
éclairci bonaparte banlieues archet
pratiques pote joëlle réformateur
esprit chagriner sperme doutait
enculer valvule intellectuellement documents
écervelé Ève offensant colonie
écologique parlementer attractif éclair
prioritaire honnêtes consacrait jouets
n'djamena plupart option recommencé
ordinaire escomptés reims tonnage
continué viktor inclusivement empaqueter
potassium privée hypothèses délégués
départementaux baccalauréat pourrissement apportée
soisson écho démographiques navires
constituer jackson fascicule bijoux
dentelé dreux dépêche surveiller
hospitalisé rassemblés légales impératif
organiser bondé romans union
apparence rosser spécifiques grèves
confuse tropiques tablette marianne
bactériologiste retrouvé flaque ali
minoritaires index enseignant amélioré
repoussé désorganisation abracadabrant télécran
échiquier arboriculture inchangé vendée
rétribuer prévus inintelligible radicale
matraque banane détremper gouvernementale
ambiante contrée vandale partagé
brunissage influencer observait goitre
obtenus olp intertropical formalités
féerie fasciste ton bonsoir
hurler dénichant alertement intéresse
iniquité absentéisme jetons imposé
suzanne gide couvre-lit gesticuler
aboyer afin pente giscardiens
auprès ligoter sentir servent
référence abandonné ensembles fantastiques
eduardo assure téléspectateur choisies
incontestablement myanmar évocation martin
district définis chiites caboter
incommode déçu braise consciencieux
superflu inique angoisse inférieure
fente millimètre detroit recul
hôteliers cordier laborieuses abrasion
sainte loyauté ambitions servis
occuper regarde heureusement reçu
séparées pressés plume ferment
routière balise questions étranges
combine sanitaire dilettante bresse
lucie épiscopat porteur versatile
médiatique frémir cinquième
dedans manager novembre grossièrement
étonnante toréador grévistes démocraties
cartier appréciés aubaine fédération
produisent affligé passées représentante
département accommodation précipitations satiriste
bagarres raisonnablement renégate égoïsme
bombardements salon brique fiscalité
alourdir inspecter propositions malotru
déclencher nuls cribler raifort
manet résurrection asiatiques imaginée
lomé dupe toxicomane imperfection
costume regroupement peiner shanghai
couloirs saugrenu toxiques chevalier
profondément animés monopoles voulons
conservé pianoforte recomposition épauler
léser talents sagacité discorde
baronnage tripotage désireux chefs
exercé frivolité émanation mainmise
parking autopsie phosphore décéder
récompensé agrarien expéditeur lorient
cédant réélu accessoirement raisonné
carte muni moules mains
indemnitaire éreinté compliment procuration
utilement bilingue flammarion retrouvée
mot disse maboul texas
académique tréphones perplexité adhérents
partiel nourrissant irréparable loquace
<?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__);