上一章讲解了如何使用SQLCipher对数据库文件解密,下面讲下如何对加密后的文件解密。同样需要在github上面下载SQLCipher的解密工具sqlcipher-master.zip。需要在Linux环境下编译源码。下载地址:https://github.com/sqlcipher/sqlcipher
第一步:使用VMware Workstation搭建Linux虚拟机,并安装GCC编译器,sqlite数据库。搭建Linux虚拟机就不在这里做介绍,百度一下。
第二步:
以下操作使用root用户。将下载的sqlcipher-master.zip复制到虚拟机的根目录下进行解压。

这里写图片描述

进入sqlcipher-master文件夹内。
cd sqlcipher-master
参照下图进行编译

这里写图片描述

这里写图片描述

记住还要make

这里写图片描述

编译完就会出现一个sqlcipher的可执行文件。

第三步:
将加密的数据库文件复制进来。使用sqlcipher解密的数据库文件。
sqlite> PRAGMA key = ‘123456’;
sqlite> ATTACH DATABASE ‘my2.db’ AS my2 KEY ”;
sqlite> SELECT sqlcipher_export(‘my2’);
sqlite> DETACH DATABASE my2;

这里写图片描述

注意别忘记语句后面的“ ; ”号。

解密后如下图:
这里写图片描述

将my2.db复制到windows下,用SQLite Expert Personal 3打开。可以看到成功解密。

这里写图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐