GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  APP::GENPASS (3)

.ds Aq ’

NAME

App::Genpass - Quickly and easily create secure passwords

CONTENTS

VERSION

version 2.34

SYNOPSIS



    use App::Genpass;

    my $genpass = App::Genpass->new();
    print $genpass->generate, "\n";

    $genpass = App::Genpass->new( readable => 0, length => 20 );
    print "$_\n" for $genpass->generate(10);



DESCRIPTION

If you’ve ever needed to create 10 (or even 10,000) passwords on the fly with varying preferences (lowercase, uppercase, no confusing characters, special characters, minimum length, etc.), you know it can become a pretty pesky task.

This module makes it possible to create flexible and secure passwords, quickly and easily.



    use App::Genpass;
    my $genpass = App::Genpass->new();

    my $single_password    = $genpass->generate(1);  # returns scalar
    my @single_password    = $genpass->generate(1);  # returns array
    my @multiple_passwords = $genpass->generate(10); # returns array again
    my $multiple_passwords = $genpass->generate(10); # returns arrayref



This distribution includes a program called <B>genpassB>, which is a command line interface to this module. If you need a program that generates passwords, use <B>genpassB>.

SUBROUTINES/METHODS

    new

Creates a new instance. It gets a lot of options.

    new_with_options

Creates a new instance while reading the command line parameters.

    parse_opts

Parses the command line options.

    configfile

An attribute defining the configuration file that will be used. If one is not provided, it tries to find one on its own. It checks for a .genpass.yaml in your home directory (using File::HomeDir), and then for /etc/genpass.yaml.

If one is available, that’s what it uses. Otherwise nothing.

You must use the new_with_options method described above for this.

flags

These are boolean flags which change the way App::Genpass works.
number You can decide how many passwords to create. The default is 1.

This can be overridden per generate so you can have a default of 30 but in a specific case only generate 2, if that’s what you want.

readable Use only readable characters, excluding confusing characters: o, O, 0, l, 1, I, and special characters such as ’#’, ’!’, ’%’ and other symbols.

You can overwrite what characters are considered unreadable under character attributes below.

Default: on.

verify Verify that every type of character wanted (lowercase, uppercase, numerical, specials, etc.) are present in the password. This makes it just a tad slower, but it guarantees the result. Best keep it on.

To emphasize how slower it is: if you create 500 passwords of 500 character length, using verify off, will make it faster by 0.1 seconds.

Default: on.

attributes
minlength The minimum length of password to generate.

Default: 8.

maxlength The maximum length of password to generate.

Default: 10.

length Use this if you want to explicitly specify the length of password to generate.
character attributes

These are the attributes that control the types of characters. One can change which lowercase characters will be used or whether they will be used at all, for example.



    # only a,b,c,d,e,g will be consdered lowercase and no uppercase at all
    my $gp = App::Genpass->new( lowercase => [ a .. g ], uppercase => [] );



lowercase All lowercase characters, excluding those that are considered unreadable if the readable flag (described above) is turned on.

Default: [ ’a’ .. ’z’ ] (not including excluded chars).

uppercase All uppercase characters, excluding those that are considered unreadable if the readable flag (described above) is turned on.

Default: [ ’A’ .. ’Z’ ] (not including excluded chars).

numerical All numerical characters, excluding those that are considered unreadable if the readable flag (described above) is turned on.

Default: [ ’0’ .. ’9’ ] (not including excluded chars).

unreadable All characters which are considered (by me) unreadable. You can change this to what you consider unreadable characters. For example:



    my $gp = App::Genpass->new( unreadable => [ qw(jlvV) ] );



After all the characters are set, unreadable characters will be removed from all sets.

Thus, unreadable characters override all other sets. You can make unreadable characters not count by using the <readable = 0>> option, described by the readable flag above.

specials All special characters.

Default: [ ’!’, ’@’, ’#’, ’$’, ’%’, ’^’, ’&’, ’*’, ’(’, ’)’ ].

(not including excluded chars)

    generate

This method generates the password or passwords.

It accepts an optional parameter indicating how many passwords to generate.



    $gp = App::Genpass->new();
    my @passwords = $gp->generate(300); # 300 passwords to go



If you do not provide a parameter, it will use the default number of passwords to generate, defined by the attribute <B>numberB> explained above.

This method tries to be tricky and DWIM (or rather, DWYM). That is, if you request it to generate only one password and use scalar context (<my $p = $gp-generate(1)>>), it will return a single password.

However, if you try to generate multiple passwords and use scalar context (<my $p = $gp-generate(30)>>), it will return an array reference for the passwords.

Generating passwords with list context (<my @p = $gp-generate(...)>>) will always return a list of the passwords, even if it’s a single password.

    get_config_from_file

Reads the configuration file using Config::Any.

Shamelessly lifted from MooseX::SimpleConfig.

AUTHOR

Sawyer X, <xsawyerx at cpan.org>

DEPENDENCIES

Carp

Moo

MooX::Types::MooseLike

Getopt::Long

File::Spec

Config::Any

File::HomeDir

List::AllUtils

BUGS AND LIMITATIONS

Please report any bugs or feature requests to bug-app-genpass at rt.cpan.org, or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=App-Genpass>. I will be notified, and then you’ll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.



    perldoc App::Genpass



You can also look for information at:
o Github: App::Genpass repository

<http://github.com/xsawyerx/app-genpass>

o RT: CPAN’s request tracker

<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Genpass>

o AnnoCPAN: Annotated CPAN documentation

<http://annocpan.org/dist/App-Genpass>

o CPAN Ratings

<http://cpanratings.perl.org/d/App-Genpass>

o Search CPAN

<http://search.cpan.org/dist/App-Genpass/>

AUTHOR

Sawyer X <xsawyerx@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2011 by Sawyer X.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 APP::GENPASS (3) 2014-08-04

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.