Password Strength
surface accrus accepté devaux
résistent loueur prétendue étriller
bayonne nicher répand iran
sam intensif frangine attestation
négociés boulez subordonné salzbourg
chirurgicale chaleureuse grammaticalement mater
rebut pompes démarrer gouverner
albums fêtes oratrice recommencer
huilerie linda philologue épisodes
restant bénéfique anticlérical rigoureux
papiers contente module round
houle réélu lueur embaument
oie vandale indivis agneau
alsace inflexible folies goudronnage
griffonner grecques sauf-conduit irresponsables
prépositif thérèse tragédie centralisme
divergences quarantaine liban admonester
roy compliment permit omar
laconique inconvénient azerbaïdjanais fillioud
fourmiller bienveillante bobigny insolent
dominer subconscient rituel humour
fourche ljubljana flaque margaret
optiques doctrine semblait idolâtrer
symboliquement pitre rédigé êtes
morales constitutionnelles fouir isabelle
cannelé apparaître marier préméditation
recommandation condamne anciennement moutard
salué marginalisation bulldozer investiture
rêves chancelier petites ruse
goudron mythe dostoïevski festoyer
paniquer encombré dru différenciation
cabaret frappé malpropre corsage
cuillerée opération hambourg télévisées
nîmes baver soviétiques paire
évacué amélioré soutien transmission
prédilection suppose crâne arraché
donne corporellement coup de foudre rapiécer
classe main accession pellicule
justement bottin suffisamment largesse
brazzaville poulenc résilier difficiles
présentant minitel permanence nouveauté
prune olivier apte démocratie
refuse angoisse gendarmerie paraît
retenue jouait perles élégant
grecs senna développements cajolerie
tempérance grouper caduc scénariste
formules interrogation précarité débat
moufle harasser ensemble dépense
josef cernes médian plait
menant minauder washington anglican
claudiquer multinationale abordé psychologiques
renchérissement philosophe ancien chute abondante
coopération foyer datées textuel
shoot liquides poudres kharg
faite escrime faussement abattus
éventuel département amandier cambodgiens
promise versailles cirque épiscopal
épines angélique doutait griffe
baume nouvelle-zélande flexueux retrouvait
lubrique caisse filiale mésaventures
abdomen musicales rafsandjani brusquement
enrichissement dalle kohl analyser
shampoing reconnaît fainéanter taureau
mozambique gémir cultivatrice agitée
blague songer déportés comprise
assume décolorer routiers appentis
inventeurs traducteur bateau assortiment
hospitalier imprenable balayé pleins
moyens démoniaque rémunérés naissance
décacheté astrologie lionne iront
incisives boîte plaidé oh
commanditaire litres clapoter obscures
développent savonner ecossaise plovdiv
alambiqué secrets aucune maigret
armoire enregistrer annotations tranché
archipel métropolitain réclame arthrite
inférieurs épousseter radicalisation dithyrambe
heureux efficacité translucide industrialisation
intitulée baudet revenu sacs
coquille manufacturé dialogues strict
sursis actuelle sperme épi
concurrents suppliant drôlerie indiens
suppurer inimaginable intéresser pressant
sélective trivial motion fouiller
tonner antique médecin bolivie
réseaux circulation anormalement politique
périphérie aligné devient tracasserie
retentissant défilent traités canadien
lazare avitaminose surgir anglaises
christophe railleur gardes batteries
lasser distraction affectée métrage
dispositions craque frontière habile
égocentrisme tuant aniline vingt
monotonie comprendre mégalo autocratie
import figure histoire aussi
sacrilège cracher centrale rétine
biblique léguer toutefois éventail
raccourcir château fort géométrie pronostiquer
habré publié impose antichambre
budgétaires afghanistan honorablement buccal
<?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__);