#include <stdio.h>
#include <stdlib.h>
#include "sqlite3.h"
int main() {
sqlite3* db;
sqlite3_open_v2("D:/crypt_a.sqlite", &db, SQLITE_OPEN_READWRITE, NULL); // db with key = a
sqlite3_exec(db, "select * from sqlite_master", 0, 0, 0);
sqlite3_exec(db, "pragma cipher=sqlcipher", 0, 0, 0);
sqlite3_exec(db, "pragma legacy=4", 0, 0, 0);
sqlite3_exec(db, "pragma key=b", 0, 0, 0);
printf("With the incorrect key: %i\n", SQLITE_OK == sqlite3_exec(db, "select * from sqlite_master", 0, 0, 0)); // 0
sqlite3_exec(db, "pragma key=a", 0, 0, 0);
printf("With the correct key: %i\n", SQLITE_OK == sqlite3_exec(db, "select * from sqlite_master", 0, 0, 0)); // 0
printf("With the correct key: %i\n", SQLITE_OK == sqlite3_exec(db, "select * from sqlite_master", 0, 0, 0)); // 1
sqlite3_close_v2(db);
return 0;
}
MinGW32, Win7x64, Release page dll.
MinGW32, Win7x64, Release page dll.