孫巖
摘要:數(shù)據(jù)庫安全問題越來越受到人們的重視,大到數(shù)據(jù)庫備份,小到數(shù)據(jù)項的加密,都離不開安全問題。而數(shù)據(jù)庫安全保護是指數(shù)據(jù)庫設計者時刻保護數(shù)據(jù),防止未經(jīng)授權的操作者對數(shù)據(jù)庫中的數(shù)據(jù)進行非法修改。本文試從數(shù)據(jù)加密要求和實現(xiàn)方式方面進行了論述。
關鍵詞:數(shù)據(jù)庫;安全;加密
隨著計算機網(wǎng)絡的快速發(fā)展,各個企業(yè)、事業(yè)單位及各組織機構等都逐漸開始大量使用各種信息系統(tǒng)并且通過開放的網(wǎng)絡來進行信息交換,這大大地提高了各類數(shù)據(jù)庫的利用率。目前主流網(wǎng)站后臺管理系統(tǒng)大多是依靠數(shù)據(jù)庫,隨著應用平臺的不斷完善,數(shù)據(jù)庫安全問題已經(jīng)逐漸成為企事業(yè)單位信息管理員關注的重點。
一、數(shù)據(jù)庫系統(tǒng)的安全需求
數(shù)據(jù)庫系統(tǒng)安全是信息安全的一個子集,也是信息安全中最重要的部分之一。與信息安全的整體需求相似,數(shù)據(jù)庫系統(tǒng)的安全要求主要包括數(shù)據(jù)保密性、數(shù)據(jù)可用性和數(shù)據(jù)完整性三個方面:
1、數(shù)據(jù)的保密性數(shù)據(jù)的保密性是指禁止任何沒有權限的用戶非法訪問數(shù)據(jù)。
2、數(shù)據(jù)的可用性數(shù)據(jù)的可用性指任何授權用戶的正常操作必須接受,同時又能保證人機交互友好、系統(tǒng)高效正常運行。即,任何授權用戶要獲取數(shù)據(jù)時應當立即可以獲得。
3、數(shù)據(jù)的完整性數(shù)據(jù)庫系統(tǒng)的完整性是指在數(shù)據(jù)庫中數(shù)據(jù)要具備正確性、一致性和相容性等特點。
二、數(shù)據(jù)庫加密的要求
數(shù)據(jù)庫加密的目的就是要確保數(shù)據(jù)庫的安全,但是加解密操作過程必然會影響數(shù)據(jù)庫操作的效率,一個好的數(shù)據(jù)庫加密系統(tǒng)就是要在安全性和效率之間取得一個平衡。即:穩(wěn)定的數(shù)據(jù)庫加密系統(tǒng)必須滿足以下幾點要求:
1、加解密速度要求足夠快,這樣減少影響數(shù)據(jù)操作響應時間。
2、加密強度要足夠大,保證長時間而且大量數(shù)據(jù)不被破譯。但是在實際應用中加密算法不一定在理論上無法破解,但在實際應用中能保證破解的代價大于獲得其中數(shù)據(jù)的意義。
3、對數(shù)據(jù)庫的合法用戶來說加解密操作是透明的,它不會影響用戶的合理操作。用戶在明文數(shù)據(jù)庫系統(tǒng)中能夠進行更新、增加、刪除數(shù)據(jù),在密文數(shù)據(jù)庫中也可以用相同的方法增加、更新和刪除數(shù)據(jù),而且感覺不到加解密過程的存在。
4、對加密后的數(shù)據(jù)庫存儲量并沒有明顯的增加。
5、密鑰管理機制靈活,加解密密鑰存儲安全,使用方便可靠。
三、數(shù)據(jù)庫加密的粒度
數(shù)據(jù)庫加密的粒度可以分為文件級、表級、字段級、記錄級和數(shù)據(jù)元素級等4個層次。
1、文件級加密。把數(shù)據(jù)庫文件作為一個整體,對整個數(shù)據(jù)庫文件用加密算法和加密密鑰加密,形成密文的形式來確保數(shù)據(jù)的機密性。利用文件級加密,可以對全部數(shù)據(jù)庫文件進行解密來實現(xiàn)數(shù)據(jù)共享。但文件級加密也有一些缺陷:如修改其中一個數(shù)據(jù)需要進行加密、解密、復制以及修改等操作,這些將大大增加系統(tǒng)的負擔。
2、表級加密。表級加密的對象是整個表格,與文件級加密類似,表級加密中每個表格與其他不同的表密鑰經(jīng)過一定的加密算法運算后形成密文存儲。但表級加密的方法也存在很大的缺陷:對數(shù)據(jù)項或記錄所在表的數(shù)據(jù)進行解密才可以訪問該數(shù)據(jù)項或記錄,因此有可能導致執(zhí)行效率低下。在目前的實際應用中,與文件級加密一樣基本不使用。
3、字段級加密。字段加密又稱為域加密或屬性級加密,一般而言屬性的個數(shù)少于相應表格中的記錄數(shù)量,按字段加密需要保存的密鑰數(shù)相對較少。并且字段級加密是一種選擇性加密,并不是對所有數(shù)據(jù)都加密,而是選擇需要保密的字段加密,其余字段仍以明文形式存儲。
4、記錄級加密。所謂記錄級加密是指在數(shù)據(jù)庫中,每條記錄在相應密鑰的作用下,被加密成密文數(shù)據(jù)保存起來。在數(shù)據(jù)庫加密方法中記錄級加密技術是較為常見的加密方式。但是記錄級加密也有其缺陷:在解密的過程中,需要對所有包含這些記錄的數(shù)據(jù)進行解密,因此效率不高。
四、數(shù)據(jù)庫加密的實現(xiàn)方式
數(shù)據(jù)庫加密的實現(xiàn)方式主要體現(xiàn)在在數(shù)據(jù)庫系統(tǒng)中執(zhí)行加密的部件所處的位置和層次。按照數(shù)據(jù)庫系統(tǒng)與加密部件的不同關系,數(shù)據(jù)庫加密的實現(xiàn)方式可以大致分為兩類:庫內加密和庫外加密。
1、庫內加密。所謂庫內加密是指在DBMS內核層中實現(xiàn)加密過程,加,解密過程是透明的,數(shù)據(jù)完成加解密工作之后才在庫里進行存取操作。庫內加密方式的優(yōu)點是在DBMS內完成加密功能,實現(xiàn)DBMS與加密功能的無縫銜接,因此加密功能強。
2、庫外加密。所謂庫外加密是指在DBMS之外進行加/解密操作,DBMS負責密文管理。一般在客戶端實現(xiàn)加,解密操作過程。與庫內加密相比,庫外加密有其自身的特點:首先,加解密過程是在專門的加解密服務器中實現(xiàn)。其次,加密的數(shù)據(jù)與加密密鑰分開存放。
庫外加密也有其缺點:如數(shù)據(jù)庫一旦加密某些功能可能會受限制,比如數(shù)據(jù)庫的數(shù)據(jù)完整性受到破壞。
3加密算法的選擇。加密算法分為非對稱加密和對稱加密,對稱式加密就是加密和解密使用同一個密鑰,通常稱之為“Session Key”這種加密技術目前被廣泛采用,如美國政府所采用的DES加密標準就是一種典型的“對稱式”加密法,它的Session Kev長度為56Bits。
非對稱式加密就是加密和解密所使用的不是同一個密鑰,通常有兩個密鑰,稱為“公鑰”和“私鑰”,它們兩個必需配對使用,否則不能打開加密文件。這里的“公鑰”是指可以對外公布的,“私鑰”則不能,只能由持有人一個人知道。它的優(yōu)越性就在這里,因為對稱式的加密方法如果是在網(wǎng)絡上傳輸加密文件就很難把密鑰告訴對方,不管用什么方法都有可能被別竊聽到。而非對稱式的加密方法有兩個密鑰,且其中的“公鑰”是可以公開的,也就不怕別人知道,收件人解密時只要用自己的私鑰即可以,這樣就很好地避免了密鑰的傳輸安全性問題。
在具體的加密實施過程中,無論選擇什么加密算法都應當基于下述原則:(1)算法的安全強度需滿足數(shù)據(jù)保密性的要求;(2)與明文數(shù)據(jù)相對比,密文數(shù)據(jù)量(存儲空間)經(jīng)加密處理后不應過量增長;(3)加解密足夠快,并且加解密時延應當是用戶可以接受的。
綜上可知,隨著計算機網(wǎng)絡的快速發(fā)展,各個企業(yè)、事業(yè)單位及各組織機構等都逐漸開始大量使用各種信息系統(tǒng)并且通過開放的網(wǎng)絡來進行信息交換,這大大地提高了各類數(shù)據(jù)庫的利用率。
參考文獻:
[1]李桂來.劉海濤.網(wǎng)絡數(shù)據(jù)庫安全的探討[J].《中國現(xiàn)代教育裝備》.2006.
[2]鄭向軍,無線局域網(wǎng)安全技術探討.《福建電腦》.2009年第25卷第10期:75-76.endprint