当前位置:   article > 正文

在windows11安装pysqlcipher3,对sqlite3数据库进行加密_windows pysqlcipher3 安装

windows pysqlcipher3 安装

sqlite3数据库本身不支持密码设置,但数据库就这么暴露着,随意就能被他人连接查看,肯定是不可行的。

pysqlcipher3是一种Python库,可以通过使用OpenSSL库对SQLite数据库进行加密和解密。它提供了在Python中连接到加密的SQLite数据库的功能,可以执行查询和事务等操作。

直接在windows上 pip install pysqlcipher3 的方式会报错,因此需要按照以下步骤进行:

1. 安装Tcl

      Download & Install Tcl | ActiveState

2. 安装 OpenSSL x64

      Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions(我用的是

      Win64OpenSSL-1_1_1w)

  • 在路径C:\Program Files\OpenSSL-Win64\lib下, 找到并复制、粘贴以下左边四个文件, 然后改为右边的名称

libcrypto.def —> libeay32.def

libcrypto.lib —> libeay32.lib

libssl.def —> libssl.def

libssl.lib —> libssl.lib

  • 将文件夹 C:\Program Files\OpenSSL-Win64\include\openssl 拷贝到 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include

     注意配置环境变量: OPENSSL_CONF  C:\Program Files\OpenSSL-Win64\bin\openssl.cfg

3. 安装vs2022

      安装时只选择 C++的桌面开发 的组件就可以

4. 下载sqlcipher :

GitHub - sqlcipher/sqlcipher: SQLCipher is a standalone fork of SQLite that adds 256 bit AES encryption of database files and other security features.解压后修改 Makefile.msc 文件:

1. TCC = $(TCC) -DSQLITE_TEMP_STORE=1

    修改为:

    TCC = $(TCC) -DSQLITE_TEMP_STORE=2 -DSQLITE_HAS_CODEC -I"C:\Program Files\OpenSSL-Win64\include"

2. 在以下位置 新增下面两行红色配置

# If ICU support is enabled, add the linker options for it.

#

!IF $(USE_ICU)!=0

LTLIBPATHS = $(LTLIBPATHS) /LIBPATH:$(ICULIBDIR)

LTLIBS = $(LTLIBS) $(LIBICU)

!ENDIF

# >

LTLIBPATHS = $(LTLIBPATHS) /LIBPATH:"C:\Program Files\OpenSSL-Win64\lib\VC\static"

LTLIBS = $(LTLIBS) libcrypto64MT.lib libssl64MT.lib ws2_32.lib shell32.lib advapi32.lib gdi32.lib user32.lib crypt32.lib

# You should not have to change anything below this line

打开 x64 Native Tools Command Prompt for VS 2022 ,目录切换到 sqlcipher,执行以下指令:

nmake /f Makefile.msc clean

nmake /f Makefile.msc

编译后会生成 sqlite3.c 和 sqlite3.h文件(注意:编译报错没关系,只要生成了这两个文件)

5. 下载pysqlcipher3

GitHub - rigglemania/pysqlcipher3: Python 3 bindings for SQLCipher

在其根目录创建文件夹amalgamation,并将上一步生成的sqlite3.c 和 sqlite3.h两个文件拷贝进来。

下载SQLite Download Page , Source Code中会包含sqlite3.h, sqlite3.c等4个文件, 在pysqlcipher3\src\python3中创建文件夹sqlcipher, 将4个文件放入其中

6. 安装pysqlcipher3

打开x64 Native Tools Command Prompt for VS 2022,目录切换到 pysqlcipher3

1. 执行 python setup.py clean

2. 执行 python setup.py build_amalgamation

3. 执行 python setup.py install

如果有类似错误,将..\pysqlcipher3\src\python3文件夹下所有.c文件内容中的 MODULE_NAME 替换成 "pysqlcipher3.dbapi2", 再重新执行命令

至此,就成功安装了pysqlcipher3

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/492454
推荐阅读
相关标签
  

闽ICP备14008679号