SQLCipher Community Edition

SQLCipher is an open source project, below are a few resources for those interested in the community behind the project. Digital signatures for community releases can be found here.

The source code for the core SQLCipher library can be found here, or can be cloned from our git repository:

git clone https://github.com/sqlcipher/sqlcipher.git

Source code for the Android packages are made available via git:

git clone https://github.com/sqlcipher/sqlcipher-android.git

Note that private support for SQLCipher is available through our Commercial Edition program.

Support

For those using the Open Source Community Edition software, the primary venue for free support and announcements is the SQLCipher discussion site. This resource provides a searchable forum where community members can come together to ask questions and get answers about SQLCipher.

All Open Source requests should initially be opened in the community discussion site! GitHub issues are reserved for reproducible bug reports, and we are unable to provide private support for Community Edition users.

Bug Reports & Pull Requests

Bug reports for specific issues in SQLCipher should be reported to the project GitHub Issues Page. Note that only legitimate reproducible bugs should be filed on the GitHub page; if you're not sure, please post to the discuss site first!

The SQLCipher project also welcomes Pull Requests. Please note that a current contributor license agreement is required before any patches will even be looked at for consideration.

License

SQLCipher Community Edition can be used it in both open source and closed source commercial software, but you must include our BSD-style license and copyright statements prominently in the application and documentation.


Guidelines for Including SQLCipher Community Edition

When you include SQLCipher Community Edition in your project, you must comply with the BSD-style license terms. The most important requirement is that you must reproduce the copyright notice, license conditions, and disclaimer in your application.

License and Copyright Requirements

The SQLCipher Community Edition license requires that you include the following in a user-accessible location:

  • The full copyright notice: "Copyright (c) 2008-2024, ZETETIC, LLC"
  • The complete license text from the SQLCipher Community Edition License
  • Any additional required notices for dependencies (SQLite, OpenSSL, or other cryptographic providers)

Where to Include License Information

The license and copyright statements must be included in a location that is accessible to users. Acceptable locations include:

  • An "About" screen within the application that displays license information
  • A dedicated "Licenses" or "Open Source Notices" section in the application settings or help menu
  • Product documentation or a website linked from the application (such as a "Legal" or "Attributions" page)
  • README or NOTICE files included with the application distribution

Example: A mobile application might include a "Settings > About > Open Source Licenses" screen that displays the SQLCipher copyright and license text along with other open source components used in the application.


Publishing Builds or Extensions of SQLCipher

If you create modified versions, builds, or extensions of SQLCipher and distribute them to others, there are important trademark considerations in addition to license compliance.

Trademark Usage Guidelines

SQLCipher is a registered trademark of Zetetic, LLC. Forks, modified versions, or redistributions of SQLCipher by third parties should not use the name "SQLCipher" directly as the primary product name. This helps avoid confusion among users about the source and support status of the software.

Naming Your Project

When creating a fork or distribution of SQLCipher, you should use one of the following approaches:

Option 1: Prefix with Your Project Name

Add your project, package, or organization name before "SQLCipher" to clearly distinguish it from the official releases.

  • Good: "myproject-sqlcipher" - Clearly indicates a project-specific build
  • Good: "acmecorp-sqlcipher" - Shows organizational ownership
  • Good: "alpine-sqlcipher" - Common pattern for distribution-specific packages
  • Avoid: "sqlcipher" - Could be confused with official releases
  • Avoid: "sqlcipher-enhanced" - Suggests it is an official variant

Option 2: Use an Entirely Different Name

Choose a completely different name that does not include "SQLCipher" to avoid any potential confusion.

  • Good: "SecureDB" - Completely distinct name
  • Good: "CryptoDB" - Unrelated name that describes functionality

Attribution in Forks and Distributions

Even when using a different name, your documentation should clearly state that your project is based on or derived from SQLCipher, and must include the required copyright and license notices. For example:

MyProject-SQLCipher is a modified distribution of SQLCipher. SQLCipher is Copyright (c) 2008-2024, ZETETIC, LLC and is used under the terms of the BSD-style license.