NAME

Crypt::Perl::RSA::Generate - RSA key generation

SYNOPSIS

use Crypt::Perl::RSA::Generate ();

#$prkey is a Crypt::Perl::RSA::PrivateKey instance.
my $prkey = Crypt::Perl::RSA::Generate::create(2048);

DISCUSSION

Unfortunately, this is quite slow in Perl—too slow, in fact, if you don’t have either Math::BigInt::GMP or Math::BigInt::Pari. The logic here will still run under pure Perl, but it’ll take too long to be practical.

The current Math::ProvablePrime backend is slated to be replaced with Math::Prime::Util; once that happens, pure-Perl operation should be much more feasible.

ALTERNATIVES

Crypt::OpenSSL::RSA - probably the fastest way to generate RSA keys in perl. (It relies on XS, so this project can’t use it.)
Use the openssl binary OpenSSL directly, e.g., my $rsa_pem = qx/openssl genrsa/. Most *NIX systems can do this.

NOTE: As of December 2016, Crypt::PK::RSA is NOT suitable for key generation because it can only generate keys with up to a 512-bit modulus.