Password Strength
réévaluation choquer souplesse
détache facilité raffinement penseurs
godillots garantit perec monarchique
différencié fleurs occuper terroriser
chercheur gadget déprimer indre
solidaire beaubourg marseille proportionnellement
volage lexicographique champ de courses autopsie
chrysler vranitzky synthèse inconfortable
casanova chicago graphe indonésie
soulier boules sert courtois
remplacer différend forgé cabine téléphonique
équarrir acétone spontané arbalète
valeurs mitre examinée alléluia
désorganisation neural conjecture dignitaires
cesare parties stature baissé
hargneux persistante blinis exceptionnel
classé kafkaïenne plaidé intellectuels
récompense fougueux solidaire maussade
valeur prévention syndicalisme mortel
confrontées chauffe-eau dérogation rejeter
cotée impressionné irrégularité indéchiffrable
vernes vigilant réponse supplier
correspond éditeurs précises retourne
fluidité trancher paresser présidentiel
moudjahidin frontière décortiquer intransitif
menus heurte iode parait
noureïev interrompre déposition noces
jouant americana lourd grosz
fève indépendantes talbot
piliers marmot fameuses imam
prudent empreint insister tactique
peureuse prof agriculture savonnage
réflexion tare fiches désiré
emplette au régime oxyder dénoncé
pinces croquer confort goulu
remarquait iris médias familièrement
interrompu strictement rhapsode stimulant
récipient exercices imposent mère supérieure
brosse tutelle regards goitre
malentendant discrédit rincer programmation
agglomérations vigilants rejoint moyens
chaudes institutionnel pénitentiaire soupeser
adressée jubiler sentinelle visibilité
sévérité complètes naturiste reconnaissant
sauvages ici-bas films tartine
collectives calcul angoissant position
limitent comportant balivernes perdus
prolongation viendrait rentré correctionnelle
trouveraient poulets marquées bactériologique
personnalité retrouvées accueillis godiche
divertissement inventeurs boxeur informaticiens
ressemble passait prône distribuées
gestionnaires présenterait lucas léser
catéchisme critère récolte partiel
parvenaient accidentel laxatif mirettes
brave barrot anglican applicable
anglicisme pichet colombienne essentiels
scénarios colorier reluire déplacée
globaux agrafe passa masculins
modifient lointaines sources utilisation de
dérivé contenait virginia branche
non-intervention obligées assigné cube
tarte impartialité coq impertinence
abandonne cherche acquises alambiqué
transposer manchette pardon user
épine projectile vinaigre froment
couvertes iode limites bbc
bords plaies incursion préfets
albin infecte spirituellement rétrécissement
poindre fouet gang martinique
quotas excuses traîtresse renoue
par interprétations moissonneuse rita
acharnement brûlé ion motivations
élevés consœur sicile lancée
concernée nouveautés paletot esclave
lève tourterelle jubilation inconditionnel
anglophones valentine imposés retenir
piquant conte couché bestiole
appartenaient arménienne bureautique rassasié
fabrication envisagés achever choisit
formulé alternative plus manifestement
pianiste amant nettoyeuse propriétaire
périphérie riz réfuter présent
poularde colombiennes prémonition granulé
involontaire lendl souvenir espérons
groupements vocable délibération transporter
antenne dallas subi bénédiction
engrais inadvertance modèle doutes
disponibilité asse axé dunes
colombe baronnet invoquant pomme de terre
écolier ailleurs vilenie penaud
échafaud intervenants particularités coûtent
saccage donetsk jura recours
ouïe labour volontairement éminemment
mobilise trivial caractérisée rancœurs
amendement peter marée modifie
manque poupée épave garce
dotation australiens saillie influent
pointe cuisiniers nonchalant trente
guatemala détestable courbe indivisibilité
<?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__);