在Python中使用SQLCipher - 简单的方法

问题描述 投票:0回答:1

我正在编写一个Python实用程序,它应该可以在加密的SQLite数据库上工作。我读了很多关于SQLCipher的网页,但他们都在谈论编译和在Windows中安装的问题--真的,我很难完全理解这一点,似乎他们把一些步骤视为理所当然,而我却迷失了方向。

我在哪里可以找到一个详细的、一步一步的指南,让我有Python代码在加密的SQLite数据库上正常工作,没有系统依赖性,然后这样的代码可以编译成exe(用pyinstaller)?即使有一个exe和一个dll也可以。

谢谢你的帮助。

PS:我认为exe+dll是一个可行的方案,因为DB Browser for SQLite (https:/github.comsqlitebrowsersqlitebrowser)的船与该非常dll。也许它是可以重复使用的?

python sqlite encryption sqlcipher pysqlcipher
1个回答
1
投票

我能够将ssleay32.dll、libeay32.dll和sqlcipher.dll复制到Python38/DLLs文件夹中。 然后我将sqlite3.dll重命名为sqlite3.dll.old。sqlipherc.dll需要重命名为sqlite3.dll。 然后像调用sqlite一样调用它。

对于Linux

sudo apt update
sudo apt upgrade
sudo apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools
sudo apt-get install libsqlcipher-dev
sudo apt install build-essential git cmake libsqlite3-dev
sudo apt install sqlcipher
git clone https://github.com/rigglemania/pysqlcipher3
cd pysqlcipher3
python3 setup.py build
sudo python3 setup.py install

if installing in virtual environment also do
pip install pysqlcipher3 in the environment

if sys.platform.lower() == 'linux':
  try:
     from pysqlcipher3 import dbapi2 as sqlite3
  except:
     import sqlite3
© www.soinside.com 2019 - 2024. All rights reserved.