Marfey, я перл знаю очень плохо но функция:
perl Код:
sub rsa_encrypt
{
my ($message,
$rsakey) =
@_;
my $bn = Crypt::
OpenSSL::
Bignum->
new_from_bin(RepairKey
($rsakey));
my $be = Crypt::
OpenSSL::
Bignum->
new_from_word(65537);
my $public_key = Crypt::
OpenSSL::
RSA->
new_key_from_parameters($bn,
$be);
my $public =
$public_key->
get_public_key_string();
my $rsa = Crypt::
OpenSSL::
RSA->
new_public_key($public);
$rsa->
use_pkcs1_padding();
my $crypt_message =
$rsa->
encrypt($message);
return $crypt_message;
}
по моему должна выглядеть так:
perl Код:
sub rsa_encrypt
{
my ($message,
$rsakey) =
@_;
my $bn = Crypt::
OpenSSL::
Bignum->
new_from_bin(RepairKey
($rsakey));
my $be = Crypt::
OpenSSL::
Bignum->
new_from_word(65537);
my $rsa = Crypt::
OpenSSL::
RSA->
new_key_from_parameters($bn,
$be);
$rsa->
use_no_padding();
my $crypt_message =
$rsa->
encrypt($message);
return $crypt_message;
}
ЗЫ и ты уверен что RepairKey возвращает 128 байт?