in reply to Password masking

Have you looked at Term::ReadKey's (alt./ppd) ReadMode?

ReadMode( noecho => STDIN ); my $password = <STDIN>; ReadMode( restore => STDIN );

Things get a little trickier if you want asterisks to show up inplace of input, but nothing ReadKey, a loop, and print '*' can't handle...

    --k.