2012-05-22 51 views

回答

0

在這裏對加密信息Descrypt的樣品使用的字符串密碼

http://www.androidsnippets.com/encryptdecrypt-strings 
0

你可以使用的功能,如下列:

private static byte[] encrypt(byte[] raw, byte[] clear) throws Exception { 
     SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); 
     Cipher cipher = Cipher.getInstance("AES"); 
     cipher.init(Cipher.ENCRYPT_MODE, skeySpec); 
     byte[] encrypted = cipher.doFinal(clear); 
     return encrypted; 
    } 

    private static byte[] decrypt(byte[] raw, byte[] encrypted) throws Exception { 
     SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); 
     Cipher cipher = Cipher.getInstance("AES"); 
     cipher.init(Cipher.DECRYPT_MODE, skeySpec); 
     byte[] decrypted = cipher.doFinal(encrypted); 
     return decrypted; 
    } 

並調用它們像這樣:

ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
bm.compress(Bitmap.CompressFormat.PNG, 100, baos); // bm is the bitmap object 
byte[] b = baos.toByteArray(); 

byte[] keyStart = "this is a key".getBytes(); 
KeyGenerator kgen = KeyGenerator.getInstance("AES"); 
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG"); 
sr.setSeed(keyStart); 
kgen.init(128, sr); // 192 and 256 bits may not be available 
SecretKey skey = kgen.generateKey(); 
byte[] key = skey.getEncoded();  

// encrypt 
byte[] encryptedData = encrypt(key,b); 
// decrypt 
byte[] decryptedData = decrypt(key,encryptedData); 

參考來自:android encryption/decryption with AES

+0

抄襲呢?請給出原始答案的功勞;) – t0mm13b