Wie verschlüsselt man Dateien von einer SD-Karte mit AES in Android?
Ich möchte das Bild von der SD-Karte verschlüsseln und es mit AES erneut auf der SD-Karte speichern. Die Hauptidee ist, dass die Anwendung ein Bild durchsucht, es dann verschlüsselt, wenn ich einen Knopf drücke, und es dann auf der SD-Karte speichert. so wäre mein image sicher.
In diesem Tutorial ist es mir bereits gelungen, Zeichenfolgen mithilfe von AES zu verschlüsselnhttp://www.androidsnippets.com/encryptdecrypt-strings, aber ich habe keine Ahnung, wie man das mit einem Bild macht, nicht mit einem String.
So mache ich es mit einem 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;
}
Kann jemand mir helfen, Beispielcode zu geben, wie man verschlüsseltein Bild mit AES?
Vielleicht muss es einen I / O-Dateistream verwenden, aber ich habe keine Ahnung, wie ich ihn mit diesem Code implementieren soll.