Provided by: libcrypt-dsa-perl_1.17-5_all bug

NAME

       Crypt::DSA::KeyChain - DSA key generation system

SYNOPSIS

           use Crypt::DSA::KeyChain;
           my $keychain = Crypt::DSA::KeyChain->new;

           my $key = $keychain->generate_params(
                           Size      => 512,
                           Seed      => $seed,
                           Verbosity => 1,
                     );

           $keychain->generate_keys($key);

DESCRIPTION

       Crypt::DSA::KeyChain is a lower-level interface to key generation than the interface in
       Crypt::DSA (the keygen method). It allows you to separately generate the p, q, and g key
       parameters, given an optional starting seed, and a mandatory bit size for p (q and g are
       160 bits each).

       You can then call generate_keys to generate the public and private portions of the key.

USAGE

   $keychain = Crypt::DSA::KeyChain->new
       Constructs a new Crypt::DSA::KeyChain object. At the moment this isn't particularly useful
       in itself, other than being the object you need in order to call the other methods.

       Returns the new object.

   $key = $keychain->generate_params(%arg)
       Generates a set of DSA parameters: the p, q, and g values of the key. This involves
       finding primes, and as such it can be a relatively long process.

       When invoked in scalar context, returns a new Crypt::DSA::Key object.

       In list context, returns the new Crypt::DSA::Key object, along with: the value of the
       internal counter when a suitable prime p was found; the value of h when g was derived; and
       the value of the seed (a 20-byte string) when q was found. These values aren't
       particularly useful in normal circumstances, but they could be useful.

       %arg can contain:

       •   Size

           The size in bits of the p value to generate. The q and g values are always 160 bits
           each.

           This argument is mandatory.

       •   Seed

           A seed with which q generation will begin. If this seed does not lead to a suitable
           prime, it will be discarded, and a new random seed chosen in its place, until a
           suitable prime can be found.

           This is entirely optional, and if not provided a random seed will be generated
           automatically.

       •   Verbosity

           Should be either 0 or 1. A value of 1 will give you a progress meter during p and q
           generation--this can be useful, since the process can be relatively long.

           The default is 0.

   $keychain->generate_keys($key)
       Generates the public and private portions of the key $key, a Crypt::DSA::Key object.

AUTHOR & COPYRIGHT

       Please see the Crypt::DSA manpage for author, copyright, and license information.