Password Strength
blocages aborde dégueu insoucieux
confortable idiote vitre allégorie
procédé volontaire voilier complication
pouffiasse clermont réunir organisée
belgrade chou situations brunei
transaction centrée touchant gazera
nôtres catastrophes rails jours
seuls clé à molette prometteur métaphore
témoignages attestation ringard coréenne
abjurer établit sain cligner
successifs grecs immigrants naufrage
usages ferreux incorrigible embaucher
interministérielle densité prévenus mettra
essaie lent panacée
promotions indigne stalinien dédain
vise réveil refusée écrit
chargeant antilope récemment arrivée
similaires matériau israélien scaphandrier
redouté dissuader tranquilles menottes
minime finir renforce torrentueux
appendice difficile volupté courroucé
crinière bavarde cheminot déloyal
égal bond nationale dévider
outsider poursuivi écologiques facial
peuplé david auprès newman
équipage bigle dictateur neiertz
marmot bulletin diego strident
pointes courbes fiancé dévot
progressiste aligner épicerie participaient
pompeux dénicher colonialisme contraires
coréenne solidement illustrant meurtrier
paroles vapeur inexhaustible
lampe torche extradables dieux usinage
fréquences vaisseau agripper figurent
contesté robinson festival familier
sous-vêtement concrètement ramifications impersonnel
gerbe grenobloise inexercé motivée
anarchique groupuscule choisi bulbe
armoire volubile catalogues tige
illustration faculté camionner églantier
patronale savent croise penseurs
suffire déprécier dégoûter preston
pull encerclement correct choper
échalas turpitude gant constituée
mille adroit affamé détaillée
bus consécration annoncent ivoiriens
oubliant porte-enseigne chances morsure
azotique steeple défense suspendues
pseudonyme cadence reich pompette
dénonce méchanceté rechute égoïstement
spécifique taciturne polygame classiques
obligatoires réunissent pisser marionnettes
loto interrompu chaloupe donné
presbytie iceux paragraphe fonda
cinématographique malheurs mésaventures
rappellent traduits migrations raboteuse
véritablement plongés chinoise
tienne abandonnée interrompues pare-brise
épidémique ficher chiffon parapher
appelés bandes vipère achetée
grimper voyageurs arrivé égyptienne
instituteur éventail pur piliers
ferait matelas cee encorbellement
conjoint configuration échouer prospecter
supérieurs projecteurs détaché salière
insultante englobe max vise
quand serrée reste judaïsme
gadoue occurrence vêtus citronnade
gadoue antenne savonnage prise
avancés répondre renault marginalisation
arriéré recensés fragiles antédiluvien
impiété goût introduire faculté
soulignent immédiats décalage rappelé
cascade captivant nerveux incessant
portées enregistré tartelette formelles
attentivement ruine crémant néphrite
égyptiens danse aveugles pedro
voilier industrielle révulsé
propriétaires surplomber suppuration préjugé
duos attaqué énergique diplômé
tu annoncer boussole rôle
dite recule décoloré décadence
convenir financière istanbul larges
tracer outrager liesse bénéficié
impossibles enculer du adjectif
loyers ethnique métrer jullian
résument verdict plaquette canton
misère ouvertement financière crachin
incongruité faisan tomber incident
préparer brusquement couvertures collective
minorités rire intenable alliés
incarnat choisies mêler gommer
instantanément inauguré irrésolution détention
formulée latin atteintes brouiller
polyphonique rémy tromperie aduler
christophe équipés casus caoutchouc
vérités affectueusement renonciation rééquilibrage
nerfs solides joueur ramenée véritablement
tentations durs diminutif recentrage
oublié remettent bougeoir robes
<?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__);