Jak zaszyfrować plik z karty SD za pomocą AES w Androidzie?
Chcę zaszyfrować obraz z karty SD i ponownie zapisać go na karcie SD za pomocą AES. Główną ideą jest przeglądanie obrazu przez aplikację, a następnie szyfrowanie jej po naciśnięciu przycisku, a następnie zapisanie jej na karcie SD. więc mój obraz byłby bezpieczny.
Udało mi się już wykonać szyfrowanie ciągów przy użyciu AES z tego samouczkahttp://www.androidsnippets.com/encryptdecrypt-strings, ale nie mam pojęcia, jak to zrobić z obrazem, a nie łańcuchem.
W ten sposób robię to za pomocą ciągu:
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;
}
Czy ktoś może mi pomóc podać przykładowy kod szyfrowaniaobraz z AES?
może musi używać strumienia plików I / O, ale nie mam pojęcia, jak zaimplementować ten kod.