The exportable "mkpasswd()" function returns a single scalar: a random password. By default, this
password is nine characters long with a random distribution of four lower-case characters, two upper-case
characters, two digits, and one non-alphanumeric character. These parameters can be tuned by the user,
as described in the "ARGUMENTS" section.
ARGUMENTS
The "mkpasswd()" function takes an optional hash of arguments.
-length
The total length of the password. The default is 9.
-minnum
The minimum number of digits that will appear in the final password. The default is 2.
-minlower
The minimum number of lower-case characters that will appear in the final password. The default is
2.
-minupper
The minimum number of upper-case characters that will appear in the final password. The default is
2.
-minspecial
The minimum number of non-alphanumeric characters that will appear in the final password. The
default is 1.
-distribute
If set to a true value, password characters will be distributed between the left- and right-hand
sides of the keyboard. This makes it more difficult for an onlooker to see the password as it is
typed. The default is false.
-noambiguous
If set to a true value, password characters will not include any that might be mistaken for others.
This is particularly helpful if you're distributing a printed list of passwords to a group of people.
The default is false.
-fatal
If set to a true value, "mkpasswd()" will Carp::croak() rather than return "undef" on error. The
default is false.
If -minnum, -minlower, -minupper, and -minspecial do not add up to -length, -minlower will be increased
to compensate. However, if -minnum, -minlower, -minupper, and -minspecial add up to more than -length,
then "mkpasswd()" will return "undef". See the section entitled "EXCEPTION HANDLING" for how to change
this behavior.
EXCEPTIONHANDLING
By default, "mkpasswd()" will return "undef" if it cannot generate a password. Some people are inclined
to exception handling, so String::MkPasswd does its best to accommodate them. If the variable
$String::MkPasswd::FATAL is set to a true value, "mkpasswd()" will Carp::croak() with an error instead of
returning "undef".
EXPORT
None by default. The "mkpasswd()" method is exportable.