Password Strength
comparé grosses remercié devenait
approfondissement vantarde lessive cachée
aveline tricoter émissaire grâce
contradictions mélange planquer amabilité
arcane tractations physiques fragrance
défier bâfrer bulbe gonfler
tyran tasse aimable maronite
harry traitent rectorat issu
surveillant montré définie sidérurgistes
maniable correspondait manier félonne
marseillaise écrivait aromatisé désuet
parizeau dernièrement silencieux oxyder
lambris péremptoire suavité convention
réduisant ambulancier établit autre côté
souhaité clairvoyant rapproche mec
constitutionnelle évoquant jugeaient cite
su taupe gide béatitude
exquis croquette bleues inattendus
besançon riflard étrange infléchir
émigrée rail alcoolisé sentinelle
fiables césar purifier paramount
similitudes insatisfait wagon-lit hospitalier
entendue crisser institutionnels professionnelle
rejoignent vide poissy contrôleurs
factures pincée pétain fixant
maternelle cou croc-en-jambe glissement
géophysique latine flageller accumulé
nancy coercition journalier extinction
psychologique soient emploie
avide de doigt noces fausses
léthargie inonder spontanée ose
fichu sonné picorer
ligaturer saisis errer stupéfiants
ordonne supérieures empêcher bentonite
french croûte droite masculins
montants monumentale snob titres
charges briller irrésolu chèvre
cohabiter bénéficiait réaction immédiatement
refusaient agroalimentaires génome
utilitariste bercail certes organisation
coupant lits sénatoriales tibet
fatum caravansérail antiquité fonciers
manque joël emprunt présentes
commerce bosquet accueil occupent
escalope bavure faiblement certitudes
chipie spéciale italie déboîter
recouvre émigrer sauf mécénat
battent caviarder daigner préoccupations
panégyrique saurait commerciale ali
antibiotique satirique fiabilité frénétique
crédibilité atmosphérique adhésion botanique
erevan pensionnaires réservations mystérieuse
sous-cutané transformés vasque chaudière
barber tragédie prénom ancien testament
législation indre mesurée piller
mettent limité récolter harpe
dépêché réservent macro affirmant
appels sociologiques transportés gomme à mâcher
découler aileron dévouement doublement
surprise-partie papetier chasseurs blanc de chaux
met réforme thermomètre respectabilité
arrosé dostoïevski phraséologique tâter de
néant cubitus détonner scrupuleuse
octante kilo ciseaux connivence
jean rythmes italienne remboursés
celle-là meurtrière brigade recharger
rapprochent baffe monotone persistent
nouveau-né sonner emprunté contours
scellé brutalement messagère investir
variabilité obscène panser partiel
chandelier personnage durement affermir
élimination torride vietnamiennes poursuivaient
immenses ceux œufs kohl
deviendrait troc bogart acquisition
enfantillage cycles monologue clair
étudie règles retrouvailles désarmé
éclopé élevée immonde bretagne
graphiste commerce millimètres règle
prochain décolonisation dilaté fruit
luxurieux prestige cuisse maintenu
égarement sentimentale annie candidate
rame recouvre fade assassiner
prise répondant carré hydrocarbures
unanime existait pulpe éclatement
inlassable embarqués sionisme précise
folies représenterait figue pan
maurice abaissé trépassé sève
dimanche renforts malfaiteurs câline
quatuor désintégrer intervenus grâce
caricaturiste inconciliable fallait baptisée
réagissent dodo marin désavantageux
contiennent situé trépasser réprimer
au régime livrer portugaise exilés
stade syndicales vérification exposées
incompatibles raffinement bundestag érosion
strictes ballade souliers cénobite
perfide éternuement flottement civilement
exposée respectives chacune véritable
drôles tourbillon douleur marne
extradition entêtement progressistes cristaux
<?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__);