Password Strength

bougies photocopie contrôlées clivage
dissidence manquait engouement subside
poster experte recruté haleter
 fortuit tannin berry
contours affirmations salin alléger
culot capital capturer magnétique
orchestres serrure retour mécaniques
épopée téhéran chevardnadze grotesque
artificiellement moselle décathlon diable
sanctions critères gestation stupéfaction
urbaines débardeur défectuosité méditation
vacances hante roquettes cherché
cataplasme irréductible avancer suède
sombres acul rééquilibrage lassitude
douglas privatisation railleur poulain
intentionnel laïcité toussaint binôme
gâchette nase fantaisie saut
panne graine abyssinien protéger
claquet multinationale regarde mobile
barde rai céleri endroit
traverse transferts contenté flamboyant
précisions entreprise axée diffamer
asthmatique marteau prêtes arabes
réglo prééminence prier préambule
becker engins postulant ajourner
pressentir surveillance rênes standardisé
oxyde dague immobilisme assaisonné
lille inéluctable capitalistes mil
périlleux dispersé cataplasme calculette
rang puéril occident crâne
exanthème éloignées retrouver carnassier
gifle objective chargés considère
armées salle dégriser acceptation
helsinki jeûne prévoient archimandrite
radicaux fichiers anthropologique banian
molière malgré tout tout déplait
 débile tranchée jurys
au ais tribunes découle
liquider définir épouvante grogne
utilisation balnéothérapie médicale concentré
orage pourvu citronnade gouffre
confesser mentalités manfred ménager
inventé interview gadoue gestionnaire
hésité lampe pilon exclus
bouillir sarre édenté causerie
embuscade familial manquera éventuellement
culier clavier bénéficier de journée
attestation mandats constaté kreuzer
hangar grisonnant lexical somptuosité
algue grasse coude veulent
tournant parade coca-cola conduirait
tour immobiliers immobilier fraiseur
critique contemporaines seguin atrophie
ina nues aptitude rendues
achevée privatisée égyptienne croc
couvert de employé de bureau endormi pomme d'adam
libertés intifada veillent soi-disant
commémoration distinctement puiser éternuement
fallut poing couard évadé
brésilienne danton stick structures
pérou obésité mélange enculer
favorables grâce godillots bourgeon
désenchanter enjoindre petit-fils dénommer
inconséquent saisie prier cia
poison virgin mystères exclusion
schumann bousculer doucement compagnies
doutait imiter nicole déteindre
contrefaçon porté cavité convoitise
accusé immaculée conception falot engagements
appareillage exclue cervelet aligné
volume retardé cor tee
ressort lèvent rétribuer funeste
légitime visant retient hachette
piété attachée plausible principale
changer engorgement légation cents
rêvasserie logistique carbone alimentent
aliénation cerveaux indiqué journaliste
sardines facilitée triomphant circulent
gazera imprévoyant dessécher pédagogiques
dévisager séance carter distancer
parachutistes habitants circulaires infécond
sous-sol contraire de inspirer crédulité
buffet pardessus algorithme prestation
ajuster épargnée guide abrégé
honnêtes éclaire réfrigérateur incitent
général intéressent mobilier fixant
confins pauvres sartre disais
serviette inquiéter miroirs régulation
précédent dominique provoque martinez
suave rédaction renouvelée conclusif
balourd libérale apprivoisement acrobatie
mœlle épicé macao regret
commission emprise découler cynisme
collectionneurs capacités chausse-trappe étang
acceptés on déceler faîte
diététique patriarche immature trolleybus
concentre aileron terrien aristocratie
relevé aberrant intelligentsia cavalières
étudiant serveur connaître doctrines
miroir nettoiement revêtir heurté

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