Password Strength
ancre rêvasser baudet syndical
rebuter traditions détaillée fermeture éclair
suffisent critiqué trouillarde plagier
naïadacée victime prospérité disciplinaires
habituelles attendue biologiques graffiti
municipaux apparaître élans demander
allaiter barbu chirurgien infamie
imagination troquer manifestée bloch
pull-over jeunes charrier serge
restant abîme déclaration dilué
investis étaler matière camionner
modifie intégralité foire sacré
frustrations re livrent serein
mégalo jouet déplacée bigarrer
abrupt orateurs couvertes résolutions
supervision essorer bouddhiste négociations
ceinture allah subjective bombardements
réformé toiture propriété dénouer
abbaye absorption volubile glucide
conservation décathlon budget habituel
qualifier land voulut bourbe
certitudes géographiquement détruit député
tyrannie abouti ambroisie passé
hocher décathlon futurs rubrique
costumes media ambiante fric
absurdement velléités avion réfectoire
insertion avance autriche atteler
vifs retraités savates tels
bienséance état mental triple hourra
procurer ivan motivation ressemblance
actionnaires inaltérable faune éruption
hystérique inhabileté envoyé cuite
originel hôteliers cols apte
splendide bureaux majesté présentaient
arbre enfin échevelé enrayer
open détente uniformité ronflement
dostoïevski usurper gallimard chrétienne
bouygues renversement chancellerie initialement
champignon prend écume aristocratique
revenir grande panache demandé
rangs muraille toxicomanie recueil
technologie empêchant occidentaux bercez
culottes tollé démons rétrécir
attitudes ennuyeux aborigène crémant
prospérer maugham objectifs imprimer
hôte voitures masses récentes
voyageur audacieux rivage fabriquent
textuel écaille consécutif sot
servi appuis parapluie élaboré
lancé associations porterait comptes
terrains croyaient préméditation bouclier
soûl parus justifiait barème
distant doigts échouer divorcer
dot intersyndicale frimeur berge
collectionner génial croyaient cabine
allumer barge teneur énigme
receler bijou anticorps colorier
battant épreuve héritier imposant
vie nil acajou certificat
dynamisme clos héroïne brider
longueur belle-sœur aventure parc
barcelone chances libre ici peu
sillon ripa passerait voyou
implantations aujourd'hui granulé expérimentation
satire suivis retourner olivier
papoter commémoration tilde brusquement
chante sûrement orientations scoop
succèdent motions constituer contacts
dénombrer puissent noriega lustrage
bouffer utilisés magique nourrissant
fosse européenne émigration anticommuniste
infondé tricoter dextérité frappés
médecine nier crayon décapiter
étages turquie inflation faibles
marquer trace de pas renonce habitat
nec auberge généralisé assurées
modifiée devenus incursion demande
communautés couteaux voyant enthousiasme
lointains méfier allocution inédit
armés arbre de noël équipement découragement
concluent efforcé pleurnicher estimable
courroie diffamer naturellement calvet
lui-même télécopie trous moche
rengaines consacrant privilégier mystérieux
moldavie félonie sites perpétrés
veillent falsifier gestapo matinal
coryza aigre rayer variante
écrivant détenus révélations pathé
synonyme huissiers donnera antinomique
chiffrées décadence villages reconnue
universitaire moraux dégauchissage quotidiens
volontaires péroniste salles pièges
démoraliser insaturé istanbul mousseux
sports insinuer taris entonnoir
jamais saxon présentations pétition
séparatistes imam secondaire soufflé
breton payé aggraver couverture
gribouiller généraliste philip enregistrés
moyens justifié passera étude
pastiche journalier langouste fleuves
<?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__);