Android examples for java.security:AES
AES encrypt with Key
import java.io.UnsupportedEncodingException; import java.security.Key; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.spec.AlgorithmParameterSpec; import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; import android.util.Base64; public class Main { private static final String ENCRYPTION_KEY = "RwcmlVpg"; private static final String ENCRYPTION_IV = "4e5Wa71fYoT7MFEX"; public static String encrypt(String src) { try {/*from w w w . j a va 2s. c o m*/ Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); cipher.init(Cipher.ENCRYPT_MODE, makeKey(), makeIv()); return Base64.encodeToString(cipher.doFinal(src.getBytes()), Base64.NO_WRAP); } catch (Exception e) { throw new RuntimeException(e); } } static AlgorithmParameterSpec makeIv() { return makeIv(ENCRYPTION_IV); } static AlgorithmParameterSpec makeIv(String ivString) { try { return new IvParameterSpec(ivString.getBytes("UTF-8")); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return null; } static Key makeKey() { return makeKey(ENCRYPTION_KEY); } static Key makeKey(String passkey) { try { MessageDigest md = MessageDigest.getInstance("SHA-256"); byte[] key = md.digest(passkey.getBytes("UTF-8")); return new SecretKeySpec(key, "AES"); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return null; } }