skillfed

sqlcipher3-wheels

DB-API 2.0 interface for SQLCipher 3.x

sqlcipher3-wheels v0.5.7 125.3K downloads/30d#11,827 on PyPI34
Permissive license zlib/libpng AGING released

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

Provides a Python DB-API 2.0 interface to SQLCipher, enabling encrypted SQLite database operations with a familiar sqlite3-like API.

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

pip

pip install sqlcipher3-wheels

uv

uv add sqlcipher3-wheels

poetry

poetry add sqlcipher3-wheels

Installing sqlcipher3-wheels

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.

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()

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.

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)

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

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

Tags

encrypted sqlite database pythonsqlcipher python bindingsqlite encryption db-apipassword protected databasesqlcipher3 wheelsencrypted sql databasesqlite with encryption
encryptionsqlite-bindingdb-api-2.0

More Python Modules packages