1#!/usr/bin/env perl 2 3use strict; 4use Test::More tests => 9; 5use MIME::Base64 (); 6use Crypt::RSA::Yandex qw(ya_encrypt); 7 8my $pub_key = 'BFC949E4C7ADCC6F179226D574869CBF44D6220DA37C054C64CE48D4BAA36B039D8206E45E4576BFDB1D3B40D958FF0894F6541717824FDEBCEDD27C4BE1F057#10001'; 9my $text = '12345'; 10my $expect = MIME::Base64::decode('BQBAAKypbGqp3y2TkI4ZwEbpOmsRjBb/JIgd8Px4UcDewPi/bGGJiiDVSHUKa6kxIRRGqXvgbiPHcpO2R/3KEZ6tHRQ='); 11 12is( ya_encrypt($pub_key,$text), $expect, 'text correctly encrypted' ); 13ok my $crypter = Crypt::RSA::Yandex->new, 'object created'; 14$crypter->import_public_key($pub_key); 15 16is $crypter->encrypt($text), $expect, 'text correctly encrypted'; 17 18for my $bad_key ( 19 'BFC949E4C7ADCC6F179226D574869CBF44D6220DA37C054C64CE48D4BAA36B039D8206E45E4576BFDB1D3B40D958FF0894F6541717824FDEBCEDD27C4BE1F057', 20 'BFC949E4C7ADCC6F179226D574869CBF44D6220DA37C054C64CE48D4BAA36B039D8206E45E4576BFDB1D3B40D958FF0894F6541717824FDEBCEDD27C4BE1F057#', 21 '#', 22) { 23 ok !eval{ ya_encrypt($bad_key,$text); 1 }, 'died'; 24 ok $@, 'have error'; 25} 26