首頁 > 後端開發 > php教程 > CentOS下php透過SQLCipher編譯sqlite3支援資料庫加密

CentOS下php透過SQLCipher編譯sqlite3支援資料庫加密

WBOY
發布: 2016-07-29 09:16:08
原創
1562 人瀏覽過

最近由於專案需要,要對伺服器端產生的sqlite進行加密.伺服器後台用的是php寫的,作業系統為CentOS.開源的sqlite3預留了資料庫加密介面,但是沒有實現.於是在網路上找到了SQLCipher,它對sqlite3未實現的加密功能進行了實現,並且可以通過重新編譯PHP的sqlite3擴展,從而支持sqlite數據庫加密.

具體操作,可參考官網的步驟進行,地址:https: //www.zetetic.net/sqlcipher/sqlcipher-for-php/

官網的操作,系統是用的Ubuntu,在這裡可以將相應命令轉換成CentOS下用的即可.參照官網上的操作步驟,便可以編譯成功,

編譯成功後,會產生sqlite3.so,直接替換掉之前伺服器php擴充中得sqlite3.so即可(替換前最好做個備份).替換完成後,重啟apache伺服器,

下來進行測試,測試程式碼:

6385,487853個密碼583859834$37555353($375/test.com表示如果有就開啟,沒有就建立.具體的資訊可參考來源檔案中sqlite3.c進行相關檢視

$db=new Sqlite3("test.sqlite",6,"12345678");

$db->e​​xec("create table mytest (name varchar(200) )");

$db->e​​xec("insert into mytest (name) values ('aaaa')");


$result = $db->query('SELECT * FROM mytest');

?> 如果可以打印出來結果,說明sqlite3已經重新編譯成功.在此基本上算是成功了,但是仍需要檢驗一下,生成的數據庫是否已經加密.可以將生成的test.sqlite用之前自己的一些工具打開試試,一般都會提示錯誤.這時候說明已經成功給sqlite加密.

順便說一下,官網上也有對android和IOS的支持操作步驟,可以在官網上查看的到.

版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 以上就介紹了CentOS下php透過SQLCipher編譯sqlite3支援資料庫加密,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板