Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.11 KB | None | 0 0
  1.         // encrypt method using AES
  2.     private static byte[] encrypt(byte[] rawKey, byte[] input) throws Exception {
  3.        
  4.         byte[] rawPaddedKey = new byte[128];
  5.        
  6.         // Generate the key padding if necessary
  7.         if(rawKey.length < 128){
  8.            
  9.             // Get the KeyGenerator
  10.             KeyGenerator kgen = KeyGenerator.getInstance("AES");
  11.             kgen.init(128-rawKey.length);
  12.            
  13.             SecretKey skey = kgen.generateKey();
  14.             byte[] keyPadding = skey.getEncoded();
  15.      
  16.             System.arraycopy(rawKey, 0, rawPaddedKey, 0, rawKey.length);
  17.             System.arraycopy(rawPaddedKey, 0, rawPaddedKey, rawKey.length, keyPadding.length);
  18.         }
  19.        
  20.         else{
  21.             System.arraycopy(rawKey, 0, rawPaddedKey, 0, rawKey.length);
  22.         }
  23.        
  24.         // construct secret key from rawPaddedKey byte stream using AES
  25.         SecretKeySpec skeySpec = new SecretKeySpec(rawPaddedKey, "AES");
  26.         // generate cipher object for AES transformation
  27.         Cipher cipher = Cipher.getInstance("AES");
  28.         // initialize cipher with secret key in encrypt mode
  29.         cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
  30.         // encrypt data
  31.         byte[] encrypted = cipher.doFinal(input);
  32.         return encrypted;
  33.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement