Delphi使用wxsqlite加密Sqlite数据库
来源:互联网 发布:网上试衣间软件 编辑:程序博客网 时间:2024/06/06 03:35
提起桌面数据库,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.csdn.net/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使用wxsqlite加密Sqlite数据库
- Delphi使用wxsqlite加密Sqlite数据库
- 关于sqlite和wxsqlite的数据库加密
- 使用CppSQLite3封装结合wxSQLite实现加密版的SQLite数据库操作类
- 支持加密的sqlite推荐wxsqlite
- wxsqlite为sqlite加密的简要分析
- wxSqlite给sqlite数据库添加口令
- 准备将wxSQLite的加密功能整合到SQLite里
- 在Delphi 7中使用加密的SQLite
- Sqlite数据库的加密
- c# sqlite 数据库加密
- Sqlite数据库的加密
- Sqlite数据库的加密
- sqlite数据库加密操作
- Sqlite数据库的加密
- 加密的sqlite数据库
- Sqlite数据库的加密
- 加密,解密Sqlite数据库
- Visifire一页多图tooltip有时不能正常显示的解决方法
- [DB][ORACLE]逗号分隔列转行的实现方法
- 探索评估cpu性能的方法
- VS2003在vista/win7下搜索会出现僵死
- n*n个数按口字顺序存放
- Delphi使用wxsqlite加密Sqlite数据库
- javascript运算符:==与===的区别,||和&&特殊用法
- OpenCV 之 HaarTraining 算法剖析
- 支持窗口滚动条控制的类(SDK版)
- seo关键词
- 什么是长尾关键词?
- BlackBerry 照相编程
- 网页设计中像素、PX与百分比的迷惑
- 读取归档凭证的一般步骤