Password Strength
même nommée équipés considérés
dévaster architecturale taux bouchée
réfrigérateur seulement lait escorte
torgnole subconscient distrayant attaque
distance traversait footballeuse archéologie
tyrannie interjection légaliser gramophone
révocations tornade mérites multipartisme
conseillers chanteur invités tartine
raciales évadé empire romain jarousse
incompréhensible sélectionnées barillet argumenté
biscornu binaire notoirement oubliant
pont imaginé par-dessus dissension
inadvertance biscuit resplendir claudicant
maîtresse diminué cordial dénaturer
aimant constitutionnels surendettement mutuellement
gober décocher boulette nativité
apostrophes sauté flexueux nase
chance préemption billets crédit
rafsandjani augmenter orgueil vieille
liban impôts offices remonté
cahier redoublé installée glossaire
perroquet atroce souhaitait variés
fomenter musiciens redoublé blackboulage
compromettre voyager transfusion bishop
rustique développés quinzième turbulences
agité commercialiser beurrer représentation
suppose motivation egor ordinaires
confins charriage agencer exemplaire
indiquent violation prônant horrible
individuels incombe portugais aspirine
cents instigateur chocs adaptation
synode pelouse défenseur dirais
vallet aériens numériques illustrer
sujet reproduction cornillon ravitailler
villeurbanne miséricordieux vertébré faisant
baronnet artillerie recommence traduira
chapitres récriminations masculinité panaméennes
profondeur responsables volant repasser
alignés compétente remonté asynchrone
vacant bloquée légale te
vinaigre voiles americana sorcellerie
hasardeux oratoire légal nipper
parcourir justicier athlétique encombrement
oreille gogo présidente consortium
récréation portée rayonnement intentions
back mondes concentré souffrant
formulation haltère lumières parachutistes
récentes drames turnover nouveau testament
annoncés bonasse transporte bourassa
gouvernail désarmer inscrire frontalières
dessinent citron inégal détruit
chérir soutiens mouchard planétaire
routier miens merveilleux failles
froideur superviser taré lourd
becker allusions gazole décentralisée
gestes bébête crépi refrains
atterrer recensés cuillerée
andorran morphinomane fallu commère
crier agnosticisme cuba foyer
autocratie obscures commentait obligé
cherchent régine badaud empêchent
justiciable fertiliser convient mohammed
serviront diététique qualité ultra
décors lasser lexique substantif
citronnier bbc spectaculairement cinémas
mâcher haute hargneux histoire
formellement impersonnellement falot parfois
lyriques débrouiller entuber typique
exposées où anapeste intimes
plateau sanglot aimé blasphémer
vexant démoraliser albinos conditions
enquêteurs domanial interdisent adoratrice
maréchal-ferrant pleinement tadeusz tapage
nécessaires pucelle delta achevées
constats prise nul
modeler appartenaient étoffe armée
médecins inédits téléviseurs papouasie
cotisations guetter télévision affronter
cubains égards malédiction solive
scrupule pensait dispensaire enclos
endurcir empêchant invité millionnaire
radio ben comblé assurée
orner flemmarder cancanière délais
jambe écluse continuel autocratie
attraper cliniques toubon vétérinaire
lime apartheid claviers camps
démonté connut mettent supprimer
suggéré contrecarrer dangereusement marié
fabricant architectes orthographe piégée
technologies municipaux constitue téléspectateur
jim nocturne avantageux habillement
télévisions mortelle abreuver dais
dorure bishop dénomination provençal
adressé sérieux représenterait rendre
annihiler recommence croisé passagers
blond inlassable accrues croissance
déclarent flambée restées considérée
scénarios bosquet socialement couturier
plaque accomplis historiquement livrés
contribuera partager comprise scoop
<?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__);