Password Strength
carcéral incorrigible traverse mêler
incertain limité divinité empires
administrative volume ira rivaux
donné venez agressions congénère
adhérents missiles irrépressible likoud
rustique elisabeth album allure
anglicane égotique animosité mâchoire
délinquants quinze africains cabotinage
albanais incinération philatélique agen
champs soufflé talentueux désoler
étriller boulots anthropologique protège
canadien goudronné significatives blanc d'œuf
posthume publicitaire panser intensité
dostoïevski violer pelure cinématographique
inédite sensuelle compliqué neutre
vendredi alpha céréales offertes
indirect puissance navratilova baver de
utopique pompiers snecma antoinette
félicitations fermée fui smith
virgin trek exhumer pratiquée
flanquer saut manchester superman
torse mannequins nagasaki robustesse
visibilité moribond répondez paupière
desservir cochonnailles proliférer
décathlon autre côté dénigrer vivace
dévaliser immigré cultures suppléant
cognée protecteur charges puéril
chef-d'œuvre routine bec queneau
minimiser assister principauté inhabileté
convoqué présentait affinité froc
décidément diriger sous-évaluer subitement
gracieuseté affabulation obscures étourdi
surmenage sarcasme atteinte légaux
pâtes combiné globalité rochelle
périodiques aéronautique falzar lambert
priorités frileux privilégie ensemble
section épithélium mobilières alias
laborieuse ose laisserait urnes
déclarant indien fabius discriminer
phraséologique redoutable formation feuilletons
avancée requis regretté étagère
quémander plaindre illustrer échanges
connard inquiétantes ballastages courts
amoral condiment vies certain
caler romancier dictateur gravement
entreprises cherchent cercle foncière
paru chargeurs vocifération fréquentés
expert fraudeur dénoncés prometteur
occuper convaincante asseyez-vous songeur
violations appelait oriental létal
panneau revoir consolider séduisant
parlons archaïsme raréfié amarrer
renié dessous relayer discutent
courbes titus chauffer paquet
mobilisé théâtralement mafia demie
géante transposer blocage abyssine
alléchant ambulant violenter soumission
divisions assistante interner vaincre
jan rouages vulgairement licences
sine sphérique léger centimes
signature sauge lires millimètres
vertige pourront collaborateurs attribue
suspens pays tranquillement limités
crépi poussée consolation multicolores
frank frère mobilier renforcer
réformatrice alternative ouvrait rustique
sursaut lapsus grotesque détenues
escadre loquace joseph photos
poissy agitent singularité vue
recul éventail échappent sultanat
délirer vulpin émissaire approuvée
ajouter estimaient rayonne défendait
fâcheux retrait impensable falsifier
préférant renégociation déployés occupée
fils ovationner favoriser assiette
irréel primer baby vlan
musique générations hôpital radicales
donneur actes sol dorsal
pointes pacifiques remaniement éclater
émissaires surclasser singes concernée
azerbaïdjan dialecticien minimum gouvernail
venter noué sanglots goulet
éditorialiste prévenir marrakech monopoles
débrayages encourageant récent torrentiel
reconnaît assonance sans saxe
séparation trame état mental congratulations
représentait massives administratifs contenues
orsay box indemnité irlande
loucheur cailler prudente valorisation
transfusion cancers parlait cependant
rameau reconstructeurs gratuitement vélocité
diagnostic épopée pacifiste frapper
hercule privé probabilité virtuellement
malédiction couple comparée étonnant
mêler estimant engagé sauvetage
force prêteurs abaissement légales
respect rite représentant hippodrome
croyance réplique injustice prendre
sénateurs typhon fripouille chaux
malentendus graine unifié nominatif
<?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__);