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

Web信息管理系統(tǒng)數(shù)據(jù)庫加密技術(shù)研究

2010-06-05 10:47:34劉漢燁
電子設(shè)計工程 2010年9期
關(guān)鍵詞:數(shù)據(jù)庫用戶信息

劉漢燁

(榆林學(xué)院 信息工程學(xué)院,陜西 榆林 719000)

隨著計算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展和Internet技術(shù)的普及,Web系統(tǒng)結(jié)構(gòu)得到廣泛應(yīng)用,特別是在一些企業(yè)信息管理與政府政務(wù)管理中,已成為主要的管理方式。Web系統(tǒng)數(shù)據(jù)存放在后臺數(shù)據(jù)庫中,其中部分信息數(shù)據(jù)是絕對機(jī)密的,它關(guān)系到了企業(yè)的發(fā)展與存亡,一旦這些機(jī)密數(shù)據(jù)被竊取或惡意篡改,這勢必將給企業(yè)帶來巨大的經(jīng)濟(jì)損失。而給Web系統(tǒng)數(shù)據(jù)庫加密是保護(hù)系統(tǒng)關(guān)鍵數(shù)據(jù)的有效手段之一。

1 相關(guān)概念

1.1 口令加鹽技術(shù)

在系統(tǒng)登錄時,口令密鑰作為用戶登錄時的主要信息存放,其安全性直接關(guān)系到了整個系統(tǒng)的安全性,對于口令的加密,是極為重要的。而傳統(tǒng)的Hash函數(shù)加密法很容易遭受字典式攻擊,對于一般性的字典式攻擊方式,最常用的解決方式是對于原始數(shù)據(jù)進(jìn)行加鹽處理。所謂“加鹽技術(shù)”[1]是指在計算消息摘要時,加上一些字符,可以是固定的,也可以是隨機(jī)的,然后帶入公式,計算摘要,并保存起來。

1.2 中間件技術(shù)

中間件[2](middleware)是一種獨立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源,管理網(wǎng)絡(luò)通信。中間件處于操作系統(tǒng)軟件與用戶的應(yīng)用軟件的中間。它在操作系統(tǒng)、網(wǎng)絡(luò)和數(shù)據(jù)庫之上,應(yīng)用軟件的下層,可為處于自己上層的應(yīng)用軟件提供運(yùn)行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復(fù)雜的應(yīng)用軟件。

1.3 jCryption加密插件工作原理

jCryption是一個開源的jQuery加密插件。其工作原理是首先jCryption將表單數(shù)據(jù)序列化,并將表單數(shù)據(jù)轉(zhuǎn)化為16進(jìn)制值。當(dāng)服務(wù)器端生成密鑰對后,jCryption的加密腳本接收密鑰對,并使用公鑰將生成的16進(jìn)制表單數(shù)據(jù)加密并發(fā)送至服務(wù)器端,服務(wù)器端收到后將其解密。

2 加密系統(tǒng)的結(jié)構(gòu)

2.1 加密系統(tǒng)的結(jié)構(gòu)

原有的Web信息管理系統(tǒng)中,瀏覽器與Web服務(wù)器之間及Web服務(wù)器與數(shù)據(jù)庫之間沒有專門的體系和機(jī)制保證系統(tǒng)安全。該加密模型將加密系統(tǒng)放在中間層,通過加/減密模塊和安全認(rèn)證模塊來保障數(shù)據(jù)庫系統(tǒng)的安全[3-4],如圖1所示。

圖1 加密系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure diagram of encryption system

Web瀏覽器向Web服務(wù)器發(fā)送請求,Web服務(wù)器將請求的數(shù)據(jù)發(fā)送至加密中間件進(jìn)行處理。 如果數(shù)據(jù)需要加密存儲時,加密中間件將數(shù)據(jù)加密并存放在數(shù)據(jù)庫。如用戶需要訪問加密后的數(shù)據(jù)時,加密中間件將數(shù)據(jù)解密,并將解密后的數(shù)據(jù)發(fā)送給Web服務(wù)器。

2.2 加密算法的選取

加密系統(tǒng)選取加密算法的原則[5]主要有兩點。一是加密的安全性,二是加密速度。基于這兩點考慮,本系統(tǒng)使用AES算法加密數(shù)據(jù),使用RSA算法加密密鑰。

2.3 加密粒度的選擇

加密粒度[6]是指數(shù)據(jù)庫加密的最小單位。按照數(shù)據(jù)庫的結(jié)構(gòu)層次,對數(shù)據(jù)庫信息可分為數(shù)據(jù)文件(表)、記錄、字段(屬性列)和數(shù)據(jù)項,對數(shù)據(jù)庫信息的加密分別以文件、記錄、字段和數(shù)據(jù)項作為加密基本單位。基于表的加密即將數(shù)據(jù)庫文件作為整體,用加密算法對整個數(shù)據(jù)庫文件加密保證信息的真實性和完整性。但其加密方式過于粗糙,影響數(shù)據(jù)庫執(zhí)行的效率。基于記錄的加密是最常用的數(shù)據(jù)庫信息加密手段,其基本思路是,在各自密鑰的作用下,將數(shù)據(jù)庫的每一個記錄加密成密文并存放于數(shù)據(jù)庫文件中。基于記錄的數(shù)據(jù)庫加密的缺點是,在解密一個記錄的數(shù)據(jù)時,無法實現(xiàn)對該記錄中需要的字段進(jìn)行單獨解密。基于字段(屬性)的數(shù)據(jù)庫加密,就是針對于所加密對象中的某個字段進(jìn)行加密。本方案,由于Web信息管理系統(tǒng)中并不是所有字段都需要加密,所以采用基于字段級密度加密。

3 加密系統(tǒng)的實現(xiàn)

3.1 用戶登錄驗證模塊加密方案

用戶登錄模塊主要是對系統(tǒng)中所登錄的用戶進(jìn)行合法性驗證。用戶登錄驗證頁面是用戶進(jìn)入系統(tǒng)的第一道防線,保證用戶安全登錄系統(tǒng)是整個加密系統(tǒng)中重要模塊之一。用戶登錄模塊使用了口令加鹽技術(shù)。已加鹽的口令摘要以MD5方式加密保存在數(shù)據(jù)庫中。用戶登錄時,系統(tǒng)根據(jù)用戶的用戶名取得口令摘要,并根據(jù)口令摘要分離得到鹽值。系統(tǒng)根據(jù)輸入的口令和鹽值計算出口令摘要,然后與存放在數(shù)據(jù)庫中的摘要比對,如果比對一致則登錄成功,否則失敗。

3.2 信息管理系統(tǒng)表單加密方案設(shè)計

Web信息管理系統(tǒng)中,必然涉及到大量表單。使用HTML協(xié)議一般是不加密的,所有數(shù)據(jù)都是以明文的方式傳輸,因此表單數(shù)據(jù)加密就很重要。傳統(tǒng)的表單數(shù)據(jù)加密方法為SSL加密,但這種方法需要在Web服務(wù)器端進(jìn)行相關(guān)設(shè)置,操作麻煩。該系統(tǒng)采用開源jQuery插件jCryption加密form表單。

調(diào)用jCryption的格式非常簡單,假如表單id為a,那么使用 jCryption 加密表單的格式為:$("#a").jCryption();

3.3 加/解密引擎的設(shè)計與實現(xiàn)

加/解密引擎是整個數(shù)據(jù)庫系統(tǒng)中最重要的模塊,主要負(fù)責(zé)后臺數(shù)據(jù)庫的加密、解密。加/解密引擎主要由初始化模塊、加/解密模塊、語法分析模塊及數(shù)據(jù)庫連接模塊組成。

1)初始化模塊 初始化模塊是加密系統(tǒng)啟動時首先調(diào)用的模塊,主要負(fù)責(zé)加密系統(tǒng)的初始化。

2)加/解密模塊 加/解密模塊主要負(fù)責(zé)數(shù)據(jù)庫數(shù)據(jù)的加/解密處理。加密模塊的實現(xiàn)原理是加密模塊根據(jù)提供的SQL命令語法分析樹搜索加密字典,加密字典將所加密數(shù)據(jù)的密鑰信息返回,然后加密模塊將密鑰信息傳給密鑰管理模塊取得密鑰,從而加密模塊根據(jù)密鑰對相關(guān)信息進(jìn)行加密。解密模塊的實現(xiàn)原理是解密模塊根據(jù)需要解密的信息從密鑰管理模塊中取得密鑰,然后根據(jù)密鑰對信息解密。

3)語法分析模塊 語法分析模塊的主要功能是將SQL命令進(jìn)行語義分析,生成二叉樹形式。

4)數(shù)據(jù)庫連接模塊 該模塊負(fù)責(zé)加密引擎與數(shù)據(jù)庫的連接工作。

加/解密引擎的實現(xiàn)原理[7]是:首先對應(yīng)用程序所傳入的SQL語句進(jìn)行語法分析,并通過分析解析出來SQL命令所要操作的表、相應(yīng)的列以及對應(yīng)的數(shù)據(jù)信息,然后再利用加密字典管理程序?qū)用茏值溥M(jìn)行查詢,得出相應(yīng)表的加密信息。如果該SQL命令中沒有加密信息,直接對數(shù)據(jù)庫進(jìn)行操作;如果SQL命令中含有加密信息,需要從密鑰生成與管理模塊中取得密鑰,通過加密引擎中的加密處理模塊對數(shù)據(jù)信息進(jìn)行加密,再在語法分析模塊的作用下,生成相對應(yīng)的密文SQL命令,最后,將密文SQL命令傳入數(shù)據(jù)庫連接模塊,執(zhí)行數(shù)據(jù)庫操作。其實現(xiàn)步驟如下:

1)對SQL命令進(jìn)行語法分析,如果語法正確,轉(zhuǎn)到步驟2),進(jìn)行步驟2)處理;如果語法不正確,清除SQL命令緩沖區(qū),返回錯誤,打印日志。

2)判斷是否為數(shù)據(jù)庫加/解密引擎的內(nèi)部控制命令?如果是,處理內(nèi)部控制命令,然后轉(zhuǎn)到步驟7);如果不是,則轉(zhuǎn)到步驟 3)。

3)檢查加/解密引擎是否處于關(guān)閉狀態(tài)?如果是,則通知數(shù)據(jù)庫連接模塊,并等待;否則轉(zhuǎn)到步驟4)。

4)連接密鑰生成與管理模塊,解析需要加/解密的字段,然后轉(zhuǎn)入步驟5)。

5)SQL命令是否需要加密處理?如果是,則將SQL命令進(jìn)行加密變換,替換原SQL命令,然后轉(zhuǎn)入步驟6);否則直接轉(zhuǎn)入步驟6)。

6)將SQL命令轉(zhuǎn)送數(shù)據(jù)庫服務(wù)器處理。

7)SQL命令執(zhí)行完畢,清除SQL命令緩沖區(qū)。

3.4 密鑰生成與管理模塊

密鑰生成與管理模塊[4-8]在加密系統(tǒng)中所起的作用非常重要,由于不同的人存取不同的文件或同一文件的不同部分,因此加密產(chǎn)生的密鑰有可能很大,密鑰間關(guān)系復(fù)雜,這樣就給密鑰管理帶來很大困難。基于Web信息管理的結(jié)構(gòu),在密鑰管理中,本系統(tǒng)采用多級密鑰管理方案。對某一數(shù)據(jù)進(jìn)行加密后,系統(tǒng)會自動產(chǎn)生一個數(shù)據(jù)密鑰,該字段用此密鑰加密后以密文形式存放在數(shù)據(jù)庫里。另外,為了保證非法用戶竊取加密字段進(jìn)行解密,根據(jù)多級加密的思想,再產(chǎn)生一個用戶密鑰對數(shù)據(jù)密鑰進(jìn)行加密,以此增強(qiáng)數(shù)據(jù)密鑰的安全性。如果Web數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)安全級別比較高的話,可以將用戶密鑰保存在其他媒介中。

密鑰及密鑰相關(guān)配置信息都以表的形式存放在數(shù)據(jù)庫里,各表描述如下:1)表login_user用于登錄用戶信息。字段有用戶id和用戶名。2)表encrypt_table用于存儲加密表的信息。存儲信息由加密表id,用戶id表所有者,表數(shù)據(jù)庫名等信息。3)表encrypt_field保存被加密表所設(shè)計的字段。存儲的字段有字段名、字段數(shù)據(jù)類型及數(shù)據(jù)長度等。4)表iKeys用于存放密鑰實體。存儲的字段有密鑰id,密文等。5)table_field用于表示表、列對應(yīng)關(guān)系表。存儲字段有加密表id、用戶id、加密列id及密鑰創(chuàng)建時間等。各數(shù)據(jù)表關(guān)系圖見圖2。

圖2 數(shù)據(jù)表關(guān)系圖Fig.2 Relationship diagram of data tables

4 加密方案的應(yīng)用案例

某學(xué)院工資查詢系統(tǒng)是其校內(nèi)項目。該系統(tǒng)數(shù)據(jù)庫主要有2個表,分別是工資表及職工信息表。儲存有姓名、工資卡號、基本工資等信息。職工信息表主要存放的是職工的基本信息。在這兩個表里面,工資表里面的字段如姓名、工資卡號、工資等信息是屬于敏感信息,需要加密中間件加密。而職工的一些信息像出生年月、職稱等屬于普通信息,不需要加密中間件加密。敏感信息經(jīng)加密中間件加密后,只有工資卡擁有者才能瀏覽工資信息。即使數(shù)據(jù)庫管理員也不能瀏覽其他人的工資信息,這樣就保證了校內(nèi)工資信息的安全。系統(tǒng)登錄模塊使用了口令加鹽技術(shù)。普通表單像如教師基本信息更新表單使用了jQuery插件jCryption進(jìn)行加密。

5 結(jié) 論

本文針對Web信息系統(tǒng)結(jié)構(gòu)的安全需求,提出了一個數(shù)據(jù)庫加密模型。該加密結(jié)構(gòu)已在某學(xué)院校內(nèi)項目“工資查詢系統(tǒng)”中應(yīng)用,取得了預(yù)期的效果,使用jCryption完成表單信息傳輸加密。但本系統(tǒng)還有許多不足,比如系統(tǒng)里所密鑰過多,定會影響Web信息系統(tǒng)的查詢效率;使用jCryption完成表單信息傳輸加密不能有效防止MITM攻擊。這些問題都需要在以后的研究中加以解決。

[1]李勻.網(wǎng)絡(luò)滲透測試-保護(hù)網(wǎng)絡(luò)安全的技術(shù)、工具和過程[M].北京:電子工業(yè)出版社,2007.

[2]張云勇,張智江,劉錦德,等.中間件技術(shù)原理與應(yīng)用[M].北京:清華大學(xué)出版社,2004.

[3]張杰,徐元熙.基于B/S結(jié)構(gòu)的數(shù)據(jù)庫加密設(shè)計[J].微計算機(jī)信息,2008,24(11-3):185-187.ZHANG Jie,XU Yuan-xi.The design of database encryption system based on B/S architecture[J].Microcomputer Information,2008,24(11-3):185-187.

[4]安然,陳馳,徐震.數(shù)據(jù)庫加密中間件的設(shè)計與實現(xiàn)[J].計算機(jī)工程與設(shè)計,2009,30(14):3261-3264.AN Ran,CHEN Chi,XU Zhen.Design and implementation of database encryption middleware[J].Computer Engineering and Design ,2009,30(14):3261-3264.

[5]趙卓,劉博,厲京運(yùn).基于DBMS外層的數(shù)據(jù)庫加密系統(tǒng)研究與設(shè)計[J].計算機(jī)工程與設(shè)計,2008,29(12):3030-3033.ZHAO Zhuo,LIU Bo,Li Jing-yun.Research and design of database encryption system based on external DBMS[J].Computer Engineering and Design,2008,29(12):3030-3033.

[6]吳春明,鄭志強(qiáng).基于Web數(shù)據(jù)庫加密研究[J].西南農(nóng)業(yè)大學(xué)學(xué)報,2004,26(2):220-222.WU Chun-ming,ZHENG Zhi-qiang.Study on encryption of web-based database[J].Journal of Southwest Agricultural U-niversity,2004,26(2):220-222.

[7]吳興惠,張廣路.基于Web數(shù)據(jù)庫加密系統(tǒng)的研究[J].海南師范大學(xué)學(xué)報,2009,22(3):263-266.WU Xing-hui,ZHANG Guang-lu.Research on database encryption system based on Web[J].Journal of Hainan Normal University,2009,22(3):263-266.

[8]徐江峰,馬瑤.一種基于動態(tài)密鑰的數(shù)據(jù)庫加密方案[J].微計算機(jī)信息,2009,25(12-3):27-29.XU Jiang-feng,MA Yao.A scheme of database encryption based on dynamical secret[J].Mirocomputer Informetion,2009,25(12-3):27-29.

猜你喜歡
數(shù)據(jù)庫用戶信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
如何獲取一億海外用戶
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 亚洲日本中文字幕乱码中文| 国产精品欧美在线观看| 99久久免费精品特色大片| 久久国产黑丝袜视频| 国产精品无码久久久久久| 幺女国产一级毛片| 久久久国产精品免费视频| 国产成人高清在线精品| 好久久免费视频高清| 播五月综合| www.精品视频| 一区二区三区精品视频在线观看| 在线无码av一区二区三区| 99在线视频网站| 亚洲男人的天堂在线| 成年女人a毛片免费视频| 在线色综合| 国产精品成人一区二区| 成年人免费国产视频| 国产经典免费播放视频| 亚洲成人一区二区三区| 国内精品视频| 国产va在线观看免费| 亚洲中文字幕久久精品无码一区 | 69国产精品视频免费| 国产激情国语对白普通话| 中文字幕中文字字幕码一二区| 1024你懂的国产精品| 91网站国产| 高清久久精品亚洲日韩Av| 欧美色香蕉| 国产乱子伦精品视频| 国产十八禁在线观看免费| 精品黑人一区二区三区| 亚洲 成人国产| 国产精品成人一区二区不卡| 精品福利网| 国产SUV精品一区二区| 免费xxxxx在线观看网站| 香蕉99国内自产自拍视频| 最近最新中文字幕免费的一页| 国产白浆一区二区三区视频在线| 操操操综合网| 色噜噜综合网| 欧美亚洲国产视频| 91啦中文字幕| 婷婷亚洲视频| 亚洲久悠悠色悠在线播放| 男女猛烈无遮挡午夜视频| 亚洲一区波多野结衣二区三区| 国产欧美日韩视频怡春院| 一级黄色欧美| 欧美在线伊人| 日日噜噜夜夜狠狠视频| 无码aaa视频| 国产乱人视频免费观看| 天堂亚洲网| 国产一级妓女av网站| 亚洲AV免费一区二区三区| 亚洲精品日产精品乱码不卡| 中文毛片无遮挡播放免费| 色婷婷在线播放| 午夜福利亚洲精品| 成人在线综合| 99久久免费精品特色大片| 国产免费网址| 第九色区aⅴ天堂久久香| 激情综合婷婷丁香五月尤物| www.亚洲天堂| 91福利片| 亚洲国产成熟视频在线多多 | 四虎永久免费地址| 国产欧美日韩一区二区视频在线| 久久香蕉国产线看观看亚洲片| 一级成人a毛片免费播放| 国产性生交xxxxx免费| 国产一区二区三区免费| 亚洲人成网18禁| 中日韩欧亚无码视频| 午夜精品一区二区蜜桃| 亚洲二区视频| 国产黄色片在线看|