Como criptografar arquivos do cartão SD usando o AES no Android?

Eu quero criptografar a imagem do cartão SD e armazená-lo novamente no cartão SD novamente usando o AES. A idéia principal é que o aplicativo procure uma imagem, criptografe-a quando eu apertar um botão e, em seguida, armazene-a no cartão SD. então minha imagem estaria segura.

Eu já consegui fazer a criptografia de string usando o AES deste tutorialhttp://www.androidsnippets.com/encryptdecrypt-strings, mas eu não tenho idéia de como fazer isso com uma imagem, não uma string.

É assim que eu faço com uma string:

public static String encrypt(String seed, String cleartext) throws Exception  
{
    byte[] rawKey = getRawKey(seed.getBytes());
    byte[] result = encrypt(rawKey, cleartext.getBytes()); 
    return toHex(result);
}

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;
}

Alguém pode me ajudar a dar um exemplo codificar como criptografaruma imagem com o AES?

talvez seja necessário usar o fluxo de arquivos de E / S, mas não tenho uma ideia de como implementar com esse código.

questionAnswers(1)

yourAnswerToTheQuestion