數(shù)據(jù)庫加密技術(shù)論文(2)
數(shù)據(jù)庫加密技術(shù)論文篇二
淺談數(shù)據(jù)庫加密技術(shù)的應(yīng)用
摘要:數(shù)據(jù)庫系統(tǒng)作為信息系統(tǒng)的核心,其安全直接影響信息系統(tǒng)的安全。本文簡要介紹了加密技術(shù)的概念及主要方法,針對(duì)數(shù)據(jù)庫系統(tǒng)的特點(diǎn)和安全問題提出數(shù)據(jù)庫系統(tǒng)加密的策略,并對(duì)數(shù)據(jù)庫系統(tǒng)加密的相關(guān)技術(shù)進(jìn)行了闡述。最后討論了數(shù)據(jù)庫加密技術(shù)存在的局限性。
Abstract: The database system is the core of information system, its safety directly influences the safety of information system.This text synopsis introduced to encrypt technical concept and main method, the characteristics aiming at database system and safe problem to put forward the strategy that the database system encrypts, and the related technique encrypting to the database system carried on to elaborate.Finally discussed the database encrypts limiting of technique existence sex.
關(guān)鍵字:加密技術(shù) 數(shù)據(jù)庫系統(tǒng) 安全
Key word:Encrypt the technique database system safety
中圖分類號(hào):G250.74 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):
1、引言
隨著因特網(wǎng)的普及和計(jì)算機(jī)技術(shù)的飛速發(fā)展,各行各業(yè)的信息化程度得到了顯著的提高。信息系統(tǒng)已經(jīng)成為企業(yè)、金融機(jī)構(gòu)、政府及國防等部門現(xiàn)代化的重要標(biāo)志。如何保證現(xiàn)代信息系統(tǒng)的安全是計(jì)算機(jī)領(lǐng)域面臨的一大挑戰(zhàn)。數(shù)據(jù)庫系統(tǒng)作為信息的聚集體是信息系統(tǒng)的核心,其安全性對(duì)整個(gè)信息系統(tǒng)來說至關(guān)重要,數(shù)據(jù)庫加密技術(shù)成為保障數(shù)據(jù)庫系統(tǒng)安全的基石。
2、加密技術(shù)
加密技術(shù)主要是為了能夠有效地保護(hù)數(shù)據(jù)的安全性,下面簡單介紹加密技術(shù)的概念及主要算法。
2、1加密的概念
數(shù)據(jù)加密的基本過程就是對(duì)原來為明文的文件多數(shù)據(jù)按某種算法進(jìn)行處理,使其成為不可讀的一段代碼,通常稱為“密文”,使其只能在輸入相應(yīng)的密鑰之后才恩能夠顯示出本來內(nèi)容,通過這樣的途徑來達(dá)到保護(hù)數(shù)據(jù)不被非法人竊取、閱讀的目的。該過程的逆過程為解密,即將該編碼信息轉(zhuǎn)化成為其原來數(shù)據(jù)的過程。
2、2數(shù)據(jù)加密的原理
數(shù)據(jù)加密就是把數(shù)據(jù)信息即明文轉(zhuǎn)換為不可辨識(shí)的形式即密文的過程,目的是使不應(yīng)了解該數(shù)據(jù)信息的人不能夠知道和識(shí)別。將密文轉(zhuǎn)變?yōu)槊魑牡倪^程(如圖1所示)就是解密。加密和解密過程形成加密系統(tǒng),明文與密文統(tǒng)稱為報(bào)文。任何加密系統(tǒng)通常都包括如下4個(gè)部分:
(1)需要加密的報(bào)文,也稱為明文P。
(2)加密以后形成的報(bào)文,也稱為密文Y。
(3)加密(解密)算法E(D)。
(4)用于加密和解密的鑰匙,稱為密鑰K。
加密過程可描述為:在發(fā)送端利用加密算法E和加密密鑰Ke對(duì)明文P進(jìn)行加密,得到密文Y=EKe(P)。密文Y被傳送到接收端后應(yīng)進(jìn)行解密。解密過程可描述為:接收端利用解密算法D和解密密鑰Kd對(duì)密文Y進(jìn)行解密,將密文恢復(fù)為明文P=DKd(Y)。在密碼學(xué)中,把設(shè)計(jì)密碼的技術(shù)稱為密碼編碼.把破譯密碼的技術(shù)稱為密碼分析。密碼編碼和密碼分析合起來稱為密碼學(xué)。在加密系統(tǒng)中,算法是相對(duì)穩(wěn)定的。為了加密數(shù)據(jù)的安全性,應(yīng)經(jīng)常改變密鑰。
2、3加密的兩種主要算法
加密技術(shù)通常通常分為兩大類:“對(duì)稱式”和“非對(duì)稱式”。
對(duì)稱式加密就是加密和解密使用同一個(gè)密鑰,通常稱之為“Session Key”。這種加密技術(shù)目前被廣泛采用,如美國政府所采用的DES加密標(biāo)準(zhǔn)就是一種典型的“對(duì)稱式”加密法,它的Session Key長度為56Bits。
非對(duì)稱式加密就是加密和解密所使用的不是同一個(gè)密鑰,通常有兩個(gè)密鑰,稱為“公鑰”和“私鑰”,她們兩個(gè)必須配對(duì)使用,否則不能打開加密文件。這里的“公鑰”是指可以對(duì)外公布的,“私鑰”則不能,只能由持有人一個(gè)人知道。它的優(yōu)越性就在這里,因?yàn)閷?duì)稱式的加密方法如果是在網(wǎng)絡(luò)上傳輸加密文件及很難把密鑰告訴對(duì)方,不管用什么方法都有可能被竊聽到。而非對(duì)稱式的加密方法有兩個(gè)密鑰,且其中的“公鑰”是可以公開的,也就不怕別人知道,收件人解密時(shí)只要用自己的私鑰就可以,這樣就很好的避免了密鑰的傳輸安全性問題。
3、加密技術(shù)在數(shù)據(jù)庫加密的應(yīng)用
加密技術(shù)的應(yīng)用是多方面的,例如電子商務(wù)、、數(shù)據(jù)庫系統(tǒng)等,下面主要介紹加密技術(shù)在數(shù)據(jù)庫加密中的應(yīng)用。
3、1數(shù)據(jù)庫加密的特點(diǎn)
數(shù)據(jù)庫是大量、持久、結(jié)構(gòu)化數(shù)據(jù)的集合,數(shù)據(jù)的存儲(chǔ)、管理和使用都有自身特點(diǎn),不適合像一般文件存儲(chǔ)加密那樣對(duì)整個(gè)文件加密。與傳統(tǒng)的數(shù)據(jù)加密技術(shù)相比,數(shù)據(jù)庫存儲(chǔ)加密系統(tǒng)有自身的特點(diǎn)和要求。構(gòu)建數(shù)據(jù)庫有兩種基本方式:硬件平臺(tái)是通用計(jì)算機(jī)系統(tǒng),即數(shù)據(jù)庫專用計(jì)算機(jī),數(shù)據(jù)庫直接構(gòu)建在磁盤上;軟件平臺(tái)是通用的操作系統(tǒng)。數(shù)據(jù)庫存儲(chǔ)加密的主要目的是按照用戶的要求將敏感數(shù)據(jù)加密存儲(chǔ),防止非法用戶采用其他手段獲取數(shù)據(jù),同時(shí)保證合法用戶通過數(shù)據(jù)加密系統(tǒng)仍然能夠正常訪問數(shù)據(jù)。因此,數(shù)據(jù)庫存儲(chǔ)加密系統(tǒng)的開發(fā)原則應(yīng)該是:安全,高效,保持?jǐn)?shù)據(jù)庫特點(diǎn)。
3、1、1快速隨機(jī)存取
雖然數(shù)據(jù)庫中的數(shù)據(jù)最終是以文件形式存儲(chǔ)在物理介質(zhì)上,卻不能將整個(gè)數(shù)據(jù)作為一個(gè)文件來加密。一般情況下,文件是作為一個(gè)整體來使用的。傳統(tǒng)的文件存儲(chǔ)加密從頭至尾順序執(zhí)行,訪問加密文件時(shí)再從頭至尾進(jìn)行解密。而數(shù)據(jù)庫操作最小單位是一個(gè)數(shù)據(jù)元素,該元素是數(shù)據(jù)庫文件中隨機(jī)的一段;同時(shí),數(shù)據(jù)庫文件較為龐大,如果每次訪問數(shù)據(jù)庫都一次全文加/解密,則執(zhí)行速度很慢,以致數(shù)據(jù)庫實(shí)際不可用。因此數(shù)據(jù)庫加密必須解決對(duì)數(shù)據(jù)庫文件快速隨機(jī)存取問題和最小操作粒度的數(shù)據(jù)加/解密問題。
為了快速的查詢、更新數(shù)據(jù),數(shù)據(jù)庫管理系統(tǒng)通常有一系列快速隨機(jī)存取的方法,這些方法的實(shí)現(xiàn)基于存儲(chǔ)數(shù)據(jù)的模型和描述應(yīng)用數(shù)據(jù)的元數(shù)據(jù)。關(guān)系數(shù)據(jù)庫中,組織存儲(chǔ)數(shù)據(jù)的模型就是系統(tǒng)表。系統(tǒng)表是保證數(shù)據(jù)庫管理系統(tǒng)正常工作的數(shù)據(jù)信息。
關(guān)系數(shù)據(jù)庫所使用的關(guān)系語言是高度的非過程化的,用戶不必請(qǐng)求數(shù)據(jù)庫管理員為其建立特殊的存取路徑,存取路徑的選擇是由DBMS自動(dòng)完成的。這是關(guān)系數(shù)據(jù)庫的主要優(yōu)點(diǎn)之一。因此,在關(guān)系數(shù)據(jù)庫存儲(chǔ)加密系統(tǒng)中,沿用數(shù)據(jù)庫管理系統(tǒng)對(duì)存儲(chǔ)數(shù)據(jù)的定位和維護(hù)功能,是實(shí)現(xiàn)快速隨機(jī)存取數(shù)據(jù)庫文件的一個(gè)好辦法。
3、1、2存儲(chǔ)容量
數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù)量大、存儲(chǔ)時(shí)間長,這給敵方破譯加密數(shù)據(jù)帶來一定的有利條件。因此,數(shù)據(jù)庫存儲(chǔ)加密必須采用高強(qiáng)度的算法,同時(shí)要保證密鑰定期更換。由于數(shù)據(jù)存儲(chǔ)量大,應(yīng)盡量避免加密造成的數(shù)據(jù)長度增加,防止數(shù)據(jù)庫存儲(chǔ)容量大幅度膨脹。
3、1、3一次一密
數(shù)據(jù)庫中的數(shù)據(jù)是結(jié)構(gòu)化的。因此,必須保證加密后的數(shù)據(jù)仍然是結(jié)構(gòu)化的。同時(shí),由于數(shù)據(jù)庫中數(shù)據(jù)的結(jié)構(gòu)化存儲(chǔ),同一字段的數(shù)據(jù)類型(長度、值域)和邏輯含義相同,這便于破譯者分析密文數(shù)據(jù)結(jié)構(gòu),獲得大量相同密文,從而利用統(tǒng)計(jì)規(guī)律獲得明文。數(shù)據(jù)數(shù)存儲(chǔ)加密也應(yīng)采取“一次一密”。因此,這里的“一次一密”與傳輸加密的一次一密不同,是指每個(gè)加密單位采用不同的密鑰。對(duì)于實(shí)現(xiàn)最小操作粒度的加密來說,就是一個(gè)數(shù)據(jù)元素一個(gè)密鑰。保證即使明文中同段值重復(fù)出現(xiàn),對(duì)應(yīng)的密文也各不相同。
3、2數(shù)據(jù)庫加密的方法
3、2、1加密粒度的選擇
數(shù)據(jù)庫加密的粒度一直是一個(gè)令人困擾的問題。一般來講,數(shù)據(jù)庫加密的粒度可以有三種:表、記錄和數(shù)據(jù)項(xiàng)。
(1)表級(jí)加密:表級(jí)加密是在表一級(jí)進(jìn)行加密,加密解密的對(duì)象是整個(gè)表。這種加密方法完全是照搬操作系統(tǒng)中文件的加密方法,用于數(shù)據(jù)庫的加密顯然是不合適的。
(2)記錄級(jí)加密:記錄級(jí)加密是在表一級(jí)上進(jìn)行,即記錄加密方法。它將數(shù)據(jù)庫中的記錄看成操作對(duì)象,統(tǒng)一作加密解密處理。這種方法比第一種能更好地保證數(shù)據(jù)的安全,使用時(shí)較為方便,但其靈活性不高。
3、2、2加密算法的選擇
密碼算法在早期有序列算法,移位算法等。當(dāng)前,加密技術(shù)通常通常分為兩大類:“對(duì)稱式”和“非對(duì)稱式”。如DES就是一種對(duì)稱密鑰算法,而RSA是一種公開密鑰算法。選擇合適的加密算法是很重要的,其加密強(qiáng)度應(yīng)能滿足系統(tǒng)安全需要,但要考慮加密結(jié)果是否符合數(shù)據(jù)約束條件,存儲(chǔ)會(huì)不會(huì)造成額外負(fù)擔(dān);對(duì)加密速度的要求則是不應(yīng)該對(duì)系統(tǒng)性能產(chǎn)生明顯影響,響應(yīng)時(shí)間越短越好。同時(shí),對(duì)應(yīng)用系統(tǒng)的用戶來說,數(shù)據(jù)庫加解密過程應(yīng)該是透明的,不能影響合法用戶的正常操作。數(shù)據(jù)庫加密要求加密效率要盡可能的高,以DES算法為代表的對(duì)稱密鑰加密算法則是簡單高效,適合進(jìn)行數(shù)據(jù)庫加密,不過由于DES密鑰長度過短,隨著計(jì)算機(jī)運(yùn)算能力的增強(qiáng)和密碼分析技術(shù)的發(fā)展,DES將會(huì)由AES替代。而以RSA算法為代表的公開密鑰加密算法加密強(qiáng)度較高,但算法復(fù)雜,效率較低,但由于它的非對(duì)稱加密的特點(diǎn),可以用它來對(duì)AES加密的密鑰進(jìn)行加密保護(hù),這樣用戶只要保證自己的私鑰安全,在保證加密信息安全性的同時(shí),大大簡化了加密數(shù)據(jù)庫的密鑰管理。
3、2、3數(shù)據(jù)類型的轉(zhuǎn)換
數(shù)據(jù)庫中的數(shù)據(jù)是以結(jié)構(gòu)化方式存儲(chǔ)的,各種類型的數(shù)據(jù)有其特定的格式、長度、值域。如果要將加密后的數(shù)據(jù)仍然存儲(chǔ)在原來的表(簡稱明表)中,則必須保證加密后數(shù)據(jù)的格式、長度、值域都仍然保持不變。這樣的要求對(duì)于加密算法來說是難以達(dá)到的。于是我們將各種類型的數(shù)據(jù)以統(tǒng)一的格式加密,并存儲(chǔ)在一張表(簡稱密文表)中,對(duì)數(shù)據(jù)進(jìn)行查詢和更新操作時(shí),再將密文表中所操作的各字段數(shù)據(jù)根據(jù)加密字典“屬性信息表”中相應(yīng)的類型進(jìn)行轉(zhuǎn)換。
3、2、4密鑰的管理
數(shù)據(jù)庫具有高度共享的特點(diǎn),數(shù)據(jù)庫中數(shù)據(jù)信息長期存儲(chǔ),反復(fù)加密解密,相應(yīng)地密鑰也需要長期存儲(chǔ),宜采用共享密鑰機(jī)制。數(shù)據(jù)庫加密的主要目的在于防止非法用戶通過非法途徑獲得明文數(shù)據(jù),而仍要保證任何合法用戶可以通過合法渠道獲得解密數(shù)據(jù)。所以,密鑰共享機(jī)制一方面要求加密算法的絕對(duì)保密和一定的強(qiáng)度,另一方面則要求密鑰的共享是一定范圍和程度的,不是任何人都可以無條件地獲得密鑰。
1、 密鑰管理體制應(yīng)該具備的特性
首先,密鑰難以被竊取。
其次,一定條件下竊取了密鑰也是沒有用的,密鑰的使用范圍和時(shí)間有一定的限制。
再者,密鑰的分配和更換過程對(duì)用戶透明,用戶不一定要親自掌管密鑰。
2、 密鑰管理方式
層次化的密鑰管理方式,用于數(shù)據(jù)加密的工作密鑰需要?jiǎng)討B(tài)產(chǎn)生:工作密鑰由上層的加密密鑰進(jìn)行保護(hù),最上層的密鑰稱為主密鑰,是整個(gè)管理系統(tǒng)的核心;多層密鑰體制大大加強(qiáng)了密碼系統(tǒng)的可靠性,因?yàn)橛玫米疃嗟墓ぷ髅荑€時(shí)時(shí)更換,而高層密鑰的數(shù)量有限,使得破譯的難度大大提升。
3、3 數(shù)據(jù)庫加密的局限性
數(shù)據(jù)庫加密技術(shù)在保證安全性的同時(shí),也給數(shù)據(jù)庫系統(tǒng)的可用性帶來一些影響
3、3、1系統(tǒng)運(yùn)行效率受到影響
加密技術(shù)帶來的主要問題之一是影響效率。為了減少這種影響,一般對(duì)加密的范圍做一些約束,如不加密索引字段和關(guān)系運(yùn)算的比較字段等。
3、3、2對(duì)數(shù)據(jù)的SQL語言及SQL函數(shù)受到制約
SQL語言中的Group by、Order by及Having子句分別完成分組和排序等操作,如果這些子句的操作對(duì)象是加密數(shù)據(jù),那么解密后的明文數(shù)據(jù)將失去原語句的分組和排序作用。另外,DBMS擴(kuò)展的SQL內(nèi)部函數(shù)一股也不能直接作用于密文數(shù)據(jù)。
3、3、3難以實(shí)現(xiàn)對(duì)數(shù)據(jù)完整性約束的定義
數(shù)據(jù)庫一般都定義了關(guān)系數(shù)據(jù)之間的完整性約束,如主/外鍵約束及值域的定義等。數(shù)據(jù)一旦加密,DBMS將難以實(shí)現(xiàn)這些約束。
3、3、4密文數(shù)據(jù)容易成為攻擊目標(biāo)
加密技術(shù)把有意義的明文轉(zhuǎn)換為看上去沒有實(shí)際意義的密文信息,但密文的隨機(jī)性同時(shí)也暴露了消息的重要性,容易引起攻擊者的注意和破壞,從而造成了一種新的不安全性。加密技術(shù)往往需要和其他非加密安全機(jī)制相結(jié)合,以提高數(shù)據(jù)庫系統(tǒng)的整體安全性。
4、總結(jié)
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,數(shù)據(jù)庫的應(yīng)用十分廣泛,深入到各個(gè)領(lǐng)域,越來越多的資源與信息被放入數(shù)據(jù)庫供大家使用,但隨之而來產(chǎn)生了數(shù)據(jù)的安全問題。數(shù)據(jù)庫系統(tǒng)作為信息的聚集體,是計(jì)算機(jī)信息系統(tǒng)的核心部件,其安全性至關(guān)重要。關(guān)系到企業(yè)興衰、國家安全。因此,如何有效地保證數(shù)據(jù)庫系統(tǒng)的安全,實(shí)現(xiàn)數(shù)據(jù)的保密性、完整性和有效性,已經(jīng)成為人們探索研究的重要課題之一。目前除了數(shù)據(jù)庫的安全性以外,最有效的方式就是對(duì)數(shù)據(jù)庫內(nèi)的數(shù)據(jù)進(jìn)行加密儲(chǔ)存。這樣即使有非法入侵者能進(jìn)入到數(shù)據(jù)庫竊取到密文數(shù)據(jù),由于解密技術(shù)相對(duì)復(fù)雜,他們也不能輕易得到其明文資料,因此能在很大程度上保護(hù)數(shù)據(jù)的安全,可以說數(shù)據(jù)加密是數(shù)據(jù)安全的最后一道防線,也是最后可用的安全手段。數(shù)據(jù)庫加密技術(shù)作為一種對(duì)數(shù)據(jù)進(jìn)行安全保護(hù)的有效手段,將起到越來越重要的作用。
參考文獻(xiàn)
1、 吳曉春 《加密技術(shù)概念、加密方法以及應(yīng)用詳解》 中國科技信息2006.3 17-18
2、 林斯 《數(shù)據(jù)庫加密策略及相關(guān)技術(shù)研究》 科技創(chuàng)新導(dǎo)報(bào) 2009 34
3、 陳云 《數(shù)據(jù)庫加密系統(tǒng)相關(guān)技術(shù)研究》 硅谷
4、 周碧英 張鵬 《數(shù)據(jù)庫加密技術(shù)的實(shí)現(xiàn)與加密方法》 內(nèi)肛科技 2008.2 119
5、 陳鐵英 陳華 劉瑜 《基于三層次的數(shù)據(jù)庫加密應(yīng)用系統(tǒng)》 華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版)2005.7 41-46
看了“數(shù)據(jù)庫加密技術(shù)論文”的人還看:
1.詳解加密技術(shù)概念加密方法以及應(yīng)用論文
2.淺談?dòng)?jì)算機(jī)網(wǎng)絡(luò)安全中數(shù)據(jù)加密技術(shù)應(yīng)用探討