Password Strength
rendaient francophonie acrobate dévouement
récits sécher engrenage thermomètre
fatigue cédant violoncelle contorsion
métayer faiblement seront israéliennes
embauché gerber moyenâgeux inhabitable
trucider autre patriotique accoucheuse
lisse signés sentait affection
auraient accident justes ajax
châssis quelqu'un princes substantif
devenant immigrants étrangement innombrable
chiffon perec accessoires coup d'œil
masure attente requis pompes
gouvernement funèbre éclats plâtre
exquis pelure voix divertissement
explique gendarme strictement opposition
attiré mugissement hôtels spécificité
hautement organismes payant corpulence
licenciements manteau condition miel
cessez-le-feu dépassés crise révéla
plusieurs références découper lexique
âcre jardin renverser passible
chasseurs captieux servir pour martinique
gitan réfuter flemmarder sale
dernière griffonner embarrassant carmélites
herbes population oncle individuelle
hôtellerie théologie restes
fréjus parfait mammifère vindicatif
séide birmanie lycéenne certaine
préparatoire numéro allumé marchelli
majeur renoncent peupler foulards
musulmanes stock négociés fac
sommets popularité collaborateur propos
ébahissement épatant domination succursale
désespoir out faux jeton écureuil
coup de vent météo compatir lexicographe
terne amas humecté bêler
recensement banquiers indispensables renoir
impressionné volontaires radicalisation déboucher
panier baccara dégauchissement jackson
réciproque manfred barbelés houlette
écriteau négligeable moines transir
administrative répandu truqué cantique
négocier mêlée franc-maçonnique impartial
résisté miroir ralliement entrevue
publiera explosifs affiché ukrainienne
cinglant économiquement cliquet hernu
intervention ciné moniteurs écrans
consacrées fourrage fauve piétonne
meuble langue réussite chant
type observations egyptienne régulière
artisanale apparaître divisés diplomate
seules bernard estampe démonter
bulldozer chadli associative propriétaires
expériences devant franchit bitos
lanière aboutit déclare totalitaire
énerver ledoux installées téléfilms
compétence dent de sagesse puis interministériel
échafaud champignons anthropologie billet
garantit chenapan minauder robe
éventaire formulation céramique cafeter
antiétatique gouvernementale brigitte inégalité
cage désignée corpulent roche
chiites chapitres nuisances angoisser
inhaler formulées muqueuse claudicant
violents inquiété pic-vert scandinaves
infatuation rostres effronté protestantes
arabie gonflé tardif indécis
virulent ferrant sexuelles ceux-ci
agriculteurs mettent pisser validité
connaisseur approches repérer énigme
limiter psychologie cambrioler batterie
parcourir magnétique rallié chou-fleur
cogner bénéficient réservation angers
inattendue revendique automobiliste ample
provocations lancinant atlantique faillir
chic subséquent sélection marteler
linéament cuivré tonner déplaisir
offenser négligeant diapré incinération
sic menés navale domaine
jacqueline succomber glucide illustration
naufrage victorieux républiques trahi
leurs surclasser minauder gentil
ingénieurs invitation cuisses auraient
obligé examiné arrêtés ostensiblement
archéologue amender bonasse rosser
réussite blancs ambulanciers épicé
aérodynamique inconfort dangereusement succèdent
goulu picorer parcouru contenant
motifs opposée normand caché
molécule complice rompu habitent
tandis longue immédiates ensorceler
bouffon planification cérémonieux épousseter
soyons allécher aristocratique naviguer
abstraits taille obéissant hier
harpe imagination thune ah
réel renvoie rédigé gober
anarchique détendre voulait pauvre
songe mis accumulées souiller
développant laxatif représente chenapan
emberlificoter cotée était assécher
<?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__);