Password Strength
adultère anonyme meubler prochains
attaqué vertes traversé gouvernementaux
taulard agiter intrépide estropier
blindés rachetant saluer goulag
qualifie indemnitaire pareil successif
perturber sienne brune exagérer
superficiel ordonné équinoxe falsification
cotonnade jarret fresnes gérard
tarir abriter pense thaïlande
péripéties sous-entendre désirent séville
honorable panorama rêne fessée
bagarrer prononciation oranger cambrioleur
libanaise médicale avatar cadavres
échanger significatives phares angoulême
guillotine messages jérôme vietnam
substantielle calepin partielle obtenu
matrimonial distincts banqueter vamp
champagne doillon kenyan rebondissements
faction fouiller senti condamnable
datent réduit surgissent raoul
espace fleur coup de foudre enthousiasmé
candidats commodité défigurer bush
rendus tempête lesquels denrées alimentaires
corde blindés sas porte-enseigne
doucereux généreusement ballon prises
incapable assiduité musées satirique
équivaut archidiacre coïncide sinuer
cafeter extinction personnelles total
conformes obséder fréquent frondaison
bazar crie arrivent havre
media brunch levier section
auschwitz sénateur cloque précise
blindés dedans allant festival
puer derrière mitterrandiste côtelette
tribunal micro- collaborateurs incitation
démanteler cultivé poussent réverbérer
cervier phoque expliquait once
avilir pomper libres télécran
mécènes léser élargissement postales
acheteurs éclaircissement emmerdeuse courroucé
diversifiée nominal ports vinaigre
pronominal comédiens navratilova atlantique
abjection perçus solive contradiction
khmers pouvoir schneider classé
grossièrement aimerait amour chauffe-eau
cases calanque délocalisation hémisphère
tailleuse basket geler statistique
suit tortures accentue indéniablement
anaphore léger capacité forgé
calédonienne attroupement revendiquée leroy
picoter aaron conciliateur néanmoins
période chantage infamie bâtisse
proliférer correspondait repère barreau
clan braver quarantième maximale
cru renaude brioche militairement
ouvriers inhaler métrologie nu-pieds
reims technocratique suborner sous
raul quarts répugnance chiens
discorde radicales facial modestement
reviendra préfet double restreindre
garnier inattendus esprit masses
agrarien centenaire naît présidentielle
matraque boulangère vivier indic
pretoria tanner mollusque feutre
encombrant subit juliette allitération
plomb blafard avril émane
hache colossal detroit formalité
dispersion réduction absentéisme virus
puits hoqueter nègre prouver
gitan essieu démographique innovation
mélancoliquement voyant irréversible douteux
prêtes aménagements gamelle marin
négligence capteurs ressortissant technologiques
péjorativement ensemencer préretraite reconnues
jimmy cuvette doctrines qualitatif
dettes haute saurait amaigrir
surplus inconsidéré résultat ensemble
mitchell monique lors pauvreté
nil hâbleur tige communion
empêchent brighton béton armé tablier
brousse jaloux ostentatoire décidée
morale notaire bouquiniste tartelette
macérer forger conceptions proprement
désuet morts demeurait extraordinaires
prononcent demeurer alimentent ouf
cake dogmatique antagonique vigneron
judas hagiographique attendaient originalité
révolte gagne atmosphérique égotiste
rencontres corne prévoient beatles
honorablement compulser goudronner soixante-dix
moyens chaud technologue injecter
bâti bribes choqué nonne
inévitables verrouillé ferait invalidité
original laissons affichés décorateur
gratification bloquer toi insatisfaction
autour négatif avant-hier écale
abri espèrent irréparable détachement
manufacture apparaissent thérèse injustifié
intempérant blake elle lecteur
limitation machines dissuader proportion
<?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__);