av网站免费线看精品_国产做a爱视频免费不_深爱激情网开心五月天_伊人五月天在线视频网

 
數(shù)據(jù)庫管理系統(tǒng)層次安全技術(shù)
發(fā)布時(shí)間:2008-04-23   瀏覽次數(shù):1227617
數(shù)據(jù)庫管理系統(tǒng)層次技術(shù) 數(shù)據(jù)庫系統(tǒng)的性很大程度上依賴于數(shù)據(jù)庫管理系統(tǒng)。如果數(shù)據(jù)庫管理系統(tǒng)機(jī)制非常強(qiáng)大,則數(shù)據(jù)庫系統(tǒng)的性能較好。目前市場(chǎng)上流行的是關(guān)系式數(shù)據(jù)庫管理系統(tǒng),其性功能很弱,這導(dǎo)致數(shù)據(jù)庫系統(tǒng)的性存在一定的威脅。 T-INDENT: 2em">由于數(shù)據(jù)庫系統(tǒng)在操作系統(tǒng)下都是以文件形式進(jìn)行管理的,因此入侵者可以直接利用操作系統(tǒng)的漏洞竊取數(shù)據(jù)庫文件,或者直接利用OS工具來非法偽造、篡改數(shù)據(jù)庫文件內(nèi)容。這種隱患一般數(shù)據(jù)庫用戶難以察覺,分析和堵塞這種漏洞被認(rèn)為是B2級(jí)的技術(shù)措施。 數(shù)據(jù)庫管理系統(tǒng)層次技術(shù)主要是用來解決這一問題,即當(dāng)前面兩個(gè)層次已經(jīng)被突破的情況下仍能保障數(shù)據(jù)庫數(shù)據(jù)的,這要求數(shù)據(jù)庫管理系統(tǒng)必須有一套強(qiáng)有力的機(jī)制。解決這一問題的有效方法之一是數(shù)據(jù)庫管理系統(tǒng)對(duì)數(shù)據(jù)庫文件進(jìn)行加密處理,使得即使數(shù)據(jù)不幸泄露或者丟失,也難以被人破譯和閱讀。 我們可以考慮在三個(gè)不同層次實(shí)現(xiàn)對(duì)數(shù)據(jù)庫數(shù)據(jù)的加密,這三個(gè)層次分別是OS層、DBMS內(nèi)核層和DBMS外層。 ⑴在OS層加密。在OS層無法辨認(rèn)數(shù)據(jù)庫文件中的數(shù)據(jù)關(guān)系,從而無法產(chǎn)生合理的密鑰,對(duì)密鑰合理的管理和使用也很難。所以,對(duì)大型數(shù)據(jù)庫來說,在OS層對(duì)數(shù)據(jù)庫文件進(jìn)行加密很難實(shí)現(xiàn)。 ⑵在DBMS內(nèi)核層實(shí)現(xiàn)加密。這種加密是指數(shù)據(jù)在物理存取之前完成加/脫密工作。這種加密方式的優(yōu)點(diǎn)是加密功能強(qiáng),并且加密功能幾乎不會(huì)影響DBMS的功能,可以實(shí)現(xiàn)加密功能與數(shù)據(jù)庫管理系統(tǒng)之間的無縫耦合。其缺點(diǎn)是加密運(yùn)算在服務(wù)器端進(jìn)行,加重了服務(wù)器的負(fù)載,而且DBMS和加密器之間的接口需要DBMS開發(fā)商的支持。 ◆定義加密要求工具 ◆DBMS ◆數(shù)據(jù)庫應(yīng)用系統(tǒng) ◆加密器 (軟件或硬件) ⑶在DBMS外層實(shí)現(xiàn)加密。比較實(shí)際的做法是將數(shù)據(jù)庫加密系統(tǒng)做成DBMS的一個(gè)外層工具,根據(jù)加密要求自動(dòng)完成對(duì)數(shù)據(jù)庫數(shù)據(jù)的加/脫密處理: ◆定義加密要求工具加密器 (軟件或硬件) ◆DBMS ◆數(shù)據(jù)庫應(yīng)用系統(tǒng) 采用這種加密方式進(jìn)行加密,加/脫密運(yùn)算可在客戶端進(jìn)行,它的優(yōu)點(diǎn)是不會(huì)加重?cái)?shù)據(jù)庫服務(wù)器的負(fù)載并且可以實(shí)現(xiàn)網(wǎng)上傳輸?shù)募用,缺點(diǎn)是加密功能會(huì)受到一些限制,與數(shù)據(jù)庫管理系統(tǒng)之間的耦合性稍差。 下面我們進(jìn)一步解釋在DBMS外層實(shí)現(xiàn)加密功能的原理: 數(shù)據(jù)庫加密系統(tǒng)分成兩個(gè)功能獨(dú)立的主要部件:一個(gè)是加密字典管理程序,另一個(gè)是數(shù)據(jù)庫加/脫密引擎。數(shù)據(jù)庫加密系統(tǒng)將用戶對(duì)數(shù)據(jù)庫信息具體的加密要求以及基礎(chǔ)信息保存在加密字典中,通過調(diào)用數(shù)據(jù)加/脫密引擎實(shí)現(xiàn)對(duì)數(shù)據(jù)庫表的加密、脫密及數(shù)據(jù)轉(zhuǎn)換等功能。數(shù)據(jù)庫信息的加/脫密處理是在后臺(tái)完成的,對(duì)數(shù)據(jù)庫服務(wù)器是透明的。 ◆加密字典管理程序 ◆加密系統(tǒng) ◆應(yīng)用程序 ◆數(shù)據(jù)庫加脫密引擎 ◆數(shù)據(jù)庫服務(wù)器 ◆加密字典 ◆用戶數(shù)據(jù) 按以上方式實(shí)現(xiàn)的數(shù)據(jù)庫加密系統(tǒng)具有很多優(yōu)點(diǎn):首先,系統(tǒng)對(duì)數(shù)據(jù)庫的最終用戶是完全透明的,管理員可以根據(jù)需要進(jìn)行明文和密文的轉(zhuǎn)換工作;其次,加密系統(tǒng)完全獨(dú)立于數(shù)據(jù)庫應(yīng)用系統(tǒng),無須改動(dòng)數(shù)據(jù)庫應(yīng)用系統(tǒng)能實(shí)現(xiàn)數(shù)據(jù)加密功能;第三,加解密處理在客戶端進(jìn)行,不會(huì)影響數(shù)據(jù)庫服務(wù)器的效率。 數(shù)據(jù)庫加/脫密引擎是數(shù)據(jù)庫加密系統(tǒng)的核心部件,它位于應(yīng)用程序與數(shù)據(jù)庫服務(wù)器之間,負(fù)責(zé)在后臺(tái)完成數(shù)據(jù)庫信息的加/脫密處理,對(duì)應(yīng)用開發(fā)人員和操作人員來說是透明的。數(shù)據(jù)加/脫密引擎沒有操作界面,在需要時(shí)由操作系統(tǒng)自動(dòng)加載并駐留在內(nèi)存中,通過內(nèi)部接口與加密字典管理程序和用戶應(yīng)用程序通訊。數(shù)據(jù)庫加/脫密引擎由三大模塊組成:加/脫密處理模塊、用戶接口模塊和數(shù)據(jù)庫接口模塊,如圖4所示。其中,"數(shù)據(jù)庫接口模塊"的主要工作是接受用戶的操作請(qǐng)求,并傳遞給"加/脫密處理模塊",此外還要代替"加/脫密處理模塊"去訪問數(shù)據(jù)庫服務(wù)器,并完成外部接口參數(shù)與加/脫密引擎內(nèi)部數(shù)據(jù)結(jié)構(gòu)之間的轉(zhuǎn)換。"加/脫密處理模塊"完成數(shù)據(jù)庫加/脫密引擎的初始化、內(nèi)部專用命令的處理、加密字典信息的檢索、加密字典緩沖區(qū)的管理、SQL命令的加密變換、查詢結(jié)果的脫密處理以及加脫密算法實(shí)現(xiàn)等功能,另外還包括一些公用的輔助函數(shù)。 數(shù)據(jù)加/脫密處理的主要流程如下: (1) 對(duì)SQL命令進(jìn)行語法分析,如果語法正確,轉(zhuǎn)下一步;如不正確,則轉(zhuǎn)6),直接將SQL命令交數(shù)據(jù)庫服務(wù)器處理。 (2) 是否為數(shù)據(jù)庫加/脫密引擎的內(nèi)部控制命令?如果是,則處理內(nèi)部控制命令,然后轉(zhuǎn)7);如果不是則轉(zhuǎn)下一步。 (3) 檢查數(shù)據(jù)庫加/脫密引擎是否處于關(guān)閉狀態(tài)或SQL命令是否只需要編譯?如果是則轉(zhuǎn)6),否則轉(zhuǎn)下一步。 (4) 檢索加密字典,根據(jù)加密定義對(duì)SQL命令進(jìn)行加脫密語義分析。 (5) SQL命令是否需要加密處理?如果是,則將SQL命令進(jìn)行加密變換,替換原SQL命令,然后轉(zhuǎn)下一步;否則直接轉(zhuǎn)下一步。 (6) 將SQL命令轉(zhuǎn)送數(shù)據(jù)庫服務(wù)器處理。 (7) SQL命令執(zhí)行完畢,SQL命令緩沖區(qū)。
立即預(yù)約