Android加密/解密sqlite数据库100%安全

San*_*Kat 6 java sqlite security encryption android

我是Android安全角度的新生婴儿.我想要做的是加密/解密Sqlite数据库.

我已经完成了多个教程,但似乎没有任何工作.我已经通过Sql Cipher链接,但在这里我编码,我得到的问题如下:

Type Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lnet/sqlcipher/AbstractCursor$SelfContentObserver;
Run Code Online (Sandbox Code Playgroud)

另外我不需要密码保护的文件.我使用了Android库提供的Cipher默认类,如下所示:

Cipher c = Cipher.getInstance("RSA");
            c.init(Cipher.ENCRYPT_MODE, privateKey);
Run Code Online (Sandbox Code Playgroud)

但我发现它并不安全.我想它可以被黑客解密.我需要适当的100%加密和解密安全的Sqlite数据库.

Chi*_*eep 6

SQL Lite是一个轻量级的数据库系统.据说它还有很少的黑客可以进入系统加密或密码保护.以下是我所知道的一些: -

  1. 请参阅:SQLite加密扩展(SEE)是SQLite的公共域版本的附加组件,允许应用程序读取和写入加密的数据库文件.支持四种不同的加密算法:

    RC4

    OFB模式下的AES-128

    CCM模式下的AES-128

    OFB模式下的AES-256

  2. WxSQLite:一个wxWidgets样式的c ++包装器,它也实现了SQLite的加密.

3. SQLCipher - SQLCipher占用空间小,性能卓越,是保护嵌入式应用数据库的理想选择,非常适合移动开发.

我个人建议根据你的需要,SQLCipher是最好的选择.我试过了.强烈推荐的开源系统.