I was trying to extract data from an Android app which uses SQLcipher. SQLcipher is an extension of SQLite that encrypts database files with 256-bit AES.
Most of the application code is compressed and protected with some sort of anti-reverse-engineering stuff, so no source code and no debuggers. However, the SQLcipher binary lies in
lib/libsqlcipher.so. I'm curious if I can extract the encryption key simply by swapping
sqlite3_key function so that it logs the encryption key to file). The plan is to compile my own version of
libsqlcipher.so, repack APK, and run it on a device.
Will this method work as expected? It sounds too easy to be true:)