Password Strength

froide votée préparait sursis
directives écrasé considérant sommairement
emblème dépendra malveillant église
physiologie portera attardé conduite
équipements modifier élevées harasser
hector cuisinier deviendront herbes
dispose courbe scélérat allier
vaut chevaux égaliser subie
inclément varié plastiques craignait
sommairement toux inhumer contribuent
armer munitions vacances déplacée
commission entraîneur quartier sensualité
impôts adhérents satan brisé
omettre conjuguer soupirer chapitres
élève sérieux élévation papiers
confédéré privilégiées quêter décoloré
norme respectable entretenue portait
bigleux hésite apogée louper
madeleine servez-vous dom torréfier
évoquait values procédés gan
allemands stipule assouvir maria
pagaille cache-cache multiplier indiciaire
tresser tâtons effronté cherchant
cliniques cohabitation évoque crispation
sanitaire mauve montreuil frisson
roland certitudes intégriste rancard
orbite gros back content
miel remboursements élargie ronde
productique grimace ulcérant restaurer
pédagogiques promoteurs apocryphe difformité
tournent séduction vilain agglomération
parviendra délaissé bd art
centième momentané américaines recueillir
accueillant négocient cramponner répandre
équilibrée encore transmettre agraire
brosser saule roubaix disciplines
bougainville opérée paru pogroms
inlassablement soumettre dévaster vœux
adoration jouet rallye insuffisants
républiques blair innovation caillouteux
micro-ordinateur baver de démarrer cibla
envier travaillaient éplucher musées
topographiquement natal rapace concurrencer
lointains cercle ludwig richet
doués cimetière sensibles madeleine
conquête affirmant terrains relevé
artère espérance clark esquisse
lech budgets prélèvements chariot
palmier rives pâtes ravalement
académies recours mauvaises caractérise
péninsule virulent certains banquet
émotions antérieur devoirs désespéré
explique indélicatesse note mâchoire
chimiques égards malin méconnu
montrent enchères batterie maquereau
extrêmes intolérance payées bascule
nipper indéfiniment emmené matériellement
pénale putsch distributeurs sel
défier découverte leaders menu
débouche dais emprunter vierge
sortis interjection charte coffret
bombardiers grossesse plâtre positivement
annales circuler escalade vainqueur
 renonciation reçut ensemencer
théâtral fortes dénouement mette
réalisé faux soulager paralyser
agents dévaster transitoire persistent
godet séguin jugées poteries
délinquants farce bénédiction ballade
compétente questions perdues brûlure
fabricants  hongrois menacé
modeste détériorer éditeurs universitaires
rêver balancer râler libéralité
héroïque rébarbatif tir léninisme
oranger pensions miser loue
attention phrases disponibles dérision
tancer prétendant intégral absorber
gazeux clichés fossé réactionnaires
souvient brochette greffer spectre
identiques malfaçon unions carences
purge reflux laissent culier
importés prestigieuse bouchers dernier
déménagement pouvait similitudes douche
orphelin piano  queue violences reproche
édité constituerait expliciter guyane
enclins contraignant boîte emmené
redoutables facile dénommé louer
rebrousser délibération câlinement témoins
jambes stimuler infoutu myanmar
insulter extorqueur rêverie spécifiquement
volvo médiocrité détoner assentiment
contredire emprisonnement manifestée ronflement
séparent voilier vitres coquille
autrichienne héros moyen Âge sanglot
dialoguer mann kelly finissent
protocolaire laisse troisièmes saleté
vint morgan laure réclamé
fiers prairie cruellement montrer
fada enlacer serment 
romantique épingle de cravate sifflets proposait

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