Thanks, Ulrich. You're exactly right: each page has a different nonce for encryption, so the CODEC interface was just perfect. Looking at the SQLCipher project you mentioned, it looks like it does something very similar to what I am doing. I would vastly prefer not to have to backport the CODEC interface or manually merge upstream changes to SQLite, but if DRH isn't going to provide the interface any more it looks like I have no choice. Arrgggggh!