Ich habe mit der Device Administration API auf meinem Pandaboard gespielt und es scheint, dass die setStorageEncryption-Methode keinen Effekt erzeugt, obwohl der von getStorageEncryption zurückgegebene Status TRUE ist.setStorageEncryption erzeugt keinen Effekt
Bei Pandaboard wird der interne Speicher der Anwendung physisch irgendwo auf der Wechselspeicherkarte platziert (es hat keinen anderen Flashspeicher). Also habe ich folgendes getan:
- Aufruf setStorageEncryption (true) (DeviceAdminSample.java von ApiDemos Beispiel).
- Überprüfen Sie, ob die Verschlüsselung aktiv ist, indem Sie getStorageEncryption, getStorageEncryptionStatus aufrufen und eine Beispieldatei auf dem internen Speicher speichern.
if (mDPM.getStorageEncryption(mDeviceAdminSample)) {
string = "TRUE Encryption";
}
FileOutputStream fos = null;
fos = openFileOutput("hello_file.txt", Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();
Extrahieren Sie die SD-Karte aus dem Pandaboard, steckte es in den Kartenleser und kopieren Sie den gesamten Inhalt auf meinem PC
sudo dd if =/dev/sdc von = ~ /workspace/flash_card.bin
versuchen, die Zeichenfolge zu finden:
$ grep -Ubo --binary-files = text ‚TRUE Encryp tion‘~/Arbeitsplatz/flash_card.bin
583576877: TRUE Encryption
Da es die Zeichenfolge ich einen Abschluss machen gefunden, dass keine Verschlüsselung vorhanden ist.
Aktiviert tatsächlich setStorageEncryption die Verschlüsselung oder fordert nur Verschlüsselung an oder mit anderen Worten "erklärt Ihre Absicht", den Speicher verschlüsselt zu haben?