Convert Normal SQLite db to SQLCipher Encrypted Database ( Selected Tables only )
A simple cross-platform Python GUI tool to:
- Open an existing SQLite database
- Select specific tables/views
- Export them into a new, SQLCipher-encrypted SQLite database
- β
Open
.db,.sqlite, or.sqlite3files - β List all tables and views
- β Select multiple items for export
- β Set a custom encryption password
- β Save as a new encrypted SQLite database using SQLCipher
Before running the app, ensure you have the following installed:
- Python 3.10+
tkinter(comes with standard Python installations)pysqlcipher3β for SQLCipher support
Install dependencies via pip:
pip install pysqlcipher3
β οΈ On Windows: You may need to install Microsoft Visual C++ Build Tools first.
See: Visual Studio C++ Build ToolsIf you are unable to compile pysqlcipher3 yourself, download from https://pypi.org/project/sqlcipher3-wheels/#files
-
Clone or download the project:
git clone https://github.com/yourusername/sqlciphercoverter.git cd sqlciphercoverter -
Run the app:
python sqlciphercoverter.py
- Click "Open DB" to load an SQLite file.
- From the list, select one or more tables/views to export.
- Click "Export to Encrypted DB", enter a password.
- Choose a location to save the new encrypted database.
sqlite-encryptor-gui/
β
βββ sqlciphercoverter.py # Main application script
βββ README.md # This file
- The app copies both schema and data from selected tables.
- Views are copied by schema only β no data is inserted.
- Works best with smaller databases due to in-memory operations.
- For large databases or production use, consider optimizing performance and adding progress indicators.
This project is licensed under the MIT License β see the LICENSE file for details.
Contributions are welcome! If you'd like to improve the app (e.g., add batch processing, dark mode, or export logs), feel free to open a pull request.