Password Strength
royale seine fiancé sifflet
menacée providence empêche sentait
rostres mauvais porc dot
stationnés conter malfaiteur vierge
fonctionner éponger ferrer complications
nouer sortent surprise profil
infection piquant contaminer assassin
rentrées konrad tombe cajolerie
violettes spécifique cercueil âges
humide bakchich planquer docilité
tisonner laïcité dîners couvert de
fins pouvoirs tellement anticipées
égotiste emprunt moléculaire mollusque
pancarte théorie stephan bombardiers
chemise vraca écurie bécoter
prisons supermarchés arcade tirant
parties transpercer billet voulue
saumurer agen acétylénique marketing
cannes bazar disposés municipal
kidnapper embrouiller planche disent
ferrer manifestants néfaste direction
andré recueils injuste aspiration
estimaient différemment équilibres normand
richelieu ina impuissance offensives
passionnant soirée pétrolier vaclav
négociées expliquent excessifs gonflement
rouiller trappe méthodes explosion
ponts produite bergerie humanitaire
employée eiffel broadway anormal
identique cotonnier commodités lucidité
économe phototypie embauches procureur
saindoux licencier galure récitation
encerclement ravages traitées crient
firmament issue bases ténors
sculpture indispensable père pourrons
modestes tardives bulbe shampoing
câliner doute variétés ravir
ayrton raccommoder basalte ambon
causer ensemencement sceaux iniquité
examinées soulager nantes idéaux
philanthrope hongroises shah ray
annotations disponible couard expériences
syndicaux johnny négatives ortf
colonel disant oublier honorables
assis varient revêtir poêle
vagabonder proclame symboliquement mûr
fumer romanichelle cauchemar passe-partout
irakiens parvient pyramides découvertes
curriculum vitae faux jeton michèle ambitieux
frappe intelligente funéraire donnaient
bases essentiels écraser lancés
terminé harvard plongés consomme
aérospatiale fonctionnaires hermétiquement inférieur
arbres duos satisfait réellement
autour planchette marécage notes
démolir polaire châtaignier crevé
siffler contrôlées monastique exhortation
directoire insurmontable ceausescu cantine
suscitent scénariste préventive cologne
liquide intercesseur seau investies
range entrent rue ornano
dodo aiguillonner construire fleur
poubelle auroux dégauchissage approche
serré entente violent parler
accus chrétiens impersonnellement modernisme
droites spasme implicitement baron
croyaient gomez daté haussmann
blanche prestation reprend avancées
dard journalistes inepte garagiste
débarque exemplaires projectile flottement
rapprochement arrêtoir boeing industriels
distingué jugé urbanisme permission
contraindre saisit frimeur effectuant
hocher proposé salue contraction
résolution voulue théâtrale justifie
familière énergétiques prouve comptable
faciles paperassier enseignant visité
lettre de change médiatique guatemala cérémonieux
reliant souvenir stable tripes
assertion modes entendent appétits
semblent éventuellement dénoncés différends
mettent piocher héroïne former
silence pacage belgrade certaines
nuances grasse prouesses employant
rééquilibrer souvenirs baldaquin solidaires
gamin fréquemment locales étapes
fontaines concept butte laissait
notait renouveau rhin maximum
ford acheminement cursus files
décennies foyers nécessité républicain
prénom iraniennes fasciné suspecter
tombouctou approuvé présenter facettes
bombardement signalent chicon municipale
enjamber atonie logique attraper
dévouement prémonition parisiens hippopotame
voyageuse casser salariaux asséner
bagatelle nuits certes décollé
sujette surnaturel affecter maladie
poitrine approuvé journalier éditeurs
brûlante déblocage mouvoir
<?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__);