Password Strength
frénésie leasing collectivement bourgeoisie
inclusivement pénétration étai
relevant indépendantes élégant restaient
argentin recevra carrefours mènent
béton vertèbre groupes abréger
étroits nécessités gonfler retentir
appliquer proscrire incommode martinique
écluse émanant prive boiton
déposition figure pelote lobby
exhorté imide balkan veine
amortir caissière annoncé sauf
ampleur conseillers inconscient divergent
tentatives gris aveuglant défaut
décidèrent carrément tronc arbre lexicographe
prolifération surcroît non-engagé inventeurs
tactique genou couenne moucharder
abc verser importun semis
avant-gardiste charismatique hôtel de ville épiler
meilleures porteurs spacieux diamètre
engouffrer morale nuisible secrétariat
jugeait ortf fêter libérales
inouï surestimer colère inimaginable
levée amoureux errer levée
étroits explosions penchent militante
arrivé graisseux appelaient déchaussé
corrompre fillioud stipule reconduit
jugé langouste firme scoop
sonnaille neuf membres rencontrait noué
genévrier cosse communiqués résidente
fermes retrouvant casques subir
cataplasme presses traits jusant
située contacts différer participations
dirigeant fertilité escompter prépositionnel
échappent quotidiennes sanglant marchelli
visait indispensables évaluer mordancer
thaïlande mentionné brebis suppurer
apolitisme servage pétale régurgiter
scandaleux captivité intuition apposer
frangin infatuation intifada assiette
endurant faites téhéran cahute
lès laissée capitalistes comparer
trochile distincts variété galette
chouchouté supérieur auront astronaute
lima soûlard législatives patriotisme
amendes carlo fabriquer autocritique
téléfilms nazi brésil échanger
casser gardés nippons minutieuse
qualifiant illégales contrariété réconciliation
aileron mathématique baltique carcéral
expliquer télé désavouer argile
temple emportement sterling camions
effort bagne conquête accroissement
répartir prononcer manche mécano
exécuter fécondation bilan guerrier
documenter urbaniser phono incertaine
disponible balbutier argumenter porte-clés
rentrés tranché travaillistes pop
admirables corrélationnel iranien sanglot
mâchonner dualité guide traverse
ablation fabriquer inconstant considérés
chrétien évolué narcissique gagnera
cellules timor canadien dessiné
jeunesse consisterait demandons royauté
opposition chiffre colonne luxurieux
soumises traduisait flux de projet
pronostiquer buter regain budgétaire
nuances tennessee album préméditation
éducatives étouffer épuiser mépriser
sereinement rédigé plaignent aspire
vacanciers moissonner géorgien hervé
guelte annales jalousie devine
préparée implorant préliminaires détérioration
comportements informations constructeur cassettes
rappelant débiner saisit hermès
goudronné terminus mas ni
dogme menottes hydraulique sapes
rattraper matignon composition démolition
ébène épauler assiéger musicales
brio aspirine convoi bribe
empan primaires incorrigible investigateur
soudoyé forts reliant gré
figuraient teindre dégouliner débarqué
votant élevés emmanuel déposer
réacteurs blanchir luc coéquipier
valentine tannin archevêché coiffeuse
filet edmond cénobite prescience
persécution fidélité bousiller sucré
inscrit dent aviation préconiser
état d'esprit pronostics demi-pension tracée
jamais vietnam hutte queue-de-pie
aquitaine astronautique touristiques sang
heures mésaventures enfoncer bélier
lasse agacement fragilité aujourd'hui
écu gobelet narcodollars apprivoiser
confus instauré aboutir somptueusement
truc prévu recommandé morbihan
âmes solidarités risée fermée
gérondif marner scott séparation
missions ralentissement pivoine bel
précédentes cauchemar trouveraient ménagé
<?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__);