当前位置: 首页 > news >正文

QT使用SQLCipher加密SQLite

1. SQLCipher下载

方式1:

通过网盘分享的文件:QtCipherSqlitePlugin-master.zip
链接: https://pan.baidu.com/s/1ueZMUUUj6T5er7b3fUSmNg 提取码: ic5b

方式2:

SQLCipher: SQLCipher 提供了对 SQLite 数据库的传输层进行全面加密的工具。通过使用 SQLCipher ,整个加密过程对客户端是透明的,无需改动应用程序。

2. 使用QT编译

(1) 打开sqlitecipher.pro项目,直接配置编译器编译

(2) 打开得到的编译产物目录,复制文件:

        (a)把该目录下的lib\cmake\Qt5Sql路径下的文件复制到你QT安装路径的\5.12.0\mingw73_64\lib\cmake\Qt5Sql下.其中5.12.0和mingw73_64更改为你自己的QT版本和需要使用数据库加密的编译器.

        (b)把该目录下的\plugins\sqldrivers路径下的.a后缀文件复制到你QT安装路径的5.12.0\mingw73_64\lib下.其中5.12.0和mingw73_64更改为你自己的QT版本和需要使用数据库加密的编译器.

        (c)把该目录下的\plugins\sqldrivers路径下的.dll后缀文件复制到你QT安装路径的5.12.0\mingw73_64\plugins\sqldrivers下.其中5.12.0和mingw73_64更改为你自己的QT版本和需要使用数据库加密的编译器.

3. 验证

#include "Widget.h"
#include <QApplication>
#include <QSqlDatabase>
#include <QDebug>
#include <QtSql>
#include <QCoreApplication>
#include <QStandardPaths>
#include <QDir>
#include <QFile>
#include <QDebug>

//db.setConnectOptions("QSQLITE_USE_CIPHER=aes256cbc;");

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    
    Widget w;
    w.show();

    qDebug() << QSqlDatabase::drivers();

    return a.exec();
}

输出信息中有SQLITECIPHER即为成功.

4. 使用

和普通使用一样,只不过打开之前使用

db.setConnectOptions("QSQLITE_USE_CIPHER=aes256cbc;");
QSQLITE_USE_CIPHER参数根据需求自己选择

5. 参考

QSqlite数据库加密方法_qt cipher setconnectoption-CSDN博客

相关文章:

  • 词袋模型和词嵌入模型区别和关联分析(词袋模型是否属于词嵌入模型)
  • 网络安全概论——数字证书与公钥基础设施PKI
  • Svelte 最新中文文档翻译(8)—— @html、@const、@debug 模板语法
  • [AI]从零开始的llama.cpp部署与DeepSeek格式转换、量化、运行教程
  • 【鸿蒙HarmonyOS Next实战开发】实现组件动态创建和卸载-优化性能
  • HCIA项目实践---ACL访问控制列表相关知识和配置过程
  • SSH IBM AIX服务器相关指标解读
  • 【前端框架】深入Vue 3组件开发:构建高效灵活的前端应用
  • ARP 地址解析协议
  • 【Unity】打包运行后如何查看日志
  • 后端程序如何应对流量激增
  • 使用Java爬虫获取京东商品评论API接口(JD.item_review)数据
  • 微软AutoGen高级功能——Swarm
  • 缓存的介绍
  • 车联网下什么是V2X与MQTT在V2X中重要位置
  • Cursor AI编程指南
  • Java练习(20)
  • 定时拨测指定url连通性
  • 小米红米手机澎湃2.0解锁BL 绕澎湃社区验证 救砖以及9008授权
  • mysql之联合索引
  • 俄乌上周在土耳其直接谈判,外交部回应
  • 无人机企业从科技园区搬到乡村后,村子里变得不一样了
  • 私家车跑“顺风”出事故,意外险赔不赔?
  • 以色列媒体:哈马斯愿意释放部分人员换取两个月停火
  • 2人恶意传播刘国梁谣言被处罚,媒体:以法律利剑劈谣斩邪,加快推进依法治体
  • 2025年上海科技节开幕,人形机器人首次登上科学红毯