We’re pleased to announce the immediate availability of SQLCipher 4.10.0. This release includes a number of enhancements and security updates.
SQLCIPHER_LOG_LEVEL_DEFAULT
macro-fsanitize=address
on macOSNote that the new SQLite 3.50.4 contains several security fixes. Applications that use SQLCipher and allow untrusted schema modification are advised to upgrade.
Important Note: Applications upgrading from versions of SQLCipher 4.6.1 or earlier should be aware that this version of SQLCipher incorporates several potential breaking changes from SQLCipher 4.7.0. Please carefully review the 4.7.0 release notes before upgrading.
SQLCipher 4.10.0 introduces support for integration via Swift Package Manager with Xcode for Apple platforms like iOS and macOS. Please consider updating your projects to use Swift Package Manager today according the appropriate documentation:
Swift Package Manager is replacing CocoaPods support. This is the last release where we will be publishing a Podspec for SQLCipher.
KDF_NONE
in sqlcipher_vle_pbkdf2
functionzetetic-
prefix from NuGet packages for .NET (see below)SQLCipher Commercial and Enterprise Editions require integrating applications to unlock the software by providing the license code using PRAGMA cipher_license
. This approach works well for most applications, but requires modification of the application code. Starting in this release, SQLCipher now supports several additional options for providing the license code. The license code value may now be set in:
CIPHER_LICENSE
cipher_license
in the same directory as the SQLCipher librarycipher_license
in the same directory as the current executablecipher_license
in the same directory as the current working directorycipher_license
in the Resources
directory next to the main library in a macOS bundleCIPHER_LICENSE_FILE
environmental variableCommercial and Enterprise NuGet packages have been renamed in this release to remove the redundant zetetic-
prefix. For example, the package previously named zetetic-sqlcipher-ios
is now simply sqlcipher-ios
. Similarly the package previously named zetetic-sqlite-net-base
is now named sqlcipher-sqlite-net-base
. Applications using SQLCipher NuGet packages can simply remove the references from the old packages, and add a new reference to the current package. Alternately, the value of the <PackageReference>
tags can be modified in the application .csproj
directly.
This is a packaging naming change only, so no code changes are required. The following is a complete list of package renames for reference:
zetetic-sqlcipher-android
=> sqlcipher-android
zetetic-sqlcipher-ios
=> sqlcipher-ios
zetetic-sqlcipher-linux-fips
=> sqlcipher-linux-fips
zetetic-sqlcipher-linux
=> sqlcipher-linux
zetetic-sqlcipher-macos-fips
=> sqlcipher-macos-fips
zetetic-sqlcipher-macos
=> sqlcipher-macos
zetetic-sqlcipher-uwp
=> sqlcipher-uwp
zetetic-sqlcipher-windows-fips
=> sqlcipher-windows-fips
zetetic-sqlcipher-windows
=> sqlcipher-windows
zetetic-sqlcipher-windows-system-data-sqlite
=> sqlcipher-windows-system-data-sqlite
zetetic-sqlcipher-windows-vcrtforwarders
=> sqlcipher-windows-vcrtforwarders
zetetic-sqlite-net-base
=> sqlcipher-sqlite-net-base
SQLCipher Commercial and Enterprise packages for iOS and macOS are now consolidated into a single downloadable package. Integration is now simplified by requring on a single SQLCipher.xcframework
package to be added, and the each platform will be unlocked with an appropriate License Code. As a result of this change packages previously available as separate sqlcipher-ios-X.X.X.zip
and sqlcipher-macos-X.X.X.zip
are now replaced by a sqlcipher-apple-X.X.X.zip
for delivery.
SQLCipher 4.10.0 is available for download now. We strongly recommend testing your applications thoroughly with the new version before deploying to production.
Commercial and Enterprise - On-demand access to new releases of SQLCipher packages are available to all licensees with an active CipherCare support subscription from the Customer Downloads fulfillment site. Subscribers will also receive a separate email notification regarding the update and can contact us at any time for private support directly from the SQLCipher development team. Commercial and Enterprise edition upgrades require a new license code from the SQLCipher fulfillment site for each version. Don’t forget to change the license code in your application(s) when you upgrade.
Community Edition - SQLCipher Community Edition source code is available on GitHub, via AAR packaging for Android, and Swift Package Manager for Apple platforms.
For feedback and questions, please visit our Community Forum or private support channels. Thank you for using SQLCipher!