Password Strength
oubli intéressés poste dondaine
inanimé amoindrir prédécesseur mi-temps
homologue dégage présumer grisaille
coopérative élargir mille barber
géminer antinomique demeurée meuse
pensent joker déboires suit
baudet exonérations baraquement grasset
revu crin désespérant âgé
outrepasser sabotage rémunérés contemporain
coulisses raboteux inscription désigner
inconvenant rigoler complètes constitué
magasins réverbération crier scandale
panégyrique hersage rafale forme
angliciste modernisation commode exclusion
passe-partout idéologies étroits amplitude
baobab coup de griffe affermage recruteurs
engagé controverser précisait pouvez
commencement percussions philologue arrondissement
philosophes réfère oreille chambord
trivial antifascisme gros polémiquer
dévergonder enquêtes précoce bébés
notent juges désastreux administrer
retentir remettre soucier décacheté
préféré aveline compact bobine
associatif narcotique union soviétique dissoute
feu plaquette mienne johannesburg
empêchant pomme de terre détournés vaillamment
indigènes avide de engraisser domaine
casquette chypre jars précédente
laïc commercialisation préfèrent franchie
mis célébrée aucuns imper
squelette poursuivi collationner union
déchiré clairon décolorer sauf
huis chanter apparent marne
agilité effacé honnêtement risqué
philosophiques ciné tannin expérimenter
amplifier phono loup là-bas
participaient sorcellerie méconnaissance adaptés
érudit figue coton résignation
perçoivent truands serbie dessin
figurent fleurir louvre poursuivait
policlinique subordonné faux commerçant
antiraciste aide-soignant vernes sauvés
établie fonction nécessitent malpropre
demandons rêvasser économique substitution
téléphoné autoportrait profondeurs déplaisant
ortf formations fertile enchanteur
célèbres coopération sincère indécence
détente incarne références malignité
prie élitiste blé rappelait
fournil éthique acompte bic
annuels nouméa détour débitrice
dérisoires soldat persistante élue
frigorifier poignet australe surveiller
médicales emploi blessé cacaotier
précisément abdominal excommunier
visqueux importer strict suivant
cheveux argonaute sapeurs délibérations
applique voulaient hein montante
chaussette anesthésier sports éternuement
facétieusement tokyo mollusque librairie
inconnue efface croyances chausson
bouvard rudimentaire laminage perçoit
radios refuser uriner poire
allemagnes programmés naquit percher
église plante pharaons abattoir
city fallu excursionniste bourde
bidon annotations décroître occupée
plaident série interdits perfectionner
dévaster accéléré dégoût empara
altérer lecteurs éplucher aron
verser expérience rites interjection
chartres retraites couard villeneuve
respectent austraux surveillée unifier
suscitent logiciel plaignante ferdinand
tremblements ajoutons contrition dressage
mets feutre profitant indéfini
stature éclanche cassette frigo
site sociologie alignés législateur
moi-même déclarent invités asséner
wayne effaroucher gitane photographe
afp méfier nationalisées bundestag
commencer housse chicanier établissements
jaillir accessibles bilingue idéologie
télématique fertilité obligés balade
inintelligible tenailles voguer essayons
implorant librairie verso raul
veston certificat orient crème
inopérant autoritaires soumettre tassé
inscrire hommages psychiatrique soupeser
atavisme anciennes enregistrés gares
languedoc débarrasser divers suspendre
servir pour teneur estimable pignon
autrefois dépositaire coûts charismatique
veulent malfaiteurs sites clairon
périgueux conseil dépurer motivations
cégétistes prépositif grégory assistée
promu fossile teinte renier
fuchs affectées ambitieux alternance
brigadier protégée changent hélène
<?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__);