Возможно, файл Obfuscate / Encrypt SharedPreferences возможен?

Итак, я заинтересован в запутывании файла SharedPreferences xml моего приложения, так же, как Android LVL, чтобы запутать данные лицензии cahce. Было бы это возможно? Много google-копания дало мало результатов, которые могли бы решить мой вопрос. И я, конечно, не криптолог.

Как насчет других форм шифрования? Моя конечная цель состоит не в том, чтобы попытаться создать пулемет, но я просто хочу заблокировать более 90% людей, которые воздерживаются от беспорядков с ним, если это не в обычном тексте.

Не верьте, что это возможно, не без серьезных изменений (возможно, вы можете написать свою собственную настройку Preferences), и я даже не мог даже подумать о том, как вы сможете убедить Android загрузиться из вашей настройки Preferences.

Реализация SharedPreferences по умолчанию не может быть заменена, насколько я могу судить: если вам нужно зашифровать что-то, сделайте то, что делает Латвия, и зашифруйте значение, которое вы пишете в XML SharedPreferences, или создайте свой собственный полностью зашифрованный файл и самостоятельно управляйте им на диске ,

Можете ли вы не использовать схему для изменения данных в каком-то mannner, чтобы сделать ее непостижимой для большинства людей? Я могу предложить один из способов. Во-первых, используйте строку фиксированного размера, чтобы она не меняла длину с сохраненными данными. Затем вы можете применить простую функцию для swizzle байтов и смещения каждого байта. Таким образом, конечный результат по-прежнему будет строкой, но для кого-то нормального будет сложно понять, что это такое, хотя человек, склонившийся к взлому, может добиться успеха.

Как насчет обфускации ключей и значений, хранящихся в преференции-XML?

Я сделал обертку для общих настроек, которые шифруют оба ключа и значения: https://github.com/sveinungkb/encrypted-userprefs

Я создал реализацию SharedPreferences с использованием AES encryiption. Проект представляет собой модуль maven. Если вам это нужно, взгляните. https://github.com/kovmarci86/android-secure-preferences

Что вы можете сделать, это … обернуть sharedpreferences с помощью собственного метода .. и избегать использования имени вашего метода, такого как «Шифровать», «Расшифровать» «String» и т. Д., Потому что proguard не будет запутывать слово ..

Здесь, например, https://github.com/afiqiqmal/ConcealSharedPreference-Android