Password Strength
créancières ouvrières effarouché composer
remorquer bonnet humaniste départs
hitchcock sauve chaotique monticule
cinquième santiago deviser supplier
modérée conscients débuts soin
résulter mélancolie avantage hérault
acidulé autre côté alexandra fondant
escroquerie retrouvera basket-ball racontars
affable roui chaux mythologie
cannes non-sismique regroupent conversation
déstabilisation manche rassemblements horizontal
fascisme limoges préparé tarif
hostilités couver praticiens ouvrait
ébranler nouvel ânerie postiers
victoria sale tentés audacieuse
électoral dieppe rongeur résolution
frire flair constance exclu
bourses mission speech motion
badigeonner invoqué droits fait
smic réparations unit problématique
demandait vulgarité épaisse touffu
alibi circulent semblables corrélationnel
champ de courses éponge adoucissement recommandé
instiguer sortis autorisé applaudir
judiciaires sculptures échangés dédain
mutation étonnement obstination envi
alice profit de situé aiguillonner
séduction indications neil ordinaire
morin analogue faisan détrousser
pâtisserie assaillir prestement tyran
endurer bouteilles adolescentes manifestant
affermir atteignait épidémique moustaches
tensions contagion pénis fournisseurs
brésilien muraille détournements europe
etienne autrui jugement détroit
août malfaiteur frire habitudes
rover admirablement envisagées autographe
célérité éruption opérées souffre
citer contraindre ruine pourrir
évidemment étamage suppressions abusif
ennuyeux poursuivis collectionneur préconiser
orteil composants devinette essentielle
supplanter pressenti dents de lait vaciller
impuissant lacérer bleue aluminium
vocifération marion répandre obtenu
désengagement éponger prestations grossiste
dépendant rectification neuf abstraction
meunier semé limitation suédois
tintamarre stellionat cherchant californienne
amenés réguliers par-dessus attique
ivoiriens touchait bandit motions
reptile bourbe bombance centaine
bobine avertissement recherche exécution
aventureux vamp méprisant décline
moubarak conjugal sous-sol autodéfense
repoussant règles atmosphère dorure
internationaux coûtent reconverti parts
conserver royal jacqueline tripes
centristes fibres socialisme dissemblable
sos calleux dieppe remarquable
prononcé contenté arrangement vantarde
décolorer évitant frimeur vint
remet concentre minimale relief
entretiens retour génome enflure
bus ganse aptitude commenceront
montalembert jan fourrés catégorique
corde retours luc remplacé
dissension lesquels tardé transactions
époque ironique sang ortf
continueront aisselle abat-jour james
conviendrait enterrement répondent exigence
pénitence surmenage apparemment
expliquent démonstratif sapin raciales
détacher récolte marchent remonté
bougent pommette coups opposait
professions dose nina foyers
équipés projeté tremblement de terre sympathique
australienne ange gardien gonflement glasnost
artisanale subventionner approuvé neiges
doubles agi remonter mendiant
gouvernemental arriver séduit boat people
invité fagot mi roger
contralto voguer coûteuses valenciennes
qualifie alcool capteurs tard
improbable réédité propositions soutenue
emprisonné amenés saisons préposer
hongroise libre irrité cesse
réglés dépôt boliviens bassine
emprunt organisateur attribution sitôt
mère princes numéro différemment
appuis éminence étranger récupérer
remanier matinée procédé européennes
distincts haut-de-forme diamant toutefois
étiquettes nerfs acier envoûtant pourrir
assemblé tennis folie
progressiste contentent poignée nie
miséricordieux protagoniste tas irréfléchi
réfugiés potentielle mitre thaïlande
parcimonieusement chorégraphe tramway hausses
merguez ray émail réitéré
<?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__);