You can chose to either encrypt or obfuscate an UltraLite database using the UltraLite C++ API. Encryption provides very secure representation of the data in the database whereas obfuscation provides a simplistic level of security that is intended to prevent casual observation of the contents of the database.
For background information, see Choosing creation-time database properties for UltraLite,
To create a database with encryption, specify an encryption key by specifying the key= connection parameter in the connection string. When you call the CreateDatabase method, the database is created and encrypted with the specified key.
After the database is encrypted, all connections to the database must specify the correct encryption key. Otherwise, the connection fails.
See UltraLite DBKEY connection parameter.
To obfuscate the database, specify
obfuscate=1 as a database creation parameter.
See UltraLite security considerations.