sqlcipher3-wheels
DB-API 2.0 interface for SQLCipher 3.x
Decision gist · record as of 2026-08-14
Yes, with conditions. The package provides a straightforward path to encrypted SQLite if you need DB-API 2.0 compatibility and pre-built wheels for your platform. However, the aging maintenance status (219 days since last release, 34 stars) suggests evaluating alternatives for new projects. No known vulnerabilities and permissive licensing are positive signals. Install if you have an existing codebase using this fork or need wheels for a specific architecture.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- SQLCipher version 4 is built into the wheels; if working with databases encrypted by SQLCipher version 3, you must execute PRAGMA cipher_compatibility = 3 after PRAGMA key before any operations.
- Medium friction: pre-built wheels are available for multiple platforms (macOS, Linux, Windows across architectures), but the package is aging—last release was 219 days ago and the repository shows limited activity (34 stars).
- No runtime dependencies simplifies installation.
License · maintenance · safety
zlib/libpng (permissive) — Licensed under zlib/libpng (permissive), allowing use in both open-source and proprietary projects without significant restrictions.
last release 2026-01-07 (219 days) · last repo commit 2026-01-11 · 34 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 125,278 downloads/mo, #11,827 on PyPI
Alternatives
Verify before relying
from sqlcipher3 import dbapi2 as sqlite
conn = sqlite.connect('test.db')
c = conn.cursor()
c.execute("PRAGMA key='password'")
c.execute("PRAGMA cipher_compatibility = 3")
c.execute("CREATE TABLE stocks (date text, symbol text, qty real)")
c.execute("INSERT INTO stocks VALUES ('2006-01-05', 'RHAT', 100)")
conn.commit()
c.close()- Whether this fork remains actively maintained or if alternatives are recommended for new projects
- Full Python version support range beyond cp310 and cp311 visible in wheel filenames
- Performance characteristics and feature parity with other SQLCipher bindings
What it is and what it does
sqlcipher3-wheels is a Python binding to SQLCipher, an encrypted variant of SQLite. It adapts pysqlite3 to work with SQLCipher, exposing the same DB-API 2.0 interface developers expect from the standard sqlite3 module. The package is distributed as pre-built wheels for multiple platforms and architectures, eliminating the need to compile SQLCipher from source during installation.
The binding includes several enhancements over the standard library sqlite3: user-defined window functions, VFS and flags support for connection customization, incremental BLOB I/O, improved error messages, and native backup API. The wheels are built with sqlcipher version 4, which means databases encrypted with version 3 require a compatibility pragma before use. No external runtime dependencies are required—everything is self-contained in the wheel.
Use it for
- Store sensitive application data (credentials, API keys, personal information) in an encrypted local database
- Build desktop or mobile applications requiring client-side encryption without server infrastructure
- Migrate from standard SQLite to encrypted storage while keeping existing DB-API code largely unchanged
- Implement compliance requirements for data-at-rest encryption in Python applications
- Develop offline-first applications where encrypted local storage protects user data on untrusted devices
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
The package provides a straightforward path to encrypted SQLite if you need DB-API 2.0 compatibility and pre-built wheels for your platform. However, the aging maintenance status (219 days since last release, 34 stars) suggests evaluating alternatives for new projects. No known vulnerabilities and permissive licensing are positive signals. Install if you have an existing codebase using this fork or need wheels for a specific architecture.
Install
sqlcipher3-wheels on PyPI
Before you install
Medium friction: pre-built wheels are available for multiple platforms (macOS, Linux, Windows across architectures), but the package is aging—last release was 219 days ago and the repository shows limited activity (34 stars). No runtime dependencies simplifies installation.
SQLCipher version 4 is built into the wheels; if working with databases encrypted by SQLCipher version 3, you must execute PRAGMA cipher_compatibility = 3 after PRAGMA key before any operations.
License in practice
Licensed under zlib/libpng (permissive), allowing use in both open-source and proprietary projects without significant restrictions.
Quickstart
from sqlcipher3 import dbapi2 as sqlite
conn = sqlite.connect('test.db')
c = conn.cursor()
c.execute("PRAGMA key='password'")
c.execute("PRAGMA cipher_compatibility = 3")
c.execute("CREATE TABLE stocks (date text, symbol text, qty real)")
c.execute("INSERT INTO stocks VALUES ('2006-01-05', 'RHAT', 100)")
conn.commit()
c.close()
Verify before relying
- Whether this fork remains actively maintained or if alternatives are recommended for new projects
- Full Python version support range beyond cp310 and cp311 visible in wheel filenames
- Performance characteristics and feature parity with other SQLCipher bindings
Package facts
| License | zlib/libpng permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Aging 219 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 125,278 / month, #11,827 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: CProgramming Language :: PythonTopic :: Database :: Database Engines/ServersTopic :: Software Development :: Libraries :: Python Modules |
Evidence: sqlcipher3_wheels-0.5.7-cp310-cp310-macosx_10_9_universal2.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-macosx_10_9_x86_64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-macosx_11_0_arm64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-manylinux_2_28_aarch64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-manylinux_2_28_i686.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-manylinux_2_28_ppc64le.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-manylinux_2_28_s390x.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-manylinux_2_28_x86_64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-musllinux_1_2_aarch64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-musllinux_1_2_i686.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-musllinux_1_2_ppc64le.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-musllinux_1_2_s390x.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-musllinux_1_2_x86_64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-win32.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-win_amd64.whl; sqlcipher3_wheels-0.5.7-cp310-cp310-win_arm64.whl; sqlcipher3_wheels-0.5.7-cp311-cp311-macosx_10_9_universal2.whl; sqlcipher3_wheels-0.5.7-cp311-cp311-macosx_10_9_x86_64.whl; sqlcipher3_wheels-0.5.7-cp311-cp311-macosx_11_0_arm64.whl; sqlcipher3_wheels-0.5.7-cp311-cp311-manylinux_2_28_aarch64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “password protected database”
- sqlcipher3-wheelsProvides a Python DB-API 2.0 interface to SQLCipher, enabling…
- pyminizipCreates password-encrypted ZIP files that can be extracted on…
- msoffcrypto-toolDecrypts and encrypts Microsoft Office files (Word, Excel,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also sqlcipher3 · sqlcipher3-binary · pysqlite3 · sqlean.py · pysqlite3-binary · django-fernet-fields-v2 · djfernet · django-encrypted-model-fields · dynamodb-encryption-sdk · pymssql