Android 数据库加密】的更多相关文章

版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/6241964.html 前言 大家好,我是Cavalier,这次和大家分享的主题是数据库加密.当今移动互联网数据安全至关重要,而数据库是Android常用的数据持久化方案,但是原生的sqLite并不支持密码加密,目前常用的数据库加密方式大部分是字段加密,或者是内容加密.这里特别推荐使用sqlcipher的数据库加密方案,使用与原生一致,(sqlcipher…
一 一个简短的引论   SQLite是一个轻量的.跨平台的.开源的数据库引擎.它的读写效率.资源消耗总量.延迟时间和总体简单性上具有的优越性,使其成为移动平台数据库的最佳解决方式(如Android.iOS). Android系统内置了SQLite数据库.而且提供了一整套的API用于对数据库进行增删改查操作.具体就不具体说明了. 然而.Android平台自带的SQLite有一个致命的缺陷:不支持加密.这就导致存储在SQLite中的数据能够被不论什么人用不论什么文本编辑器查看到.假设是普通的数据还好…
前言: 最近研究了Android Sqlite数据库(文章地址:Android数据存储之Sqlite的介绍及使用)以及ContentProvider程序间数据共享(Android探索之ContentProvider熟悉而又陌生的组件),我们清晰的知道Sqlite数据库默认存放位置data/data/pakage/database目录下,对于已经ROOT的手机来说的没有任何安全性可以,一旦被利用将会导致数据库数据的泄漏,所以我们该如何避免这种事情的发生呢?我们尝试这对数据库进行加密. 选择加密方案…
Android使用的是开源的SQLite数据库,数据库本身没有加密,加密思路通常有两个: 1. 对几个关键的字段使用加密算法,再存入数据库 2. 对整个数据库进行加密 SQLite数据库加密工具: 收费工具: SSE(SQLite Encryption Extension) 免费工具: SQLCipher SQLCipher使用: SQLCipher是完全开源的软件,提供256-bit AES加密 源码编译: 1. OpenSSL编译 SQLCipher源码编译需要依赖OpenSSL提供的lib…
最近因为一些项目的安全性需要将数据库加密,一开始想到的就是先将数据库通过AES加密,然后运行时再解密,另一种是将数据库里的内容加密. 很快这两种方案都是不理想的,第一种加密方式形同虚设,第二种,如果加密的字段是要查找数据就变得麻烦. 所以第三种方案就是在内存里解密,在网上查到SQLITE是支持加密的, 所以就根据网上的指导一步步地将SQLITE编译成支持加密的. 那下一步就是怎样做成SDK去方便使用?第一个念头就是将原生的数据库使用方式移植过来,但做起来比开始想像的难了点,但最终也在修修补补中完…
说到数据库加密,目前最好且唯一的方案就是SqlCipher对sqlite3整体加密,微信也用的它.开源,且支持很多平台. 单就Android来说,集成不算太麻烦,1个jar包,3个so库,1个zip. jar包中基本上重写了android.database.sqlite包中所有的类,全部替换成了net.sqlcipher.sqlite包.why?因为sqlcipher加密后,需要密码才能打开该数据库.所以它把所有的都重写了一遍,这是一个坑,一会Stay再来说明. 整体来说sqlcipher还是比…
说到数据库加密,目前最好且唯一的方案就是SqlCipher对sqlite3整体加密,微信也用的它.开源,且支持很多平台. 单就Android来说,集成不算太麻烦,1个jar包,3个so库,1个zip. jar包中基本上重写了android.database.sqlite包中所有的类,全部替换成了net.sqlcipher.sqlite包.why?因为sqlcipher加密后,需要密码才能打开该数据库.所以它把所有的都重写了一遍,这是一个坑,一会Stay再来说明. 整体来说sqlcipher还是比…
关于SQLite,SQLCipher和FMDB SQLite是一个轻量的.跨平台的.开源的数据库引擎,它的在读写效率.消耗总量.延迟时间和整体简单性上具有的优越性,使其成为移动平台数据库的最佳解决方案(如iOS.Android).然而免费版的SQLite有一个致命缺点:不支持加密.这就导致存储在SQLite中的数据可以被任何人用任何文本编辑器查看到. 如果我们想要使得自己的数据库加密,解决方案就是使用另一款开源的加密数据库SQLCipher,SQLCipher使用256-bit AES加密,由于…
1.使用Sqlcipher对数据库加密,并结合ORM框架LitePal进行使用. 2.对LitePal的使用我就不在讲解了,大家可以参考下面七篇博客: http://blog.csdn.net/guolin_blog/article/details/38461239 http://blog.csdn.net/guolin_blog/article/details/38556989 http://blog.csdn.net/guolin_blog/article/details/39151617…
数据库GreenDao.jpg 之前在开发过程中,数据库基本上会使用Litepal或者SQlite自己写,最近换新环境,公司原先使用的数据库就是GreenDao,在各种情况的作用下,准备了解下GreenDao,顺便写一篇文章记录下GreenDao的基本使用!   Android开发者聚集地 本文主要从如下几个方面进行讲解 存储的数据库结构 GreenDao的优缺点 GreenDao的使用配置 使用GreenDao实现数据的增删改查 GreenDao的注解使用 GreenDao的关系处理 Gree…