Я играл с API-интерфейсом Device Administration на моем Pandaboard, и кажется, что метод setStorageEncryption не производит никакого эффекта, несмотря на то, что getStorageEncryption имеет статус TRUE.setStorageEncryption не производит никакого эффекта
В случае платы Panda внутренняя память приложения физически размещена где-то на съемной флеш-карте (у нее нет другой флэш-памяти). Поэтому я сделал следующее:
- Call setStorageEncryption (true) (DeviceAdminSample.java из примера ApiDemos).
- Убедитесь, что шифрование активно, вызвав getStorageEncryption, getStorageEncryptionStatus и сохраните файл примера на внутренней памяти.
if (mDPM.getStorageEncryption(mDeviceAdminSample)) {
string = "TRUE Encryption";
}
FileOutputStream fos = null;
fos = openFileOutput("hello_file.txt", Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();
Извлеките SD-карту из Pandaboard, поместите его в кард-ридер и скопировать все содержимое на мой компьютер
Судо дд, если =/DEV/SDC о = ~ /workspace/flash_card.bin
пытаются найти строку:
$ Grep -Ubo --binary-файлов = текст «ИСТИНА Encryp Тион»~/рабочее пространство/flash_card.bin
583576877: ИСТИНА Шифрование
Как он нашел строку я сделать вывод, что шифрование не на месте.
Действительно ли setStorageEncryption разрешает шифрование или он только запрашивает шифрование или, другими словами, «объявляет о своем намерении», чтобы зашифровать хранилище?