Почему бы не сохранить файлы на SDCard и не зашифровать их с помощью какого-либо строгого алгоритма? Как вы говорите, / данные так же безопасны, как SDCard ...
Чтобы проверить доступное пространство для данного пути, используйте класс StatFs .
Изменить 11/04/2011:
Вы должны сделать несколько тестов, чтобы проверить, будет ли расшифровка данных слишком медленной или нет. У тебя может быть хороший сюрприз. Также обратите внимание на алгоритмы TEA и Blowfish , которые кажутся одними из самых быстрых "сильных" алгоритмов. Или просто зашифруйте свои данные с помощью очень простого алгоритма, который предотвратит прямое копирование изображений (но не поможет противостоять лучшим хакерам).
И я не думаю, что на телефоне будет какая-либо безопасная область для временного хранения расшифрованных файлов, потому что любой пользователь root может получить доступ к любому месту телефона (а рутирование андроида очень просто для всех)
Изменить 12/04/2011:
Вам нужны все 10 МБ одновременно? Не возможно ли загрузка материала в память? Сбоит ли ваше приложение с OutOfMemoryException, если вы загружаете свои данные при запуске приложения (и / или в фоновом режиме) и сохраняете его загруженным в течение срока службы приложения?
Последней возможностью будет дешифрование / загрузка содержимого в память с использованием некоторого собственного интерфейса: память выделяется вне кучи Java, которая не будет использовать квоту памяти приложения, и декодирование будет значительно ускорено, поскольку собственный код будет работать намного быстрее, чем эквивалентный код Java.