Advertisement
Anakthewolf

RSA

May 11th, 2014
343
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/perl -w
  2.  
  3. use strict;
  4. use warnings;
  5. use feature 'say';
  6.  
  7. use Crypt::RSA;
  8.  
  9. # istanza oggetto Crypt::RSA
  10. my $rsa=Crypt::RSA->new();
  11.  
  12. # Alice produce la sua chiave privata per decifrare e la chiave pubblica da distribuire per cifrare
  13. my ($public, $private) = $rsa->keygen (
  14.     Size      => 1024,
  15.     Verbosity => 1
  16. ) or die $rsa->errstr();
  17.  
  18. say '-> Chiavi privata e pubblica OK';
  19.  
  20. my $plainText='RSA al WORKSHOP@UNINA2014';
  21.  
  22.  # Bob cripta il suo messaggio per Alice con la chiave pubblica che ha ricevuto
  23.   say '-->Cifratura RSA in corso...';
  24.  
  25.  my $encryptedText = $rsa->encrypt (
  26.     Message => $plainText,
  27.     Key => $public
  28. ) or die $rsa->errstr();
  29.  
  30. say '-->Cifratura RSA completata';
  31. #say $encryptedText."\n";
  32.  
  33. # Alice con la sua chiave privata  è la sola che può decriptare il messaggio che Bob le ha inviato
  34.  say '-->Decifratura RSA in corso...';
  35.  
  36.  my $decryptedText = $rsa->decrypt (
  37.     Cyphertext => $encryptedText,
  38.     Key => $private
  39. ) or die $rsa->errstr();
  40.  
  41. say '-->Decifratura RSA completata';
  42. say $decryptedText;
Advertisement
RAW Paste Data Copied
Advertisement