Encryption

Berkeley DB encryption
SQLite Encryption Extension

The Berkeley DB SQL API supports both the native Berkeley DB encryption, as well as the SQLite encryption extension.

Berkeley DB encryption

Berkeley DB supports encryption using the Rijndael/AES algorithm. It is configured to use a 128-bit key. Berkeley DB uses a 16-byte initialization vector generated using the Mersenne Twister. All encrypted information is additionally checksummed using the SHA1 Secure Hash Algorithm, using a 160-bit message digest. For more information on BDB encryption, see the Berkeley DB Programmer's Reference Guide.

SQLite Encryption Extension

The Berkeley DB SQL interface supports the SQLite Encryption Extension (SEE) to ensure security of your data. The supported encryption algorithm is AES-128 in CBC mode.

To learn how to use the SQLite Encryption Extension (SEE), see the official SQLite Documentation Page.

Note

The Berkeley DB SQL interface does not support the sqlite3_rekey method.