Delphi使用wxsqlite加密Sqlite数据库

wxsqlite为sqlite加密的简要分析 1、下载最新的sqlite3:sqlite-amalgamation-3080700,打开,里面有四个文件:shell.c,sqlite3.c,sqlite3.h,sqlite3ext.h. 阅读详情

      提起桌面数据库,Sqlite谁都知道,但对于它的加密一直困扰着很多人,而delphi的加密使用范例更少。在网上混了两天,查找了一些Sqlite加密的相关资料,也知道了wxsqlite这个东西,它是一个sqlite3.dll的嵌入扩展,重要的是里面加入了对Sqlite的AES 128bit-256bit加密扩展,而且用的是Sqlite预留的函数接口,这意味着什么呢?UniDAC从3.5.14版本以后加入了对encrypted sqlite的支持,这功能支持 SEE/CEROD这样使用预留接口开发的加密功能的第三方扩展,也就是说wxsqlite同样能被UniDAC所支持,这意味着你就不用再去改UniDAC的源代码了,wxsqlite可以在我这下载http://download.youkuaiyun.com/source/3215472

 

      下面说说具体的使用方法,下载后你可以在sqlite3/secure目录下找到AES128和AES256两个文件夹,分别包含两种加密类型扩展的库文件,找到sqlite3.dll,然后放到你要调用的路径,然后下面是我随便Copy修改后的delphi的源码:

 

       

 

      不过我下载的最新版本的wxsqlite里已经编译好的sqlite3.dll中,sqlite3_key函数好像是空的,不起作用,后来查了查,是自己在使用UniDAC时直接链接了,所以我直接试着调用了sqlite3_rekey实现了对数据库的加密,加密后的数据库再用记事本打开时已经是乱码了,然后用数据库工具查看时会提示“数据库已经加密”。要更改密码的话首先得把所有多余的链接断掉,然后先Open数据库,再用sqlite3_key设置用来操作数据库的原密码,这样获得操作权之后就能用sqlite3_rekey设置新的密码了。

 

      接下来说说UniDAC里怎么链接加密后的数据库。上面说了,UniDAC3.5.14以后的版本加入了Sqlite的encryption功能,所以在添加链接的时候你在specificOption项里可以将option项中的encryptionkey参数设置为你的数据库密码,这样链接数据库后你就可以随意操作了。

 

      有时间再把这些东西整整,做个直接加密的工具,以后就能非常方便的加密自己的数据库了!

Delphi专用SQLite3数据库接口库wxSqlite3实战解析 SQLite3是一款轻量级、无服务器、嵌入式的关系型数据库引擎,因其无需独立的数据库服务器、零配置、事务支持完整而广泛应用于移动开发、桌面应用及小型系统中。在Delphi平台中,SQLite3凭借其高效的本地数据处理能力,成为许多开发者首选的数据库解决方案。为了更好地在Delphi中集成SQLite3并支持高级功能,如加密与中文字符处理,wxSqlite3组件应运而生。它基于SQLite3官方API封装,提供面向对象的接口,简化了数据库操作流程,并引入了如AES加密、编码自动适配等实用功能。 阅读详情

相关推荐

wxsqlite源码及加密库demo

单独对wxsqlite加密库编译及小demo

wxsqlite3-4.9.4的编译和使用

编译和使用wxSqlite3

m0_52726547的博客 1809

sqlite加密扩展 完美支持delphi unidac及sqlite developer

一个C++写的sqlite3.dll的扩展,这是最新版本,编译后的sqlite3.dll也是最新的3.76版,具有AES128和256的加密扩展,通过sqlite3_rekey函数调用就能直接实现对sqlite数据库的加密,非常方便,sqlite3目录下有直接编译好dll,直接Copy即可使用。值得一提的是,这个嵌入的扩展可以直接在添加了sqlite encryption功能的UniDAC3.5以后版本搭配使用,非常方便。如果是用加密版,请使用sqlite3目录下的加密目录下的版本。有现成的编译好的sqlite3.dll 当前为aes128及aes256两个版本.如果结合sql developer 请替换其目录下的sqlite3.dll

【亲测免费】 探索高效数据管理:wxSQLite3 开源数据库库

在软件开发中,数据管理是关键的一环,而选择合适的数据库库则能极大地提升效率和便捷性。今天我们要介绍的是一个轻量级但功能强大的数据库封装库——[wxSQLite3](https://github.com/utelle/wxsqlite3),它为基于wxWidgets库的程序提供了一个与SQLite 3.x紧密结合的C++接口。 ## 项目简介 wxSQLite3是一个专为wxWidgets库设计

gitblog_00048的博客 833

SQLITE3 数据文件加密与解密程序 DELPHI版

网上大多关于SQLITE3数据文件的加密与解密都是欲言由止,近期因要开发关于SQLITE3数据库类型的软件,做了一下研究。用D7写了这样一个工具。支持SQLITE3数据文件的批量加密与解密。工具自身不依赖SQLITE3.DLL动态库,但是被本工具加密后,需要用到对应版本的SQLITE3.DLL文件。可以将该SQLTE3.DLL保存到你所开发的程序下面。我是DELPHI7用undac连接的,加密数据库文件后需要在undac连接参数里的EncryptionKey的值改成你加密数据库时用的密码即可。其它控件SQLITE3连接控件没有做测试,估计应该是可以的。特别申明,本程序所用SQLITE3.DLL是官方所下,没有做任何修改。">网上大多关于SQLITE3数据文件的加密与解密都是欲言由止,近期因要开发关于SQLITE3数据库类型的软件,做了一下研究。用D7写了这样一个工具。支持SQLITE3数据文件的批量加密与解密。工具自身不依赖SQLITE3.DLL动态库,但是被本工? [更多]

Delphi使用wxsqlite3加密Sqlite3数据库.rar

使用wxsqlite3提供的加密动态库,通过sqlite simple delphi包装类连接sqlite3.dll,自己扩展了sqlite simple delphi包装类,方便Delphi调用,还增加了CheckDbIsEncrypt函数,判断数据库有没有加密。具体使用请参考http://blog.youkuaiyun.com/kunlun122/article/details/41009567

SQLite加密 wxSqlite3

一直在网上搜wxSqlite3的文档,但是总找不到能真正解决问题的,就是一个简单的编译wxSqlite3自带的示例也出了老多问题,后来却发现,其实wxSqlite3的readme中已经有了详细的方法,哦,就在眼皮子底下!为了避免再一次的遗忘,就在这里暂作一个记录吧。 截至记录时间,wxSqlite3的版本号为2.1.1,Sqlite3的版本为3.7.6.2,这两个都可以直接...

dkopg24406的专栏 476

delphi+sqlite3带加密Demo

delphi 使用sqlite3加密功能 1、获取sqlite3.dll,去网上下载wxsqlite3的最新版本代码,解压后其中有一个sqlite3目录,其中有编译好的版本,lib目录下的是原版本,secure目录下有aes128和aes256两个带加密的版本,直接拿其中任一个sqlite3.dll使用即可 2、操作用到的控件,在sqlite3的官网上有不少推荐的sqlite3操作的项目,其中有delphi的,有收费的也有免费的,如果愿意可以去看看,我这里用的是unidac4的版本,网上有破解了的,直接支持操作带加密功能的sqlite3.dll 3、安装好unidac4后,其中有uniconnection可以连接sqlite3,ProviderName选SQLite即可,在Database那里输入数据库文件名称,SpecificOptions那里可以选择客户端dll,也就是你使用的sqlite3.dll,还有加密用到的密钥以及一些其他有用的设置,具体我就不说了。 4、设置好这些后,就可以用uniQuery查询和操作数据库了,这些不用我说了吧,^-^。 如果嫌麻烦可以直接下载我这个demo程序,里面有带sqlite3.7.10版本的sqlite3.dll,包括原版和2个加密版,还送unidac4的操作例子。 编译环境是win7+dxe2+unidac4

在Delphi 7中使用加密的SQLite

  SQLite是一个很好用的单机数据库,体积小巧,支持大多数SQL 92语法,速度快,健壮,使用和分发都很简单。但是免费开源版并不提供加密功能,需要加密得购买原作者的一个插件,价格$2000!我们只好使用第三方的加密版本,这是被逼的。当然还有一个选择就是,在开源的C文件中已经预留了加密接口,有能力的可以自己去实现。 闲话休提。第三方的加密版本已经有人实现了,还不止一个...

201

使用unidac给sqlite数据文件加密

在Delphi中,实现unidac给sqlite数据库文件加密和解密。

保姆级教程:在RK3588开发板上编译带MPP硬件加速的FFmpeg(含完整依赖库配置)

本文提供在RK3588开发板上编译支持MPP硬件加速的FFmpeg的详细教程,涵盖交叉编译环境搭建、MPP框架及依赖库配置,最终实现4K视频硬件编解码性能优化。通过实战步骤和性能对比,展示如何充分发挥RK3588的硬件加速能力。

weixin_30839881的博客 418

支持加密的sqlite推荐wxsqlite

支持加密的sqlite推荐wxsqlite,注意wxsqlite中有几个预编译好的sqlite3.dll,一定选用secure目录下的那个,刚开始用了其它目录下的,试了半天。wxsqlite3-1.9.5.zip/wxsqlite3-1.9.5/sqlite3/secure/sqlite3.dllsqlite加密,推荐文章。在Delphi 7中使用加密的SQLite http:

quasiceo 2817

100个Python代码大全:学完这篇从Python小白到架构师

Python是一种广泛使用的高级编程语言,以其简洁优雅、易于学习和强大的库而闻名。无论你是一位经验丰富的程序员还是初学者,都可以从这种语言的丰富资源中受益。在本篇博客中,我将分享100个实用的Python代码示例,旨在帮助你掌握Python编程,并在日常工作中提高效率。

penggerhe的博客 1万+

delphi Sqlite

Delphi中SQLite如何读写二进制字段(Blob类型) 在Delphi中,有大量的组件可以操作SQLite数据库,如UniDAC就是其中一个比较优秀的,当然还有ASQLite3Components,也有SQLite3版的ODBC驱动,可直接用ADO操作。本文简要说明SynopseSQLite3读写二进制字段,先说下SynopseSQLite3的优点,静态编译集成SQLite3引擎...

dkopg24406的专栏 1235

基于SAHI算法优化YOLOv8的小目标检测性能研究

SAHI(SliceAwareHyperInference)是一种推理优化算法,通过将大图切片为小块并分别推理的方式,实现更精细的小目标检测。提升小目标检测精度:切片后的小目标在每个小块中占比更大,模型能够更好地聚焦。兼容性强:可直接集成到现有目标检测框架中(如YOLO系列、Detectron2等)。支持大分辨率图片和视频推理:减少硬件对大图推理的限制。本文详细探讨了如何通过SAHI(切片辅助超推理算法)结合YOLOv8模型,有效提升小目标检测性能,尤其是在高分辨率图片和视频场景中表现优异。

博客 2371

在Ubuntu上安装Node.js编程

在Ubuntu操作系统上安装Node.js是非常简单的,本文将为您提供详细的安装步骤。这是一个简单的Node.js HTTP服务器示例,它将在本地主机的端口3000上监听请求,并返回"Hello, World!npm是Node.js的包管理器,您可以使用它来安装和管理Node.js模块。您已成功在Ubuntu上安装了Node.js,并创建并运行了一个简单的Node.js应用程序。现在,您已经成功安装了Node.js和npm,让我们创建一个简单的Node.js应用程序并运行它。如有任何疑问,请随时提问。

CodeNexus的博客 3524

delphi mysql 加密_在Delphi 7中使用加密的SQLite

SQLite是一个很好用的单机数据库,体积小巧,支持大多数SQL 92语法,速度快,健壮,使用和分发都很简单。但是免费开源版并不提供加密功能,需要加密得购买原作者的一个插件,价格$2000!我们只好使用第三方的加密版本,这是被逼的。当然还有一个选择就是,在开源的C文件中已经预留了加密接口,有能力的可以自己去实现。闲话休提。第三方的加密版本已经有人实现了,还不止一个。下面分别介绍一下:※ ...

weixin_28309571的博客 324

在 ABAP 世界把 SAML 2.0 玩明白:跨域 SSO 的通信模式、配置路径与落地实践

摘要 SAML 2.0是ABAP平台实现标准化SSO的推荐方案,提供Front-Channel(浏览器传递SAML报文)和Back-Channel(使用工件绑定通过SOAP兑换断言)两种通信方式。前者包括HTTP Redirect和POST绑定,后者通过Artifact绑定提升安全性。配置重点包括:激活ICF服务、使用SAML2事务码建立信任、设置用户标识映射、选择绑定方式(POST易调试、Artifact更安全)及配置安全策略(签名/加密)。典型流程包括SP-initiated和IdP-initiated

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 293

delphi mysql 加密_Delphi SQLite实现加密

SQLite34Delphi:Delphi中操作SQLite库。项目主页:http://code.google.com/p/sv-utils/最新库下载:http://sv-utils.googlecode.com/files/SQLite3_4_Delphi_RC2.zipwxsqlite:这是wxWidgets组件之一,我们用它来实现加密。下载地址:http://jaist.dl.sou...

weixin_39598308的博客 366

KubeVela入门到精通-K8S多集群交付

KubeVela是一个功能强大、易于使用、高度可扩展的应用交付与管理平台。它基于Kubernetes和OAM 技术构建,通过开放应用模型(OAM)来作为顶层的抽像,提供了声明式部署、多集群/混合环境支 持、插件与扩展性、中心化管控以及易于使用与可观测性等特点。

小杨同学的博客 1269

医学图像处理实战:利用OpenSlide解析病理SVS切片的完整解决方案

本文介绍了使用openslide处理病理SVS切片的完整流程,从基础安装到科研应用。主要内容包括:1)SVS切片特点及openslide工具简介;2)环境配置与软件安装;3)基础操作:读取切片、查看信息、可视化不同层级图像;4)进阶操作:坐标裁剪与批量处理;5)科研方向拓展:结合AI模型进行病理分割分类、量化分析及可视化报告。教程提供了完整的代码示例,帮助毕业设计学生快速掌握病理图像分析的核心技能。

m0_71589036的博客 310
上一篇: Delphi使用alphaSkin设计软件界面
下一篇: delphi 调用dll中的资源的另类方法
cyistudio
博客等级 码龄19年 129粉丝 46原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值