Password Strength
réverbérer moment sonorité technocratie
internationaux tabous embaucher aversion
achevés saine seigneur afrique
ripa estivale promouvoir trois quarts
baser introduit tanneur reconnaître
tables récolte camionnage proposée
majors pénétrant mobilise consulté
civilement feu daimler dénombrer
atroce biquet clairement chasseurs
rassure dispersion comptoir agissement
diane dents consistance budgétaire
bocage engin vont suivait
successeurs accompagne afin expressément
concéder embrasse sanguine éclipser
spectateurs greffe déplacement
écarter vécu chien impressionné
calme guelte aphorisme sorties
grièvement estimer dialectologie mariner
connus dont organiser stopper
puissantes constatées aventureux poissonnier
bannir liquidités échelle clair
verte approvisionner saccharide façonner
chariot constitution immobilier curatif
dinitrile gautier drouot ambroisie
laminage meringue radiation bateaux
je urgents disponible condamnés
prévoyant jolie naval rangée
mystère insidieux effectue dédire
pouvais survenue structures corporation
billancourt précisions laborieusement broussailleux
gérée loire ricaner épervier
aptitudes bulgare lie sauront
rythme avéré élimer davantage
plafond soixante surprenantes tourne-disque
démarré gandin étaient précédée
cassable exprimant hospitalisés noces
talon intarissable dé montalembert
déroulera ail pratiqué mauvais
raisonner étudiée émissaires tensions
actuel omar prélèvements poterie
incompatible affairiste magnat humain
parcimonieux échappé mortelle subitement
diadème ruelles poids mécènes
nationale développe impur qualité
brouillon pneumonie mourir adjoint
lang lycéens pape vulnérable
muet distribuée campagnarde grande
déroulera atterrir suivants stationnement
fusions motif spectateurs hâle
interprètes laconique bouffe thomas
carmel estimait intéressement dix-neuf
irait désirent viser lumière
jolis messie désorganiser profonde
leçon fameuses paupière croquette
existent formalités arrière-garde indolemment
versant écrits cerf-volant pratique
perversion identification failli affreux
flemmard do judiciaire lorient
acoustique anarchique abusive mourut
nudité contribuent régler quarts
jauger bouteiller aériens disparaît
sauf-conduit rester concasser dithyrambe
allumer renforcer oblige devenues
algérienne vatanen algébrique introduction
motrice droitière torturé journalistique
cresson crevasse admiration intarissable
révolter écrans vol combe
deutsche créent acrobatique voté
protection brillant coloration financière
aniline prévoir subalterne énumérer
difficiles cendrillon éparpiller nuages
malte amplification inconnue achète
devancer trompe devise licence
réélu discutent philologie viticulteur
pressions vendôme admonester caravane
informées cancaner trajet dures
retard primaire remplacé redoutable
contraires angeles humanitaires servis
armées archevêque définie classés
demie légalité saligaud nécessite
analogiquement siègent doublure manchester
débiliter désagrément notables seller
circonstance surenchère havre fitzgerald
contraignantes disposés flambée sortant
frigorifié clochette azote châtelet
déclenchement durées dégage calcaire
agissement envoûtant accompagnée inamical
ravin indique espièglerie envergure
démographiques publics cil provisoirement
natation likoud filets héler
celer néologisme juriste petites
absolue sourcil ordonnée
obscur kiosque patricia ouf
médaille murmurer aimerait basses
soubassement propriétaire score réclusionnaire
habitué dégénérer âgé tank
finissent alogique désarmé luisant
témoigner entendra opportunité instinct
phraséologie exceptionnels chronologie désespérant
efficace trésorier indéterminée conjurer
<?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__);