#!/usr/bin/perl use strict; use warnings; use Crypt::OpenSSL::Bignum; use Crypt::OpenSSL::RSA; my $pub = '51BCDA086D39FCE4565160D651713FA2E8AA54FA6682B04AABDD0E6AF8B0C1E6D1FB4F3DAA437F15'; my $priv = '0A5637BC99139C47C422C67C54105E5BDBD0AEAE4AB4D4334358274E1BDF5706A1FBF4E682893081'; my $expo = '10001'; my $n = Crypt::OpenSSL::Bignum->new_from_hex($pub); my $e = Crypt::OpenSSL::Bignum->new_from_hex($expo); my $d = Crypt::OpenSSL::Bignum->new_from_hex($priv); my $rsa = Crypt::OpenSSL::RSA->new_key_from_parameters($n, $e, $d); die "invalid key" unless $rsa->check_key;