The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Net::SSH::Perl::Key::RSA - RSA key object


    use Net::SSH::Perl::Key;
    my $key = Net::SSH::Perl::Key->new('RSA');


Net::SSH::Perl::Key::RSA subclasses Net::SSH::Perl::Key to implement a key object, SSH style. This object provides all of the methods needed for a RSA key object; the underlying implementation is provided by Crypt::RSA, and this class wraps around that module to provide SSH-specific functionality (eg. taking in a Net::SSH::Perl::Buffer blob and transforming it into a key object).


Net::SSH::Perl::Key::RSA implements the interface described in the documentation for Net::SSH::Perl::Key. Any differences or additions are described here.


Wraps around Crypt::RSA::SS::PKCS1v15::sign to sign $data using the private key portions of $key, then encodes that signature into an SSH-compatible signature blob.

Returns the signature blob.

$key->verify($signature, $data)

Given a signature blob $signature and the original signed data $data, attempts to verify the signature using the public key portion of $key. This wraps around Crypt::RSA::SS::PKCS1v15::verify to perform the core verification.

$signature should be an SSH-compatible signature blob, as returned from sign; $data should be a string of data, as passed to sign.

Returns true if the verification succeeds, false otherwise.


Please see the Net::SSH::Perl manpage for author, copyright, and license information.