Guest User

Untitled

a guest
May 22nd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.38 KB | None | 0 0
  1. import java.io.UnsupportedEncodingException;
  2. import java.security.*;
  3.  
  4. import javax.crypto.*;
  5.  
  6. import org.bouncycastle.jce.provider.BouncyCastleProvider;
  7.  
  8.  
  9. public class Test2 {
  10.  
  11.     public static void main (String[] args) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, UnsupportedEncodingException, IllegalBlockSizeException, BadPaddingException{
  12.        
  13.         BouncyCastleProvider provider = new BouncyCastleProvider();
  14.        
  15.         byte[] testo = "Gattino".getBytes("UTF8");
  16.        
  17.         KeyGenerator keyGenerator = KeyGenerator.getInstance("DESede", provider);
  18.         keyGenerator.init(168);
  19.         Key chiave = keyGenerator.generateKey();
  20.        
  21.         Cipher cifrario= Cipher.getInstance("DESede/ECB/PKCS5Padding", provider) ;
  22.         cifrario.init(Cipher.ENCRYPT_MODE, chiave);
  23.        
  24.         System.out.println("Testo in chiaro: " + new String(testo));
  25.         for (int i =0; i< testo.length; i++)
  26.             System.out.print(Integer.toHexString((int)testo[i]) + " ");
  27.        
  28.         byte[] testo_cifrato = cifrario.doFinal(testo);
  29.        
  30.         System.out.println("\nTesto cifrato: ");
  31.         for (int i =0; i< testo_cifrato.length; i++)
  32.             System.out.print(Integer.toHexString((int)testo_cifrato[i]) + " ");
  33.        
  34.         cifrario.init(Cipher.DECRYPT_MODE, chiave);
  35.         byte[] testo_decifrato = cifrario.doFinal(testo_cifrato);
  36.        
  37.         String output = new String(testo_decifrato,"UTF8");
  38.         System.out.println("\nTesto decifrato: "+output);
  39.        
  40.     }
  41. }
Add Comment
Please, Sign In to add comment