Android数据库SQLCipher加密解密

来源:互联网 发布:javascript模拟器 编辑:程序博客网 时间:2024/05/30 02:23

简介:SQLCipher是一个在SQLite基础之上进行扩展的开源数据库,它主要是在SQLite的基础之上增加了数据加密功能,如果我们在项目中使用它来存储数据的话,就可以大大提高程序的安全性。
Android客户端集成sqlcipher 加密数据库步骤:
1, 下载sqlcihper工具包,下载地址:
https://s3.amazonaws.com/sqlcipher/SQLCipher+for+Android+v2.2.2.zip
SQLCipher的github地址:https://github.com/sqlcipher
2, 解压工具包,会看到里面有assets和libs这两个目录,稍后需要将这两个目录中的内容添加到Android项目当中。
3, 在创建数据库之前调用SQLiteDatabase.loadLibs(context);
4, 使用工具包的接口创建和使用数据库,使用方法与原生sqlite数据库接口一致. 唯一不同的是,接口getWritableDatabase(Const.dbPassword); 多了一个参数,该参数是用来密钥.

        解密数据库:

1, 下载Windows系统工具sqlcipher-3.0.1.
2,拷贝经手机加密生成的数据库到bin目录
3,命令行跳转到bin目录,依次执行以下命令行:

sqlcipher-shell32 ‘加密的数据库名’
pragma key=’密钥’;
attach database ‘a.db’ as a key ”;
select sqlcipher_export(‘a’);
.q

4 同目录所产生的a.db 是解密后的数据库,用常规数据库工具打开查看数据。

查考链接 http://blog.csdn.net/wshngyf/article/details/51112664

0 0