sqlcipher加密数据库

个人博客迁移,欢迎光临

今天介绍一个在之前公司用到的技术(发现文章一直在草稿箱里没发,今天发了),觉得还不错,分享出来。

在android开发中有时候需要对数据库进行加密处理,不管这个数据库是我们程序自己创建的还是我们自己从外部导入的已经存在的数据库,我们都有可能需要对它进行加密。

加密方式无非两种,一种是对读写的内容进行加密,另一种就是对数据库整个文件进行加密。第一种方式就非常多了,这里不做介绍,今天主要介绍第二种方式——利用sqlcipher对Android的sqlite数据库进行加密。

1、导入如图中的3个jar文件和3个so文件(在附件代码里有提供)

 

2、对于我们自己创建的数据库,只要在创建的时候加入创建的密码即可,第二个参数即为密码

 

mDataBase = SQLiteDatabase.openOrCreateDatabase(databaseFile, mKey, null);


3、要如何修改刚刚创建的加密数据库,方法也很简单,只需执行如下两行代码即可

 

 

mDataBase.execSQL("PRAGMA key='" + oldpwd + "'");
mDataBase.execSQL("PRAGMA rekey='" + newpwd + "'");


设置完新密码后对数据库的操作如果出现错误极有可能是密码有误的原因。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值