Guest User

Untitled

a guest
May 25th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.00 KB | None | 0 0
  1. use Crypt::RSA;
  2. use Crypt::RSA::ES::OAEP;
  3. use Crypt::RSA::Key::Private;
  4. use Crypt::RSA::Key;
  5. use Math::Pari ':int';
  6.  
  7. #my $key = $ARGV[0];
  8. my $ct = $ARGV[0];
  9.  
  10. my $keychain = new Crypt::RSA::Key;
  11. my ($public, $key) = $keychain->generate (
  12. e => 65537,
  13. p => '81258833506652962467654916861663255462638893255925467087',
  14. q => '97459699027337713120563706625234329059614037275736591773'
  15. ) or die $keychain->errstr();
  16.  
  17. print "\ne: ".$key->e."\np: ".$key->p."\nq: ".$key->q."\n\nd: ".$key->d."\nn: ".$key->n."\nphi: ".$key->phi."\n";
  18.  
  19. print "\nEverything seems to be ok.\n\n" if $key->check();
  20.  
  21. #print mod_exp ($ct, $key->d, $key->n);
  22.  
  23. my $oaep = new Crypt::RSA::ES::OAEP;
  24.  
  25. print "\nCyphertext: ".$ct."\nTextlength: ".length($ct)."\nBlocksize: ".$oaep->decryptblock (Key => $key)."\n";
  26.  
  27. my $pt = $oaep->decrypt( Key => $key, Cyphertext => $ct) ||
  28. die $oaep->errstr;
  29.  
  30. print $pt;
Add Comment
Please, Sign In to add comment