awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
sqlcipher avatar

sqlcipher/sqlcipher

0
View on GitHub↗
7,173 stars·1,390 forks·C·BSD-3-Clause·14 viewswww.zetetic.net/sqlcipher↗

Sqlcipher

SQLCipher is an encrypted SQLite database engine and secure relational database that provides transparent AES-256 encryption for database files and stored data. It functions as a cryptographic storage engine that requires a passphrase or binary key to unlock and access content.

The engine ensures data confidentiality through page-level encryption and protects data integrity using cryptographic hashes to detect unauthorized modifications. It includes capabilities for encryption key rotation to update passphrases and secure memory locking to prevent sensitive keys from being swapped from RAM to disk.

The project covers a broad set of capabilities including database file management, SQL query execution via a command-line interface, and support for external engine extensions. It also provides mechanisms for cross-database data migration and database format migration to maintain compatibility between versions.

The source code can be compiled into a functional engine or command-line tool for Unix and Windows platforms using a C compiler.

Features

  • Database Page Encryption - Provides transparent AES-256 encryption of individual database pages to ensure data is unreadable without the key.
  • Secure - Ensures sensitive information is stored securely using cryptographic verification and memory locking to prevent leaks.
  • Encrypted Implementations - Provides an encrypted extension of the SQLite engine with transparent 256-bit AES encryption.
  • Relational Data Stores - Implements a relational data store that requires cryptographic keys to unlock and access structured content.
  • Storage Engine Forks - Extends the standard SQLite B-tree and pager logic to integrate transparent encryption directly into the storage layer.
  • Cryptographic - Provides a specialized storage engine that protects data integrity via page hashes and prevents key leakage through secure memory handling.
  • Encrypted Database Managers - Provides an interface for creating and accessing password-protected database files using high-grade encryption.
  • Local Data Storage - Enables secure local persistence of application data using passphrase-based encryption and key derivation.
  • Passphrase-Based Database Access - Requires a passphrase or binary key through key derivation to unlock and access encrypted database content.
  • Key Derivation Functions - Uses key derivation functions to transform user passphrases into strong cryptographic keys for database encryption.
  • Integrity Verifications - Implements page-level HMACs to detect unauthorized modifications or data corruption within the database file.
  • SQL Query Execution - Enables the execution, formatting, and management of SQL queries through a terminal interface or batch scripts.
  • Memory Locking - Prevents sensitive encryption keys from being swapped to disk by locking memory pages in the OS.
  • Application Data Security - Provides a secure way to store application settings and user data in encrypted files to prevent unauthorized access.
  • Cryptographic Providers - Supports pluggable cryptographic providers, allowing the engine to use different compliant encryption libraries at build time.
  • Data Protection - Protects sensitive information by detecting unauthorized tampering and sanitizing memory to prevent leaks.
  • Encryption Key Management - Provides capabilities for updating the security keys or passphrases of an existing encrypted database.
  • Data Persistence - Provides 256-bit AES encryption for SQLite databases.
  • Database Management and Local Storage - Provide transparent 256-bit AES encryption for SQLite.
  • Security And Privacy - Provides AES-256 encryption for SQLite database files.

Star history

Star history chart for sqlcipher/sqlcipherStar history chart for sqlcipher/sqlcipher

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does sqlcipher/sqlcipher do?

SQLCipher is an encrypted SQLite database engine and secure relational database that provides transparent AES-256 encryption for database files and stored data. It functions as a cryptographic storage engine that requires a passphrase or binary key to unlock and access content.

What are the main features of sqlcipher/sqlcipher?

The main features of sqlcipher/sqlcipher are: Database Page Encryption, Secure, Encrypted Implementations, Relational Data Stores, Storage Engine Forks, Cryptographic, Encrypted Database Managers, Local Data Storage.

What are some open-source alternatives to sqlcipher/sqlcipher?

Open-source alternatives to sqlcipher/sqlcipher include: tryghost/node-sqlite3 — node-sqlite3 is a relational database client and a set of native bindings that allow Node.js applications to interact… pyca/cryptography — This project is a Python cryptography library that provides a collection of cryptographic primitives and high-level… ccgus/fmdb — fmdb is an object-oriented SQLite database library and persistence layer for native macOS and iOS environments. It… rusqlite/rusqlite — Rusqlite is an embedded database interface and relational database driver that provides a client library for… prestodb/presto — Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data… krzyzanowskim/cryptoswift — CryptoSwift is a cryptography library implemented entirely in the Swift programming language. It provides a collection…

Open-source alternatives to Sqlcipher

Similar open-source projects, ranked by how many features they share with Sqlcipher.
  • tryghost/node-sqlite3TryGhost avatar

    TryGhost/node-sqlite3

    6,417View on GitHub↗

    node-sqlite3 is a relational database client and a set of native bindings that allow Node.js applications to interact with SQLite databases. It functions as a C++ native addon, linking JavaScript to the SQLite C library to manage data stored in local files or in-memory stores. The project includes optional support for SQLCipher, enabling page-level encryption to secure local database files. The driver covers a wide range of database management capabilities, including executing SQL queries with parameter binding, managing connections to database files, and preparing statements for repeated ex

    PLpgSQL
    View on GitHub↗6,417
  • pyca/cryptographypyca avatar

    pyca/cryptography

    7,628View on GitHub↗

    This project is a Python cryptography library that provides a collection of cryptographic primitives and high-level recipes for implementing secure encryption and authentication. It functions as a symmetric encryption toolkit and a cryptographic hash provider, offering both a low-level cryptographic interface for building custom protocols and high-level tools for securing data. The library covers a broad range of security capabilities, including symmetric data encryption, the derivation of cryptographic keys from passwords or secret values, and data integrity verification through the generati

    Pythoncryptographypython
    View on GitHub↗7,628
  • ccgus/fmdbccgus avatar

    ccgus/fmdb

    13,851View on GitHub↗

    fmdb is an object-oriented SQLite database library and persistence layer for native macOS and iOS environments. It provides an Objective-C wrapper that encapsulates the low-level C API, allowing applications to manage local relational data storage and embedded database connections through a high-level interface. The library focuses on thread-safe database access by synchronizing operations across multiple threads using serialized queues to prevent data corruption and race conditions. It includes specialized capabilities for secure local storage, such as database encryption and the management

    Objective-C
    View on GitHub↗13,851
  • rusqlite/rusqliterusqlite avatar

    rusqlite/rusqlite

    4,058View on GitHub↗

    Rusqlite is an embedded database interface and relational database driver that provides a client library for interacting with SQLite. It functions as an SQL query wrapper, enabling the management of local file-based or in-memory databases through a safe interface. The library allows for the extension of native database capabilities by implementing custom scalar functions, collations, and virtual tables. It also supports the embedding of the database engine directly into the application binary to remove external library dependencies. The project covers a broad range of capabilities including

    Rustbindingsrustsqlite
    View on GitHub↗4,058
See all 30 alternatives to Sqlcipher→