Я хочу зашифровать изображение с SD-карты и снова сохранить его на SD-карте с помощью AES. Основная идея заключается в том, что приложение просматривает изображение, а затем шифрует его, когда я нажимаю кнопку, а затем сохраняю его на SD-карте. поэтому мое изображение будет безопасным.
Я уже успешно выполняю строковое шифрование с использованием AES из этого учебника http://www.androidsnippets.com/encryptdecrypt-strings, но у меня нет идеи, как это сделать с помощью изображение, а не строка.
Вот как я делаю это со строкой:
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;
}
Может ли кто-нибудь помочь мне привести пример кода, как зашифровать изображение с помощью AES?
возможно, он должен использовать поток файлов ввода-вывода, но у меня нет идеи, как реализовать этот код.