aboutsummaryrefslogtreecommitdiffstats
path: root/src/wrap/sqlite/readme.txt
diff options
context:
space:
mode:
authorlloyd <[email protected]>2010-01-22 04:15:54 +0000
committerlloyd <[email protected]>2010-01-22 04:15:54 +0000
commitc9672d69689b7bdbec89ab2a9193aaca948acb76 (patch)
tree7face090ccdf6fd6ba6742d42cc8a86f1f29eef2 /src/wrap/sqlite/readme.txt
parent59471c89f3ef3f9c65fa5f05b1a2159d5b63d200 (diff)
Add SQLite3 encryption codec, contributed by Olivier de Gaalon. Uses
Twofish in XTS mode for encryption by default, but is easily tweakable.
Diffstat (limited to 'src/wrap/sqlite/readme.txt')
-rw-r--r--src/wrap/sqlite/readme.txt36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/wrap/sqlite/readme.txt b/src/wrap/sqlite/readme.txt
new file mode 100644
index 000000000..e131f9e91
--- /dev/null
+++ b/src/wrap/sqlite/readme.txt
@@ -0,0 +1,36 @@
+Build instructions for Botan SQLite3 codec
+---
+
+1. Requires Botan 1.8.8 or later (earlier versions OK if you switch to
+ CBC mode from XTS)
+
+2. Download SQLite3 version 3.6.17 or later, get the version "as
+ extracted from the source control system", NOT the amalgamation.
+
+3. Apply the patch "sqlite.diff" [*]:
+ $ patch -p0 < ../sqlite.diff
+ patching file Makefile.in
+ patching file src/pager.c
+
+ If the patch to pager.c fails for some reason (ie, changes in
+ SQLite3), all that need be done is remove the "static" keyword from
+ the functions sqlite3PagerSetCodec and sqlite3PagerGetCodec.
+
+5. Create a folder called "botan" in the SQLite3 src dir and copy
+ "codec.cpp", "codec.h", and "codecext.cpp" into it.
+
+6. As desired, edit the constants in codec.h to tweak the encryption
+ type to your needs. (Currently, Twofish/XTS with 256 bit key)
+
+7. Run ./configure in the SQLite3 root directory with the
+ "--disable-amalgamation" and (if desired) "--disable-shared"
+ arguments, and then run make.
+
+And to make sure it all worked...
+
+8. Make the test_sqlite.cpp file:
+ $ g++ test_sqlite.cpp -o test_sqlite -lbotan /path/to/libsqlite3.a
+9. Run it
+ $ ./test_sqlite
+10. Look for "All seems good"
+