SQLite with encryption/password protection

SQLite has hooks built-in for encryption which are not used in the normal distribution, but here are a few implementations I know of:

  • SEE – The official implementation.
  • wxSQLite – A wxWidgets style C++ wrapper that also implements SQLite’s encryption.
  • SQLCipher – Uses openSSL’s libcrypto to implement.
  • SQLiteCrypt – Custom implementation, modified API.
  • botansqlite3 – botansqlite3 is an encryption codec for SQLite3 that can use any algorithms in Botan for encryption.
  • sqleet – another encryption implementation, using ChaCha20/Poly1305 primitives. Note that wxSQLite mentioned above can use this as a crypto provider.

The SEE and SQLiteCrypt require the purchase of a license.

Disclosure: I created botansqlite3.

Leave a Comment