NAME
Crypt::Perl::RSA::PrivateKey - object representation of an RSA private key
SYNOPSIS
#You’ll probably instantiate this class using Parser.pm
#or Generate.pm.
#cf. JSON Web Algorithms (RFC 7518, page 5)
#These return an octet string.
$sig
=
$prkey
->sign_RS256(
$message
);
$sig
=
$prkey
->sign_RS384(
$message
);
$sig
=
$prkey
->sign_RS512(
$message
);
#These return 1 or 0 to indicate verification or non-verification.
$prkey
->verify_RS256(
$message
,
$sig
);
$prkey
->verify_RS384(
$message
,
$sig
);
$prkey
->verify_RS512(
$message
,
$sig
);
#----------------------------------------------------------------------
my
$enc
=
$prkey
->encrypt_raw(
$payload
);
my
$orig
=
$prkey
->decrypt_raw(
$enc
);
#----------------------------------------------------------------------
my
$der
=
$prkey
->to_der();
my
$pem
=
$prkey
->to_pem();
#For use in creating PKCS #10 CSRs and X.509 certificates
my
$pub_der
=
$prkey
->to_subject_public_der();
my
$pbkey
=
$prkey
->get_public_key();
#----------------------------------------------------------------------
$prkey
->version();
#scalar, integer
$prkey
->size();
#modulus length, in bits
$prkey
->modulus_byte_length();
#----------------------------------------------------------------------
# The following all return instances of Crypt::Perl::BigInt,
# a subclass of Math::BigInt.
# The pairs (e.g., modulus() and N()) are aliases.
#----------------------------------------------------------------------
$prkey
->modulus();
$prkey
->N();
$prkey
->publicExponent();
$prkey
->E();
$prkey
->privateExponent();
$prkey
->D();
$prkey
->prime1();
$prkey
->P();
$prkey
->prime2();
$prkey
->Q();
$prkey
->exponent1();
$prkey
->DP();
$prkey
->exponent2();
$prkey
->DQ();
$prkey
->coefficient();
$prkey
->QINV();