SqlCipher编译以及如何使用

本文介绍如何使用SqlCipher对数据库进行加密及解密。具体步骤包括在Cygwin环境下配置与编译SqlCipher源码,创建加密数据库等。适用于需要对数据库安全性有较高要求的场景。
部署运行你感兴趣的模型镜像

需要软件:cygwin

需要的源码:SqlCipher官网自己去找,共两个,一个给数据库加密的,一个用java写的,给数据库解密直接使用的

给数据库加密的:https://github.com/sqlcipher/sqlcipher

解密的:http://sqlcipher.net/downloads


一、编译动态库,生成加密的数据库

1、打开cygin

2、进入加密数据库项目的根目录,例(E:\sqlcipher-sqlcipher-ff9a340)

3、输入($ ./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" \
    LDFLAGS="-lcrypto")

4、完成之后在make一下  $ make

5、然后按照官方提供的方法一步一步步去创建数据库


您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

### SQLCipher 编译教程 SQLCipher 是 SQLite 的加密扩展版本,支持 AES-256 加密功能。以下是关于如何在不同平台上编译 SQLCipher 的详细说明。 #### 一、Linux 平台下的编译过程 为了在 Linux 上成功编译 SQLCipher,可以按照以下方式操作: 1. **安装依赖项** 需要先安装 OpenSSL 和其他必要的开发工具包。 ```bash sudo apt-get update && sudo apt-get install libssl-dev build-essential autoconf automake pkg-config ``` 2. **获取 SQLCipher 源码** 下载最新版的 SQLCipher 源码并解压[^3]。 ```bash wget https://github.com/sqlcipher/sqlcipher/archive/refs/tags/v4.0.1.tar.gz tar -xzvf v4.0.1.tar.gz cd sqlcipher-4.0.1/ ``` 3. **配置编译选项** 使用 `./configure` 脚本来设置编译参数。如果需要启用临时存储或禁用某些特性,则可以通过传递特定标志来实现[^1]。 ```bash ./configure --enable-tempstore=yes \ --with-crypto-lib=openssl \ CFLAGS="-DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_OPENSSL" \ LDFLAGS="-lcrypto" ``` 4. **执行编译** 运行 `make` 命令完成实际构建工作。 ```bash make ``` 5. **测试与安装** 测试生成的目标文件是否正常运作,并将其安装至系统默认位置或者指定路径下。 ```bash make test sudo make install ``` #### 二、Windows 平台下的编译流程 对于 Windows 用户来说,由于环境差异较大,因此需特别留意几个关键环节。 1. **准备所需软件** 安装 MinGW 或 MSYS2 工具链以及 Visual Studio 开发套件作为基础支撑平台;同时还需要下载对应架构版本的 OpenSSL 库及其头文件[^2][^5]。 2. **调整 Makefile 文件** 手动编辑项目根目录内的 `Makefile.msc` 文档,在其中加入 `-DSQLITE_HAS_CODEC` 等必要定义语句以便开启加解密模块的支持[^4]。 修改后的部分内容可能如下所示: ```makefile !IF $(DYNAMIC_SHELL)!=0 || $(FOR_WIN10)!=0 CORE_COMPILE_OPTS = -DSQLITE_HAS_CODEC $(CORE_CCONV_OPTS) -DSQLITE_API=__declspec(dllexport) !ELSE CORE_COMPILE_OPTS = -DSQLITE_HAS_CODEC $(CORE_CCONV_OPTS) !ENDIF ``` 3. **启动命令提示符窗口** 切换到存放有源代码的工作区之后依次键入下列指令逐步推进整个进程直至结束为止。 ```cmd nmake /f Makefile.msc sqlite3.c shell.c cl *.obj -link -dll -out:sqlite3.dll kernel32.lib ws2_32.lib advapi32.lib gdi32.lib user32.lib cryptlib.lib del *.obj copy sqlite3.dll %SYSTEMROOT%\System32\ ``` 通过上述步骤即可顺利完成针对目标操作系统所定制化需求之下的 SQLCipher 组件制作任务啦! ```python import os print(os.getcwd()) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值