Password Strength

corvée privés libère virement
musulmans battus trempe clan
oncle maternel nageoire astuce fondateur
devez consultative allô dégauchisseuse
éditer fonctionnaires investi notions
gagnent déplanter négoce expliquant
écrivains allah hors d'œuvre siècles
répertoire apartheid empaqueter impartial
imputable fondement second rideau
dehors préférait pastèque contrepartie
détail managers égorger acheminement
organisme bob moments épingle
bise péjoratif aristocrate amusement
internationalisation importés décharné survît
confisquer major être assurant
virulent défier âtre usa
synthèse isolé cultivateur activer
rendit chaleureux ressembler recruteurs
düsseldorf quelque renseignement illégitime
votant immobiliers dépêché armement
boisson gardant décennie pittoresque
bienveillant impasse croyez baguette magique
souder protesté précède libéral
espérer fossiliser persistant dissuasion
naval mené panneau sentimental
rythme foncière mobilisent revues
volets grenier vaincu veille
utilement tirana semé désespérément
affirmait industries bannir billancourt
délectation crème deutsche économiseur
structures débutant arche nouvelle-zélande
agresseur profonde soutenue périlleux
vieille paresser expliquent retombée
socialistes relevait parisiens baffe
vente gigot énonciation émise
osciller maquisards rivier harvard
bénéficiaire démoniaque externes plaignent
pavage séminaires fibrille assorti
effets comité forcir maternelle
familial quiconque slogan écologistes
strictement contact péril corps
perdu précédant bbc réaliser
paisible lèvre bâtard perspective
franchir alentours voyageur répondit
halle anglican tigre courgette
détenait conversations repasser possession
relié délai riflard blini
ignorait lointains encourager diplômes
parade prouver poulenc dinitrile
todorov attaqué module nuits
induit banquiers tombouctou sanglants
oc connaissant rupin freinage
benoît année expulsés casting
indécis marmonner urbanisation gibet
trouveraient irrégularités huit endormi
seconds implorer académisme symptôme
compliquées cac pirandello oratoire
gravir toxicomane déplaisant concertée
température michael mutuel obsession
inchangé mère supérieure épices mare
mollesse anxieux tambouriner mémorable
brighton placard déclarent ferdinand
nantes électorat mensonges touchées
curriculum vitae étrier flux de fantôme
beaux réalisme unique choquer
chili obtenues exécution corpus
transitoire hors considéré simultanément
prêter mythique happe assaisonné
daté vaste couvert de abonnée
encorbellement flegmatique ravir proportionnelle
emballage rhapsode eau de cologne loisir
francisco son radius versions
arabes apostolique immobilière translucide
réservée logiciels pragmatique con
affiches cathédrale impassibilité exalter
embrouiller dubois dispersion gonflement
numéroter affabulation culturel milieu
surveiller indochine astigmatisme promouvoir
chou-rave repérer profiter consentement
diplomatique abstraits arrière sheffield
accordés témoins terrien bibelots
accueillie brigade patente allumettes
conducteurs raffinage modèles témoigne
travaillent transportés restera mutuellement
deçà rampante pravda impie
degré pittoresque animales truand
réuniront prometteuse amiens obligataire
dormir indivisibilité bague mégalomane
vend lie australie très
créateur nietzsche torgnole désarroi
blair baver proportions ambulance
fiche fou rire avant-propos jouait
verrait caustique parts modestie
chevènement syndicaliste éloignées bourde
allées chèvres mendier fléchissement
gaiement alliés bic souder
pacage crémation concertée recueillir
nancy conventionnels sort tank
simplification sérieux suis insisté
cogitation battre dragon donateurs

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