NAME

Crypt::RSA::SS::PKCS1v15 - PKCS #1 v1.5 signatures.

SYNOPSIS

    my $pkcs = new Crypt::RSA::SS::PKCS1v15 ( 
                        Digest => 'MD5'
                    );
    my $signature = $pkcs->sign (
                        Message => $message,
                        Key     => $private, 
                    ) || die $pss->errstr;
    my $verify    = $pkcs->verify (
                        Message   => $message, 
                        Key       => $key, 
                        Signature => $signature, 
                    ) || die $pss->errstr;

DESCRIPTION

This module implements PKCS #1 v1.5 signatures based on RSA. See [13] for details on the scheme.

METHODS

new()

Constructor. Takes a hash as argument with the following key:

Digest
Name of the Message Digest algorithm. Three Digest algorithms are supported: MD2, MD5 and SHA1. Digest defaults to SHA1.

version()

Returns the version number of the module.

sign()

Computes a PKCS #1 v1.5 signature on a message with the private key of the signer. sign() takes a hash argument with the following mandatory keys:

Message
Message to be signed, a string of arbitrary length.
Key
Private key of the signer, a Crypt::RSA::Key::Private object.

verify()

Verifies a signature generated with sign(). Returns a true value on success and false on failure. $self->errstr is set to "Invalid signature." or appropriate error on failure. verify() takes a hash argument with the following mandatory keys:

Key
Public key of the signer, a Crypt::RSA::Key::Public object.
Message
The original signed message, a string of arbitrary length.
Signature

Signature computed with sign(), a string.

ERROR HANDLING

See ERROR HANDLING in Crypt::RSA(3) manpage.

BIBLIOGRAPHY

See BIBLIOGRAPHY in Crypt::RSA(3) manpage.

AUTHOR

Vipul Ved Prakash, <mail@vipul.net>

SEE ALSO

Crypt::RSA(3), Crypt::RSA::Primitives(3), Crypt::RSA::Keys(3), Crypt::RSA::EME::OAEP(3)