sqlite шифрование для андроид - PullRequest
38 голосов
/ 18 мая 2011

Я очень стараюсь найти возможность зашифровать свою базу данных sqlite на устройствах Android, но мне не удалось найти удовлетворительное решение.

Мне нужно что-то вроде библиотеки для ссылок, чтобыиметь шифрование / дешифрование "на лету" моей базы данных, используя обычные функции sqlite.

Я не хочу шифровать данные перед сохранением.

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

Я знаю о следующих проектах:

Но я не могу найти никакого рабочего примера для этого материала.

Кстати, я абсолютно готов купить коммерческий билд, но мне нужно проверить его, прежде чем потратить несколько сотен долларов.

Кто-нибудь сам решал эту проблему?

edit: вопрос решается commonsWare, если вы перейдете по его ссылке: SQLCypher port на Android Вы сможете скачать необходимые файлы и добавить их в свой проект.Это может выглядеть так: enter image description here

Ответы [ 3 ]

42 голосов
/ 18 мая 2011

Попробуйте использовать порт SQLCipher для Android вместо обычного SQLCipher.

1 голос
/ 06 января 2017

litereplica поддерживает шифрование с использованием шифра ChaCha, быстрее, чем AES на портативных устройствах.

Для Android есть привязок .

Для создания и открытия зашифрованной базы данных мы используем такой URI:

"file:/path/to/file.db?cipher=...&key=..."
0 голосов
/ 22 сентября 2018

Если кто-то еще ищет:

Переопределите функцию SQLiteOpenHelper, как показано ниже:

void onConfigure(SQLiteDatabase db){ db.execSQL("PRAGMA key = 'secretkey'"); }

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