探索加密版SQLite库的使用技巧(9)

发表时间: 2020-05-22 19:01


加密版sqlite库编译详见我的另一篇文章《sqlite库学习(2)编译加密版的sqlite》,里面有源码。

对sqlite加密,首先需要得到sqlite对象指针,就是先使用sqlite3_open打开或创建数据库文件,然后使用sqlite3_key函数。

如果是创建数据库,sqlite3_key就是设置密码;如果是打开数据库,sqlite3_key就是解密。删除数据库的密码,先解密后,设置sqlite3_rekey密码为空即可。


int DB_SetKey(sqlite3 *db,const char * key){int result;result = sqlite3_key(db, key, strlen(key));return result;}int DB_RemoveKey(sqlite3 *db,const char * key){int result;result = sqlite3_key(db, key, strlen(key));result = sqlite3_rekey(db,"", 0);}