Let's ignore the security aspects and have a fight. In one corner, clkao's Text::Password::Pronounceable. In the other corner, my String::Koremutake:
#!perl
use strict;
use warnings;
use Perl6::Say;
use Text::Password::Pronounceable;
use String::Koremutake;
say "Text::Password::Pronounceable";
foreach ( 1.. 10 ) {
my $password = Text::Password::Pronounceable->generate( 6, 10 );
say " $password";
}
say "String::Koremutake";
my $k = String::Koremutake->new;
foreach ( 1.. 10 ) {
my $s = $k->integer_to_koremutake( int( rand(2_000_000) ) );
say " $s";
}
Laaadies and gentlement: the fight begins:
Text::Password::Pronounceable
dtwlysoto
bileoire
metstari
hisiner
icaharwet
thitilos
hilerith
ilyome
weyhow
ttovihith
String::Koremutake
kigelu
hestemi
jimygy
teliku
jynegra
prydryji
sitimy
bronesi
vonipro
litisi
And the winner is... I'm not sure. Who won?
I _think_ (Score:2)
Re: (Score:1)
koremutake :) (Score:1)
Re: (Score:1)
Jynegra! (Score:2)
--
xoa
Re: (Score:1)
the only way.... (Score:1)
Koremutake (just) (Score:1)
The winner: apg (Score:1)
The winner is the unix apg (auto password generate) command, simply because it tells you how to pronounce your passwords:
pjf@teddybear:~$ apg -n10 -m6 -x10 -t
dyknip (dy-knip)
FereOw (Fe-re-Ow)
otAlfig^ (ot-Alf-ig-CIRCUMFLEX)
tasEms (tas-Ems)
AtIfRith9 (At-If-Rith-NINE)
ucGuj+ (uc-Guj-PLUS_SIGN)
igsyehod0 (igs-ye-hod-ZERO)
cogwig_ (cog-wig-UNDERSCORE)
seajaf (seaj-af)
shoHiujca (sho-Hi-uj-ca)
If any of the modules provides pronunciation tips (as does apg), then it wins. Otherwise, T::P::Pronounceable
A note about "say" (Score:2)
It's not.
Re: (Score:1)
And every time I see
print, I think screeching needles hammering paper.Maybe it should be called
display.Re: (Score:1)
Module naming (Score:1)
I have a pipe dream that one day there will be CPAN author round table meetings where similar modules in disparate namespaces will be agreed into consistent groupings. Ah well...
Ruby implementation done :-) (Score:1)
git clone git://rubyforge.org/koremutake.git
Thanks for a neat idea!
Ok, done (Score:1)