摘要: 其實SQLite的兩個加密函數(shù)使用起來非常的簡單,下面分情況說明:
① 給一個未加密的數(shù)據(jù)庫添加密碼:如果想要添加密碼,則可以在打開數(shù)據(jù)庫文件之后,關(guān)閉數(shù)據(jù)庫文件之前的任何時刻調(diào)用sqlite3_key函數(shù)即可,該函數(shù)有三個參數(shù),其中第一個參數(shù)為數(shù)據(jù)庫對象,第二個參數(shù)是要設(shè)定的密碼,第三個是密碼的長度。例如:sqlite3_key(db,"1q2w3e4r",8); //給數(shù)據(jù)庫設(shè)定密碼1q2w3e4r
② 讀取一個加密數(shù)據(jù)庫中的數(shù)據(jù):完成這個任務(wù)依然十分簡單,你只需要在打開數(shù)據(jù)庫之后,再次調(diào)用一下sqlite3_key函數(shù)即可,例如,但數(shù)據(jù)庫密碼是123456時,你只需要在代碼中加入sqlite3_key(db,"123456",6);
① 更改數(shù)據(jù)庫密碼:首先你需要使用當(dāng)前的密碼正確的打開數(shù)據(jù)庫,之后你可以調(diào)用sqlite3_rekey(db,"112233",6) 來更改數(shù)據(jù)庫密碼。
② 刪除密碼:也就是把數(shù)據(jù)庫恢復(fù)到明文狀態(tài)。這時你仍然只需要調(diào)用sqlite3_
閱讀全文
posted @
2007-06-01 11:30 聶文龍 閱讀(8352) |
評論 (2) |
編輯 收藏
摘要: SQLite是一個很好用的嵌入式數(shù)據(jù)庫。可惜美中不足的是SQLite的免費版本不具備加密功能。曾經(jīng)在網(wǎng)上看到一個用WinCrypt實現(xiàn)加密功能的版本,但我不喜歡太依賴于Windows平臺。這幾日有時間,自己就用XXTEA算法在 SQLite3.3.7版本的基礎(chǔ)上實現(xiàn)了加密功能。選擇XXTEA主要是因為這個算法速度很快,對性能造成的影響相對較小。順便修改了網(wǎng)上流傳的XXTEA代碼的一處內(nèi)存越界的BUG。
用SQLite的一般是單機版軟件比較多,有加密需求的一定不少,所以現(xiàn)在放出源代碼與大家分享。代碼的工程文件是用VC2005,如果用其它編譯器,編譯的時候不要忘記加上SQLITE_HAS_CODEC宏。代碼只是粗略測試過,不保證100%無BUG和邏輯錯誤。
閱讀全文
posted @
2007-06-01 11:27 聶文龍 閱讀(6550) |
評論 (5) |
編輯 收藏
posted @
2007-06-01 10:53 聶文龍 閱讀(208) |
評論 (0) |
編輯 收藏
摘要: 1). 打開VC新建一個“Win32 Dynamic-Link Library”工程,命名為:sqlite3
2). 在接下來的對話框中選擇"An empty DLL project",點 FINISH->OK
3). 將源碼中所有的 *.c *.h *.def 復(fù)制到工程文件夾下
4). 在工程的Source File中添加你下載到的SQLite源文件中所有*.c文件,
注意這里不要添加shell.c和tclsqlite.c這兩個文件。
5). 將 SQLite 源文件中的 sqlite3.def 文件添加到在工程的Source File中
6). 在Header File中添加你下載到的SQLite源文件中所有*.h文件,
7). 開始編譯,Build(F7)一下
閱讀全文
posted @
2007-06-01 10:51 聶文龍 閱讀(1147) |
評論 (0) |
編輯 收藏
摘要: VMware里linux沒有空間了,需要增加新的分區(qū)。
VMware: 5.0.0 build-13124
linux: 2.4.20-8
操作步驟:
1. 給linux所在的虛擬機增加一塊硬盤。
虛擬機->設(shè)置->添加, 根據(jù)增加硬件向?qū)У奶崾具M(jìn)行操作即可為虛擬機添加第二塊硬盤,硬盤類型選擇SCSI。
2. 在linux分區(qū)并格式化
1) 分區(qū)
fdisk /dev/sdb
fdisk在/sbin目錄下。
2) 格式化分區(qū)
mkfs.ext3 /dev/sdb1
出現(xiàn)錯誤:
/dev/sdb1: Not enough space to build proposed filesystem while setting up superblock
后來發(fā)現(xiàn)問題出在分區(qū)上:分區(qū)時僅將sdb分為一個擴展
閱讀全文
posted @
2007-05-16 00:44 聶文龍 閱讀(2603) |
評論 (1) |
編輯 收藏
摘要: GCC - 一切從這里開始
閱讀全文
posted @
2007-05-10 00:55 聶文龍 閱讀(162) |
評論 (0) |
編輯 收藏
摘要: vmware下調(diào)整linux的分辨率
閱讀全文
posted @
2007-05-09 13:55 聶文龍 閱讀(1002) |
評論 (1) |
編輯 收藏
摘要: GNU make 指南
閱讀全文
posted @
2007-05-08 16:31 聶文龍 閱讀(255) |
評論 (0) |
編輯 收藏
posted @
2007-04-28 15:14 聶文龍 閱讀(877) |
評論 (1) |
編輯 收藏
posted @
2007-04-28 15:11 聶文龍 閱讀(1380) |
評論 (1) |
編輯 收藏