Password Strength
rentables colombienne inconstance dirigé
conforter dialecticien vivante témoins
ouvrier gêneuse installée annuel
veille pléiade principauté d'andorre burundi
blaguer garantissant langue ménagement
évènement démocratiques caleçon amitiés
agitée départementaux spécialités explicite
recul crient attribut proviseur
mentionné minutieuse comprendrait égorger
cantique disculper orage tiennent
brigitte extorqueur brillant hauts
punissable taux irritable multiplicité
mémoires douces brillante maquette
réclamaient ajoutait embryon concrètement
avisé dans erreur feuilles bouffer
noter prunier tensions recevront
anonymat émaner censée médical
humecté droitière brame thorax
hargeisa immenses coûter label
physique coleman greenpeace préparant
pronom secrètes médecin légiste entendez
technicien complaisance entoure millénaire
anglaise précédents féminine concrétion
judaïsme assentiment magouilleur impertinent
crée génial conformité distingué
ukrainiennes milieux intitulé languette
prénom italiano économistes sarthe
méfiant initiales injuste passoire
la valette feinte suisse insatiable
falzar illuminer lapereau campagne
psyché universitaires procure brillamment
reconnues apparue profiter avertis
dépassera dissuasion flemmardise autocuiseur
luciole riposte agressions furet
rencontrera allitération etats-unis chaud
désavantageux errements payant blé
prennent tailleur homologue défendu
catégoriquement illustre dénoncée invalides
walt logement maniement détenait
dixième apprêt harvard dévolu
confiture mains fluctuation délicatesse
tons drôme partenaire garde-corps
aristocratiquement pistolet gréco-latin impopulaire
mauritanie abandonnés atteints analogiquement
utilisation de concentré lancées nippon
unesco minable musée simultanément
dépassé conjurer propos agrandissement
matelot renoncement animateur connaissance
sac protestation dessins tringle
break machinalement agrarien échos
cinglant qualifié défensive hospitaliers
jouait autorisation asthme
onze tertiaire vallée être
fausse couche directives gros membrane
tarin bileux ruiner colossal
typographe confirmé éraflure défaveur
animé servage borner martinique
fraude lait attestation finale
strictement urgence philanthropique moldave
esthétiques combattre entraînerait financiers
acceptées aristocratie cartier carmélites
ailleurs sûre exigeante embrasser
compétitifs varier réparer urnes
inflation pavillons visiteurs nôtres
frappées évoluent déporté clés
sarl estomac rolland touristes
infirmité express vanité contestataires
plumet intérêts informée décharger
charter enfouir hélice frai
socialistes fictions bains forgeron
détenus prospérer délégué bangkok
surgi définies satisfaite palme
accentue pourchasser répand provenance
septennat ministériels mai teinture iode
spéculations premiers relancer bigleux
assassiner congé cendre nourrissent
récupéré partialité fondé haleine
entamer familière ictère conscience
théorie boulots fut étron
consulté précautions franchir confédéré
débitrice visiblement fixant gramophone
panache souhaitent immobilité fédérale
leeds vestes rigidité annoncent
moderne dénier emprunter entreprise
réjouir retransmission goulot grillade
capables ancienne caboter manifestants
réelles douloureux humilité mortifier
projeter rendaient répondez donnés
interrompues lada plastique hésite
mettra tennessee orphelin croupissement
marionnettes guichets bulgares messages
confirmés sincère racheter amorce
jugement traverse mancelle nullement
conceptions pompes succinct protestation
impersonnellement faillir imagine refusait
revanchard capables compromis neuves
puisque chapelure line appelée
insister toilettes textiles plafonnement
fonciers étron bistrot fermées
vigoureuse concasser rassemblements tronche
<?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__);