Password Strength

évacuer hésite ballon résistent
lésion glacé météorites proviseur
vécu connues bureaucratie scandales
concrétion délecter brandebourg maréchal
chirurgie note unie mordre
préhistoire défense pacifique embrasser
documentaires bayonne dimanche unifié
dernier lieu composer échangé idées
largesse aéronaute emile christine
barillet fertiliser macao examiner
détremper rouiller invention intérim
fontenay finition accumulation pluies
pic réalisateur choc lustre
chargeurs sévèrement crottes prescriptions
mauvaise exilé jouera saule
fugitif chinoises écouter onomatopée
tristes litige concède littéralement
annexes pivot aboutit tourne-disque
enceinte imputable appelé analyste
entoure prussiens scores servir
entraîneur univers déséquilibres inacceptable
que bourreau halluciner bouscule
mémorisation renom tranquilliser analphabète
démonstration cherché rajidé roland
paternel nec signature courgette
séminaires former vêtir républicains
adopté sortilège affecte préoccupé
offrir israéliennes constitutionnelle prototype
ferment persistent lents étroite
regroupe centime stick bombardier
fief laitier affecter châtain
sérénité greffe surenchères redoutait
souffrait levées électricité milieux
copine concordantes décourager couches
aubervilliers cep ministériels encerclement
hurlements assurance éventualité indélébile
ricaner riposte juifs verbal
faillir éclairage tailleur dressé
envoie gaëlle jambes moteur
beaubourg gaëlle cupide acheminer
munich aider doublé dénombrer
sanglants irréalisable pierres preux
coutumes fantômes spacieux personnellement
carrières protégée mythique laffont
rade lesotho humanitaires australienne
postale hasards citée nationalités
compliquer disposera frôler trouillarde
investigation épave asiatiques éventuel
gratte-ciel ambulant abstraite navires
michael demain mirettes détracter
salinas pronostic corporel espace
laiton succulent intercesseur lyrique
boites nous massives forcé
ovule topographiquement bouillie coercition
légion pathé combattants constate
douzaine captiver substances cosmos
sanctionner coloniale aucuns gazole
calorie notons fracture déclare
verre supermarchés inflationniste trouvera
vendetta désobstruer line laissent
berkeley ignorent greffer échafaud
asservir correspondant talents flemmarder
hirsute stadium anodin permanent
métrologie anticipation esprit fête
bords nominations désavoué abyssin
irradier différenciation définitive rassemblent
banqueroutier réduits larousse arcane
enlevé atomique indienne frigorifié
suffoquer préparatoire référendum glasgow
ferment silicium absolument épidémie
afghans fort réservés gifle
gaullisme foires installer consisterait
scott hubert jetons allan
collet invalide bouvard meuf
mistral aimable inculpation tourbe
épargnants taylor contester pratiqué
fidèles planer ordinaires avenant
non avouer plate exercice
reconnaissant silicium éprendre namibie
assembler scruter rachète corrélatif
déporter fiscalité élaboration préoccuper
voguer préalables magouilleur adverse
casus vitro massives paraissait
devenue travaux revigorer mark
économies stagiaire fière espagne
remplacer rappelle durablement correspond
ensoleillé héberger jeune mariages
perfectif abstraitement protestant sphères
cours moscou agrafe dérapage
automobile conducteur pétri contractée
soudoyé possibilités osé variés
soulignent lexicographie adamite châteaux
noirs cognac troubler réveil
curé acidulé rappeler informaticiens
pelure remarquer helsinki mémoires
abrite amener morts profits
regardent patriote empaqueter envisagées
sacrement stadium félon french
bourrasque coûter dentier cuisinière
laissera parties engagées tendant

<?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__);