Password Strength
élémentaire indicatif scie dramaturge
guindé sanglant inviter précautions
populations souci tilde nouveau
agenda élitaire précieux improbable
privilégié laconique protubérance leeds
caviar interprétation jupiter heureusement
secondaire catastrophes visions passerelles
abrasif insouciance franchement malouines
kurt déboîter tapuscrit marianne
goitre manuels déclin recueille
mécano orientales résistant réprouver
française prédécesseur trouve coproduction
rouge-gorge pope manuscrit invasion
allure réitérer sceptiques amsterdam
montalembert ouvrant ajouter étage
matin croit insuffisances intention
jaune littéralement chaleureux sonné
placard acajou cocteau établir
jette engourdir duo parkings
penne prennent curé syndical
croyances robinson répartition utile
dessine philippe ballottage conclue
heurter brutal trafic espoir
nombreuses oubliée spécimen apostrophes
bribe résultat licenciement vaillance
camionner manier sursaut thématiques
dégarni stalinien oslo cendré
merguez responsabilité authenticité rossellini
sangloter chateaubriand prônant conseilleur
appréhension philosophie conditionnement papier
médiéval cruz positifs simplification
transporte mobilières scientifique nuit
daimler vestibule lufthansa poli
regretté potin supprimés verdict
aspic élaboration bucarest faveur
rangée insérer penseurs volaille
parcelles apporter interpréter damas
sols raffinage contribué hussein
unité impertinence détritus avec
baser congratulations attendent hier
colette disposant apprêt ecclésiastique
quêter verni intruse kennedy
arrières fonctionnaires soupçonnés plèbe
démerder épiderme indochine cotation
inégal haïr régional descendent
préoccupent saga bénéfice naturel
difficile gironde désintéressé marbre
abattus cotonnier discrètement costume
licencié hugo paresse serai
bosser fécondité lamentable tristan
efficacement écoulement bloqué descente
accepterait théière veinard consécutive
algèbre pervers rhumatisme genévrier
favori suppurer bœuf facultatif
rivaux meurtres réclamée démoniaque
freluquet adéquat successifs vivants
écueil folklorique épuisement rouvrir
champignons autorités mortification progressé
nier cruz ostensiblement pavillons
dépister restaurants kasparov regagner
panoplie constructive rausch nazisme
morris espéraient dallas conjointement
décoller wayang orage mexicains
chausser trier chants internationale
confié publient palpiter vivace
iodure négligeables halles massives
potentiel retirent hagen malte
affiche dirigeante avisé asymétrie
ornano fayoter éprouvé superviser
chien honoré justes enseignants
révolter personnages voilier vogue
mérité juridictions filières absentéisme
écrasé biarritz pénuries compositeurs
marner germain contribue juppé
lèvent taquin alopécie dépanneur
métayer espièglerie survît avancent
hébergement chenet dérision augmente
régression renfort tendu cherchaient
archaïsme volcan mendier voiture
concrétion montant acoustique marathon
ingratitude candidatures contenance opposées
réfléchir ombrelle escalier reconstitué
basaltique rectification favorisés antidrogue
camoufler vilenie regroupent écartée
légende autonomiste allégation sanglant
autos métaux citadins menottes
rez-de-chaussée lamper acides usure
préposition doses creuse inspectorat
poursuivie proclamée tendus nice
prétentieux foisonner infortune manuel
éminence poulain crânerie notoire
fragile fière calmes composant
environ envahie babylone inférieures
immédiatement défenses spécification rachats
sonder mobutu schizophrénie sociologique
contenance majoration arrêtés éclaire
robert tarkovski thème musical rigides
barème sapes arrêtée pourboire
purs commandants fédérale entonnoir
inégalités particularités évoquait insupportables
<?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__);