Password Strength
dissous invertébré professer convaincre
hybrides présidée associations stocks
directrice chier outil feinte
hallucination gagné allégresse consultant
réputés garde-robe prospecter sabre
cotation médiocres clef marche
approximative objectif achetant obstination
anus distribuer chiite clignoter
carole retraité facteur technicité
catholiques simplement aaron gober
girouette rêver mouton cannelé
modifié barbara veine interministériel
vigilant entretenue autobiographie excellent
courrier tournée acuité consentir
imposant détective vigile nombreuse
verts arcane rurale retrouvées
spasme intégralement mélodieux négociation
salons populeux routiers lenoir
haut-parleur baptisé crisser parisiens
alignés convalescence enchanteur raturer
persiflage peines juré oublie
nettoyé barioler florins déterminant
bobonne analyse réévaluation guêpe
telles devra schlass spasme
voûte aide de camp blesser boulots
ferroviaires diminutif offres escroc
miser détrousser gravillon ambassade
continents passeport contraints sylviculture
pensions robinet routière sceller
amphibraque guide pourra froide
valéry commencement oser censure
nommée léser authentique séquence
fonction stimulation écarts technologies
proposé boudé ponctuellement censé
universel défense jument voltage
veille sèchement cadres office
sèvres poser cartographie afrique
tracteurs alice pâturage taloche
violations élégance inventeurs résidences
duré flemmarder frondaison oubli
fatal automation charrier remettant
liesse nuée romancière aubergine
prénom nabot silvio arcane
dommage activistes fantastique ample
goulot lilas anarchie propriété
conquis gueuse ostracisme sangle
distrayant gonflement voulue robbins
machinalement vadrouilleur restaient altération
laid fresnes auditrice recensés
défaite énervement dissous fiacre
instants sarcasme normalement disposant
heaume jugeant fenouil voiturer
leadership variation économiquement jolis
doutes pots sauter couvrent
empruntant impoli trèfle vainement
soussigné revanche casernement performantes
joie réalisable eau de source abstraits
joxe libyenne biturer contrariété
englobe florissant importun réitérer
infliger vivante sacrifices incorrect
étrangers coûterait cube rattaché
girondins agacement batavia abstentions
entretenus micro marocaine pyramide
conclusion salin sphère décoloré
tranquillement ennemi cabotin voyais
exaspéré divertir protêt remboursés
trace lacté boyau hughes
neuf membres sensationnel maîtrisée bordel
télex balivernes pascal despotique
leurs préférable loucheur abstenus
sommeil observations verve signifie
accompli palestine mentionner pompiers
entracte plaquette egor amandier
nébuleuse poli dormant essuyé
quotidienne déroute postulat conquérant
refusée repu dédié claviers
benjamin actions autrefois brûlé
énigmatique preneurs maintenant nostalgie
lu extérieurs grecs honteux
quota incliner ténèbres fil
flair chausson feuilles idéale
frôlé gagnera espérer coquille
chenille pieu andorran chancel
péniche discutable exténuer constitutionnalité
couronnes émulation adroitement blanchard
bloc vidéo creux assez!
anneau calculatrice jan asiatiques
manquer véritablement survenus tes
avenant imperfectif complexion alité
tailleur kenya autoriser entailler
roussillon dialectalisme développement couverts
artisan étapes courtiser réunies
suivies perdrait analogique tarkovski
alcaloïde victime pandémonium psychose
goudronné loups danemark boulangère
ouvriers susciter compartiment convié
couches pénales chapon baronnage
tirer prescrire forfaitaire intentions
rassemblement libérée versions professionnelle
encombrement cuve canadiennes navigants
<?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__);