首页| 论坛| 消息

标题:Qt全版本 加密sqlite插件共享!
作者:angelus
日期:2013-04-11 13:21
内容:

更新一下帖子
大家可以去下载这个加密插件,基本上已经稳定了
我测试过5.9 编译过,接近完美,测试使用环境,win7 , mac , android , ios
接近完美的意思是:
ios设置会稍微麻烦一点,需要手动去代码里边设置和加载,不过完美使用,
可以在issues标签的closed中查看看下配置方法
该BUG属于我提交和解决的,有什么问题可以回帖!
https://github.com/devbean/QtCipherSqlitePlugin/tree/master


//-------------------------------------------------------------------------------一下为老贴内容
今天编译了下sqlite的加密插件,自己试验,可以使用!
这个插件来自于QtCipherSqlitePlugin项目,支持Qt5.
Qt自带的sqlite创建的数据库文件时明文的,可以直接用文本打开查看,这让人很恼火。

这个是加密前的截图:

虽然排版很奇怪,但里边的数据是可以直接看到的。

这个是加密后的截图:
需要的朋友可以下载。
这里给出源代码和编译后的dll文件!



使用方法:
this->ldb=new QSqlDatabase(QSqlDatabase::addDatabase("SQLITECIPHER","ldb"));//创建数据库
在第一个参数中使用"SQLITECIPHER"代替平时的"SQLITE".
ldb->setDatabaseName("ldb.db"); //设置数据库名称。
ldb->open("angelus","123456");//加密数据库,如果不存在就创建ldb.db并用123456作为密码。
打开数据的open函数加入参数,第一个为name,第二个为密码;
第一个参数可以为空,因为它没有用处,第二个为密码,以后打开用此密码创建的xx.db都需要使用这个密码才能操作。
这个说下需要注意的。如果打开时候输入密码错误,是可以打开数据库的,但你的查询,新建,插入,更新,都是会失败的。

好了,基本就是这样了,如果有什么问题,可以留言!


#1 回 楼主(angelus) 的帖子 [jdwx 04-11 13:48]
这个还不错,sqlite的数据库确实很容易看明白,建表的SQL语句一眼就能看到。
不知道对速度有没有影响?
#2 [toby520 04-11 13:49]
我们目前的sqlite数据库都没有进行加密,这个比较可悲,有了这个应该没有啥问题
#3 Re:回 楼主(angelus) 的帖子 [toby520 04-11 14:38]
引用第1楼jdwx于2013-04-11 13:48发表的 回 楼主(angelus) 的帖子 :
这个还不错,sqlite的数据库确实很容易看明白,建表的SQL语句一眼就能看到。
不知道对速度有没有影响?
jdwx你知道这个插件怎么使用么?以前没接触过
#4 回 3楼(toby520) 的帖子 [jdwx 04-11 14:50]
还没来得及实验,
看楼主的介绍:
this->ldb=new QSqlDatabase(QSqlDatabase::addDatabase("SQLITECIPHER","ldb"));//创建数据库

应该把dll放进/plugins/sqldrivers这里,和原来的sqlite用起来没区别。
#5 回 4楼(jdwx) 的帖子 [toby520 04-11 14:57]
主要针对mingw版本的么?我用qt vs编译出来放到sqldriver下面,报错了 QSqlDatabase: SQLITECIPHER driver not loaded
QSqlDatabase: available drivers: QSQLITE,不知道还要设置哪些东东,我看到一篇文章 http://www.qtbcw.com/forum.php?mod=viewthread&tid=5讲的就是楼主说的那个。

<< 1 2 3 >> (1/5)

回复 发表
主题 版块