999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于安卓終端的SQLite數據庫網盤存儲安全研究

2020-10-27 05:51:19張晶
中國管理信息化 2020年15期
關鍵詞:安全

張晶

[摘? ? 要] 隨著移動客戶端的普及,我國移動用戶不斷增加。基于此,文章對安卓終端的SQLite數據庫進行簡單介紹,以網盤存儲的安全研究為主,分別從身份認證、訪問控制模塊、網盤的設計與實現和SQLite數據庫加密等方面,進一步提升SQLite數據庫的網盤存儲安全性。

[關鍵詞] 安卓終端;SQLite數據庫;網盤儲存;安全

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2020. 15. 082

[中圖分類號] TP311? ? [文獻標識碼]? A? ? ? [文章編號]? 1673 - 0194(2020)15- 0197- 02

1? ? ? 基于安卓終端的SQLite數據庫介紹

SQLite是一款通過C語言編寫的開放嵌入式數據庫,符合ACID中的關系型數據庫管理系統。SQLite數據庫具有所占內容小、運行效率高的特點,是現在安卓終端設備常用的數據庫,其由公共接口、虛擬機、后端與編譯器系統等部分組成。其中公共接口主要是通過SQLite C API組成,其中很多腳本語言或者程序,都是利用SQLite與接口交互;而編譯器系統則由分析器、代碼生成器與分組器組成,其中分組器與分析器先檢測執行的語句,然后將其轉變為方便基層處理的數據結構,接著將這種數據結構傳遞給代碼生成器進行后續處理,并產生虛擬機,繼續執行匯編代碼;虛擬機也叫虛擬數據庫引擎,此是SQLite數據庫的關鍵內容,負責解釋執行字節;后端的主要作用是管理數據,并借助OS Interface分享頁面信息[1]。

2? ? ? 基于安卓終端的SQLite數據庫網盤存儲安全的實現

2.1? ?身份認證

增強SQLite數據庫網盤儲存的安全性,最先從身份認證方案的實現入手,具體包括身份認證與密鑰形成兩部分內容。

2.1.1? ?身份認證

第一,系統中調出sqlite3_open_v2()的函數,并根據提示分別輸入用戶名與口令。第二,系統繼續調取函數,并分析其中帶有的參數,如用戶名、口令等。第三,用戶在函數下,通過查找用戶名的形式,觀看其是否在用戶信息體系中的屬性列表中。如果存在,繼續下一步。如果不存在,系統直接退出頁面,結束訪問。第四,結合密鑰生成的過程,用戶在輸入口令的時候,還需關注運算后產生的數值。第五,對于查詢系統,用戶有密鑰文件中的密鑰K。第六,系統調用checkPassword()函數中判斷K0和K的關系,若兩者相等,則證明身份認證成功,成功進入數據庫,若兩者不相等,直接退出訪問。

2.1.2? ?密鑰生成規則函數

數據庫進入過程中的身份驗證,需要比較兩個數值,如K0和K,K0表示用戶登錄數據庫中輸入的口令,經過密鑰生成規則的數值;K則是用戶最早注冊,設置口令時產生的密鑰值,圖1為密鑰生成規律函數下的算法代碼[2]。其中,用戶輸入口令之后,通過密鑰生成規律,進行密鑰計算,系統通過函數提示錄入手機IMEI碼,接著將其與站用戶輸入口令拼接,再加入Sale值,進行MD5散列,最終得到上百位不可逆推的密鑰。

2.2? ?訪問控制模塊

用戶在終端登錄SQLite數據庫的時候,系統經過對其進行身份驗證后,就會對用戶角色進行劃分,可以是一種,也可是多種,并在多種角色下,盡量增強角色權限。例如方位控制階段,系統會讀取用戶的權限與角色類別,判斷其是否具有操作權限。用戶身份驗證成功后,系統調用鉤子函數授權回調函數。其中的回調函數有三類返回值,分別為允許操作、拒絕操作與允許操作中摒棄不授權的操作。然后通過調用函數,按照用戶的角色,檢測是否有進行SQL語句操作權限。驗證結果如果是有權限,則允許操作,若沒有就終止請求。查找權限表的代碼圖只需系統對用戶進行角色判斷,就可知道是否具有執行權限。若權限碼type的值為1-5,表示系統執行的是符合用戶需求的操作;若權限碼type的值為6-10,表示系統執行的是刪除的操作;若權限碼type的值為11-15,表示系統執行對應SQL語句操作:若用戶的角色中沒有type,則表示無對應操作權限。

2.3? ?網盤的設計與實現

SQLite數據庫網盤的使用客戶,可通過客戶端注冊登錄與檢索下載。SQLite數據庫服務器對信息的儲存是以密文形式,要想解密,需要的密鑰在本地安卓終端上,以此防止云服務過程中產生的安全威脅。打開SQLite數據庫客戶端,輸入賬號密碼后,用戶持合法身份進入主界面,并點擊其中的多種功能,上傳文件空間,系統程序自動打開SQLite接口,進入安全模塊,系統驗證訪問者身份。待權限控制模塊認證成功后,SQLite數據庫內部的文件就可上傳[3]。安卓終端中的本地SQLite安全加強模塊中的密文,通過云端或者網盤,上傳到服務器終端。文件上傳前,就已經有很多數據被加密,以密文的形式存在于服務端,防止資料信息在傳遞或者保存的時候,被黑客攻擊并竊取。本文關于網盤的存儲安全,主要就是通過密文形式,通過數據庫安全模塊,將儲存在數據庫中的數據成功保護。網盤儲存模塊,有客戶端與服務器端兩種。

2.3.1? ?客戶端模塊

本次研究面向的是安卓終端專用的網盤,其安全性需要在安卓終端處,增加安全機制,保障數據安全后再上傳。SQLite數據庫的設計也重視終端數據的信息安全。用戶先進行簡單的注冊、登錄,然后在數據庫中收集信息并下載文件。首先,注冊登錄系統的設計。SQLite數據庫下的網盤存儲安全的保證,最先從認證用戶身份的合法性開始,通過注冊用戶名與密碼,保證數據庫登錄的安全性,通過MD5散列后,將與用戶名一致的信息上傳到服務器,保存用戶信息。用戶第一次登錄賬號的時候,在成功后會將個人信息直接上傳并保存到服務器的數據庫中。若不是首次登錄的用戶,直接填寫用戶名與賬號即可,待信息與數據庫中已有賬號相符,驗證提交密碼的散列值與對應散列值一致,則表示登錄成功,否則會出現“對不起,您提交的信息無效”的提示。

接著實現注冊登錄功能,安卓終端中的SQLite數據庫與其他應用程序相同,帶配置完開發環境后,就構建安全網盤工程,并在安卓終端資源目錄中,完成多個頁面的UI設計,并存入項目所處的圖片與多種格式等資源,并在JAVA文件中完成頁面的布局。開發過程中需連接網絡,并在AndroidManifest.xml中注冊授權,對于SQLite數據庫客戶端中頁面的設計,需有登錄頁面、注冊頁面與上傳下載頁面。用戶首次登錄時在登錄頁面注冊賬號,自己輸入賬號與密碼,注冊成功后對密碼進行MD5散列,多種數值一同保存。注冊頁面上需要有:“注冊”提示;輸入用戶名、密碼、確定密碼;體現注冊信息、退出。

文件加密上傳功能的設計,用戶文件上傳時需點擊“上傳文件”按鈕,并回調打開函數接口,完成數據庫的權限認證,并在制定的用戶文件中提去本地密鑰,加密所選上傳文件。加密結束后就可在SQLite數據庫日志中增加密文信息,并上傳密文。此處可以借助Socket的方法完成客戶端與服務器端的通信。

2.3.2? ?服務端模塊

SQLite數據庫中服務端模塊的設計,先從數據表開始,服務端作為數據庫中關鍵部分,記錄用戶的信息、上傳下載文件信息等內容。用戶初次注冊成功后,網絡服務端就會增加一條用戶信息,往往通過CountID當作用戶的ID標識,用于登錄時設置名稱,由服務端確定該用戶是否存在于數據庫中,若存在,接著對比密碼散列值與用戶輸入密碼散列后得到的值,以此提升口令安全性。以FileID文件標識為例,任意一個上傳到服務端的文件,都有獨立的ID號,通過FileID設置主鍵增強。并根據Sourceid判斷文件是否初次上傳,若該數值為空,則表示初次上傳。安卓終端中,服務端與客戶端相同,都通過創建對象,完成客戶端與服務器的連接。可通過SocketServer.java文件,結合客戶端發來的信息,確定文件是否初次上傳、是否是斷點續傳、是否上傳成功等,并將正確信息傳輸給客戶端。

2.4? ?SQLite數據庫加密

2.4.1? ?加密思路

安卓終端上的源碼十分復雜,整體范圍龐大,加密SQLite數據庫的時候,若直接在安卓源碼中修改SQLite源碼,后期調試就會變得困難,且使用效率低。所以需要將SQLite源碼先從安卓原生系統中分離,然后獨立進行修改,以此優化AES算法加密效果。SQLite源碼中增添加密與權限認證功能之后,就可再放入到原生系統中,完成加密接口與應用層的銜接,使系統開發技術人員在應用層中能快速調用SQLite加密API,并編寫安卓源碼,最終構建SQLite數據庫安全系統。

2.4.2? ?加密方案的實現

安卓系統中所有SQLite源碼的路徑為:external/sqlite/dist,加密方案實現中,將SQLite源碼提取。SQLite數據庫官方源碼中,包括幾個加密系統,要想實現SQLite的加密功能,實際上就是實現幾個函數。增加SQLite加解密功能的流程為:第一,在slite3.c文件中的開始部分,增加SQLITE_HAS_CODEC宏定義,啟動SQLite數據庫中的加解密功能。第二,在SQLite數據庫定義文件中添加函數。創建加密結構體,將臨時需要用的節目過程儲存,并對于其中用到的頁數據信息、密鑰和B-tree指針等信息數值,并釋放臨時變量函數。第三,編寫加密函數,優化原先的AES-128加解密算法,并植入SQLite數據庫中。第四,編寫新函數,連接進入數據庫的讀寫操作與加解密功能。保證數據庫每次被打開的時候,都會進行一次加解密操作。系統函數中往往蘊含多個數據庫的信息,且需要通過變量數據明確需要具體的加密或者解密,將Codec變量作為加解密的密鑰,可借助其他變量,釋放函數。

3? ? ? 結? ? 論

經過對安卓終端SQLite數據庫模塊的加強與對網盤儲存安全的實現進行闡述,從用戶身份認證角度出發,配合數據加密與訪問控制等形式,完成對SQLite數據庫網盤存儲安全的加強,使SQLite數據庫網盤儲存信息的安全性得到保障,進而避免信息在傳輸過程中受到惡意攻擊,加強對安卓終端用戶隱私的保護。

主要參考文獻

[1]汪坤.SQLite數據庫在Android平臺下的加密設計[J].電子技術與軟件工程,2020(3):210-212.

[2]何文才,馬鵬斐,劉培鶴,等.基于Android平臺的SQLite數據庫加密研究[J].計算機應用與軟件,2019,36(10):310-315,333.

[3]徐志揚,楊玉志,查曉俊,等.基于Android的醫療設備管理軟件離線后數據的處理方法[J].中國醫療設備,2019,34(4):123-126.

猜你喜歡
安全
智能家居安全分析
熱電公司發電機勵磁系統改造
科技視界(2016年21期)2016-10-17 20:00:16
淺談計算機硬件實驗室管理
科技視界(2016年20期)2016-09-29 11:59:36
中國民航HUD的應用和發展淺析
科技視界(2016年20期)2016-09-29 10:54:27
主站蜘蛛池模板: 国产成人精品视频一区二区电影| 欧美成人a∨视频免费观看| 欧美日韩中文国产va另类| 草草影院国产第一页| 综合色88| 色婷婷色丁香| 欧美在线视频a| 国产麻豆精品久久一二三| 在线a网站| 国产尤物视频在线| 中文天堂在线视频| 亚洲九九视频| 亚洲欧美另类久久久精品播放的| 久久免费视频6| 欧美亚洲一二三区| 日韩在线播放欧美字幕| www.亚洲色图.com| 国产资源免费观看| 女人18毛片久久| 人禽伦免费交视频网页播放| 亚洲无码视频一区二区三区| 美女被狂躁www在线观看| 欧美在线天堂| 欧美专区日韩专区| 国产精品网拍在线| 亚洲综合欧美在线一区在线播放| 亚洲最猛黑人xxxx黑人猛交 | 欧美亚洲国产视频| 97精品伊人久久大香线蕉| 国产精品视频系列专区| 免费看av在线网站网址| 亚洲人成影视在线观看| 玖玖免费视频在线观看| 国产亚洲欧美日韩在线一区二区三区| 亚洲小视频网站| 国产欧美高清| 亚洲男人在线| 美女高潮全身流白浆福利区| 亚洲永久免费网站| 伊在人亞洲香蕉精品區| 在线不卡免费视频| 男女精品视频| 中美日韩在线网免费毛片视频| 久久大香伊蕉在人线观看热2| 二级特黄绝大片免费视频大片| 日韩毛片免费| 青青草国产在线视频| 欧美日本在线一区二区三区| 一级毛片高清| av性天堂网| 欧洲成人免费视频| 国产sm重味一区二区三区| 欧美日韩综合网| 女人爽到高潮免费视频大全| 伊人国产无码高清视频| 亚洲V日韩V无码一区二区| 精品国产免费观看一区| 久久精品国产免费观看频道| 国产美女精品人人做人人爽| 国产精品美女免费视频大全| 无码aaa视频| 97免费在线观看视频| 日韩精品视频久久| 日本人又色又爽的视频| 久久综合色播五月男人的天堂| 麻豆精品视频在线原创| 青青操视频在线| 亚洲精品日产精品乱码不卡| 国产91精选在线观看| 国产精品99在线观看| 野花国产精品入口| 亚洲色欲色欲www网| 国产极品美女在线| 亚洲永久视频| 美女国产在线| 国产女人爽到高潮的免费视频| 欧美成人手机在线观看网址| 日本五区在线不卡精品| 国产女人在线视频| 国产亚洲精品91| 成人91在线| 亚州AV秘 一区二区三区|