Закодированные изображения Base64 на Android / iOS - PullRequest
0 голосов
/ 16 марта 2011

Я ищу способ запутать изображения, хранящиеся в моем приложении, и в настоящее время рассматриваю кодировку Base46.

Мне нужно что-то с минимальными издержками или, если возможно, повышение производительности по сравнению со стандартными файлами в файловой системе.

Может ли кто-нибудь прокомментировать осуществимость base64 кодирования изображений (png) и последующего использования (декодирования?) На целевых платформах?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 16 марта 2011

От какой атаки вы пытаетесь защитить? Base64 достаточно легко распознается , а имеет потенциально значительное влияние с точки зрения пространства (каждое изображение будет занимать дополнительно 33% пространства).

Какой-то сдвиг XOR будет сложнее обнаружить только по данным , но это не будет адекватной защитой для действительно значительных активов.

0 голосов
/ 16 марта 2011

Имейте в виду, что вы можете столкнуться с проблемами памяти при хранении нескольких растровых изображений в памяти приложения в Android. OutOfMemoryErrors, кажется, повторяющаяся проблема при работе с растровыми изображениями в Android. Вот пример: outofmemoryerror-bitmap-size-превышает-vm-budget-android

0 голосов
/ 16 марта 2011

Я уверен, что вы понимаете, что Base64 не обманет никого, кто действительно хочет получить ваше растровое изображение.

Джон Скит прав, Base64 хорош для кодирования двоичных данных в удобочитаемом формате, но здесь вам не поможет. XOR против вашего пароля будет быстрее и не потребует дополнительных затрат.

Если вы действительно хотите запутать свои растровые изображения, я предлагаю вам сохранить их в папке ресурсов " raw ". Делая это, вы сможете сохранить красивую абстракцию Android, которая обрабатывает различные форм-факторы (ldpi, hdpi, ...). Расширяет класс ImageView для непосредственной работы с R.raw.filename id и выполняет чтение файла / декодирование потока / создание растрового изображения там. Таким образом вы сможете легко вернуться к стандартному способу выполнения действий, если это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...