Password Strength
législateur inventaire existant éloquence
chuchoter grondement filon associés
profit de costumes transférés nommée
fortifier mâle extension cadet
moyens autopsie renforcé désaltérer
évacués multiplient insatisfait punissable
merguez autocéphale communauté citadin
périodiques frigorifier mayas vallée
exemples abêtir forts souvient
niveaux folies catin partagées
compartiment artillerie chicaner journalistes
confirmation conditions glacial tensions
structurelle aigre en face jurisprudence
impersonnellement marteler pensions west
amusé marseille anciens
vienne faible indiscrétion itinérant
portées bundesbank gants malfaçon
intégrée autre débiliter infrastructure
instauré corroborer laisser-aller sortis
ottawa résolue polar allégorie
iode rêver volcan négociables
espère duc athéisme entrefilet
baccalauréat coalition arrimer dise
rattraper hippopotame bonté sept
macintosh sous-marin donnera corps
mimi contraint inamical trône
donné indivis triomphe stalle
adrénaline séparation temporaire interdépendant
malvenu sens rarement sentant
preneur amphithéâtre perversion taylor
redouté ondoyer épauler fourchette
ailerons atterrer importun socialisme
gêné regard anéantir mesurer
nouveau-né rudolf orge hôtelière
acceptés baroque utile industrialisation
fructueux traversait retiré donnent
escorter régionaux rendez-vous malaisé
vendôme glacière pourraient dirigeant
mûr talon embaument occupée
semblée liquidité déboucher subtil
groupes encensement élevé europe occidentale
abécédaire arbitrage enveloppe disputent
traite sympathisants continuerait patienter
automatiquement somalie hampe commisération
communicationnel businessman haute prodiguer
instituts initialement utilisation de mesquinerie
apparente promu réglementaires périls
insertion dimitri désengagement machines
disséminer suspects facilitée suffisante
livres dame de pique montagnard vieille
do missive marquait victorieux
tablent godiche parcouru fausse couche
soupçonne trancher brouillon urbaniser
terrorisme arcades javelot malveillant
sympathisants récipient retards dépouiller
chier successivement socialement coloniale
bonbon jérusalem tancer demeurant
coefficient monarchie carnaval beau-fils
dressé éleveurs ordinal savais
colonie pénaliser programmer longue durée
feu tic attifé notons
organisés décennies district dévoile
maquillage intenable rural octante
une étendues participent dauphin
gérondif précédemment cote marchandise
précédente foire bactériologiste disques
cuivrique souverainement estampe adrénaline
vaurien chronologie argonaute lobby
criminelles cérébral fibres instabilité
persistance mensonge confédération défraîchir
vipère récit succinct ouvrent quitté
concombre portefaix chewing-gum renard
blanchard urss cynégétique promise
vociférations suffoquer marges lumières
actuelles assurances lauréat chicago
saturer acquiert intéresse renforce
rural évoluent maronite coexistent
boulanger créa deutschemarks succède
congénère faux-col promène apparent
lecteur intelligent absente établie
important actionnaire montrait scindé
transir éponger déroulent écosse
théière égide bouquin sonagramme
dotés espacé rentrés astuce
auroux épingler enfants jugeait
adopte horizon subitement moyens
comptait instructions fêlé métallurgiques
percer ressemblance versant freiner
par-derrière coppola condamnation ukrainienne
statuts syrienne intergouvernementale étau
corrélé cannes purger sauve
résonner santiago calme eux
présidée patricia autobiographie andante
inclination bras canaux prédécesseurs
déroulés autorise âges ouvrières
aliéné bivouac chirac renégociation
distribuées collègues tôle gloire
poésie compose répètent saupoudrer
installation observée maréchal diabète
cadence description tournés saturer
<?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__);