当前位置:文档之家› 基于Web的数据库安全技术研究

基于Web的数据库安全技术研究

Technology and Study・技术探讨 

基于Web的数据库安全技术研究 

吴慧丽方加娟 

(郑州职业技术学院 河南郑州450121) 

【摘要】随着网络的迅速普及,Web技术随之得到广泛应用,无论是政府、学校、企事业单位等都应用到Web技术进行宣传或工 作。其Web数据库信息的存储量越来越大,Web数据库的安全也受到了严峻的挑战。本文介绍了数据库安全的基本原理和数据 

库安全的实现技术,详细描述了数据库的子密钥加密算法。 

【关键词】Web;数据库;安全技术 

The Research of Database Security Technology based on Web 

Wu Hui-#FangJia-juan 

(Zhengzhou TechnicalCollege Henan Zhengzhou 450121,) 

【Abstract】With the rapid spread of network,Web technology widely as,whether Governments,schools,enterprises and institutions,have applied to 

work in the publicity or Web technologies,Web database information,increasing the amount of storage,Web database security has also been a serious 

challenge.This article introduces the basic principles of database security and database security technology,detailed description of database keys 

encryption algorithms. 

【Keywords】Web,Database,Security technology 

网络的不断发展,让人们得到便利的同时,也带来了隐患, 

信息的安全性越来越受到国家和企事业的重视,其中基于 WT.B的数据库安全成为重中之重。从早期的简单备份恢复、认 

证、数据加密和通信环节的监控等一系列进程无不与安全息息 相关,本文从数据库安全的技术手段上来分析研究。 

1.Web数据库安全 目前,基于B/S结构的网络模式成为主流,网络中到处都 充斥着Web信息,Web数据库也成为众多黑客攻击的重点, 

对于各个组织来说,如何维护该部门数据库的安全成为最为重 要和迫切的任务。 1.1数据库安全的定义 无论是国内还是国外,对于数据库的定义有很多种,把这 些定义总结起来,主要有两方面含义:1)系统运行的安全,非法 

用户通过网络对所入侵的电脑进行控制;2)系统信息的安全, 即对数据库进行入侵,从而获取或破坏合法用户的信息。本论 

文所涉及到数据库安全主要针对第二种含义。 要保证数据库安全,主要从以下几个方面来考虑: 

・8・201 1.08・www.infosting.org 1)保密性:数据库中的数据及信息只有被授权的用户才能 够使用或浏览,保护其数据不发生泄露。 2)完整性:数据库中的数据不能够被非法的修改或删除。 3)一致性:保证数据库中数据满足参照完整性、实体完整 

性和用户定义完整性的要求。 4)可用性:保证数据库中的数据对于授权用户来说是可使 

用的。 综上所述,整个数据库系统安全主要包括以下要求:访问 

控制、身份识别、客体重用、安全审计、数据完整性、推理控制、 

和可恢复性等。 1.2 Web数据库安全等级 目前,全球所用的数据库安全等级,都是参照美国国防部 制定的《可信计算机系统安全评估标准》,将整个系统的安全性 分为七个级别,这些级别采用向下兼容的关系,即高级别安全 等级包含低级别等级的所有要求。这7个级别分别是: 

1)D级:该级别是最小保护级,代表着数据库是不可信任 的,对于不能提供身份验证的网络服务划入该级别中。

 2)C1级:可进行一些初级的自主保护,可实现用户及数据 的分离,对于用户权限的传播有一定的限制和保护作用。 

3)C2级:对于现实使用的产品来说,该级别是必须要满足 的。可对安全事件进行跟踪和审计处理。 4)B1级:标记安全保护级,管理及强制访问控制机制。 

5)B2级:结构化保护级,该级别中没有数据库方面符合的 产品。 6)B3级:安全域级。 7)A1级:验证保护级。 

就目前来说,B2级别以前的系统基本上还处于理论阶段, 对于我们的数据库安全来说,基本上都是处于c级。 

2.数据库安全的实现技术 基于WEB数据库安全的方法和实现技术,主要有四种, 分别是:访问控制、数据库审计、用户识别和数据库加密。 

1】访问控制 通常所说的访问控制,主要是指数据库资源的使用情况, 

决定由哪些用户可以对具体的数据进行操作处理。只有在授权 

范围以内的用户,才能在自己的权限以内,对其特定的WEB 数据库中的数据进行访问处理。即将成员关系、权限和主体有 

机地结合起来,通过引入角色这一概念,扩展了传统意义上的 数据库数据的存取控制范围,将授权、职责和条件进行了详细 

的定义。 21数据库审计 该功能是把所有用户对数据库所有的操作都记录在审计 日志中。假如数据库出现被恶意修改、破坏或删除等非法操作, 

可通过审计日志中所记录的信息,分析其操作事件,对其人员 进行追查。 

3)用户识别 对于进入数据库系统,用户识别是外围的保护措施。即让 

系统能够识别用户的合法性和权限。目前,用户识别主要有三 种方式: 

a)用户加密码的形式,这是目前应用最多的识别方式。同 时也是最不安全的一种方式,入侵者可以通过线路窃听或重复 

攻击的方式获取用户和密码,从而以合法的身份进入到数据库 系统当中。 b)生物特征识别形式,这是利用人体唯一特殊的生理特征 (如指纹)作为进入系统的标识,其安全性相对较高,但技术相 

对复杂,特别应用于WEB数据库来说,其成本较高,不易维护。 c)硬件加软件的形式,目前应用比较多的是USB Key的身 技术探讨・Technology and Study 

份识别。它的认证方式有两种,一种是PKI体系的认证方式,另 

一种是冲击/响应的认证模式。无论是哪一种模式,其密钥的运 算由USB Key来完成,其数据证书无法被得制,算出的密钥不会 出现在计算机的内存或网络之中,保证了密钥的安全性。只有硬 件的拥有者才能对其数字证书进行认证,保证了数据库的安全。 

4)数据库加密技术 保存在数据库中的数据,其中一个最显著的特点是存储的 时间长,这样对于其安全性提出了更高的要求,对其进行加密 是目前解决的最好办法。但与此同时,由于数据库中的数据要 

经常反复使用,加密和解密也会随着数据的每次调用而反复执 行,在保证不降低系统性能的前提下进行加密和解密操作是十 分必要的。 

对于数据库来说,其加密的单位主要有:表、属性、记录和 数据元素。目前的数据库系统采用的都是三层结构,这三层分 

别是操作系统层、数据库内核层和外层。在操作系统层,对于大 型的数据库,目前还无法对其进行加密。 

对于数据库的内核层,如果要对其进行加密,必须要获得 该数据库开发商的支持。内核层的加密是在数据存取之前,就 

完成数据的加密和解密的工作。内核层的加密及解密工作,不 

会影响数据库系统的功能,但是有可能加重WEB服务器的负 载。其具体的加密方式如图1所示: 

图1数据库内核层加密关系示意图 事实上,将数据库的加密系统做成外层工具更加实际。即 将加密和解密工作都放在客户端来进行,这样就不会加重服务 

器的负载,并且可利用其加密和解密实现在网络传输过程中数 据的加密工作。其缺点是将限制一些加密的功能。图2是数据 

库外层工具的加密关系示意图。 对于数据库的加密,并不一定要对所有的数据都进行逐一 加密,仅仅对那些敏感的数据进行加密即可。这样可以减少一 

些不必要的加密和解密操作。如何确定敏感数据,需要根据自 身系统的特点进行分析。 

3.子密钥数据库加密方法 

信息安全与技术・2011.08・9・

 Technology and Study・技术探讨 

图2数据库外层加密关系示意图 子密钥数据库加密方法的原理是:根据关系数据库中的数 

据组织特点,对其记录进行加密,而解密时则以数据项为单位。 加密和解密采用的密钥是不相同的,所有记录采用同一的加密 密钥,而每个数据项的解密密钥都不相同。 

该加密方法的理论依据是孙子定理: 设ml,m2 ,mk是两两互素的正整数,即gcd(nil,mj)=1, 

i ̄j,i0=1,2 .,k则同余方程组: 

xibl(roodm1) xib2 fmod m2) 

x bk(mod mk) 模[ml,m2 .,mk]有唯一解,即在[ml,m2,...,mk]的意义下, 存在唯一的x,满足: 

x=-bi mod Ira1,m2,…,mk],i 1,2,…,k 该方法的主要代码如下: 

#include<iostream> typedeflong long Uong; 

]long b[1OOOl,w[1OO0]; ]long extended_eucfidOlong a,Uong b,llong&x,Uong&y){ 

llong d: if ==o)x=1;Y=0:return a;} d:extended_euclid(b,a%b,Y,x); 

Y一=a/b x: return d: } llong chinese remainder(int len){ llongi,d,x,Y,rn,n,ret; ret=O;n:1; for(i=O;i<len;i++)n =w[i】; for(i=O;i<len;i++){ In n/w[iJ; 

・10・201 1.08・WWW.infosting.org d extended_euclid(w[i],m,x,y); 

ret=(ret+y★m★b【i】)%n; } retu1Tl(n+ret%n)%n; ) intmainO { int n,i; [1ong res; 

while(scanf(”%I64d”,&n)!=EOF) 

{ for(i=0;i<n;i++)scant-(”%I64d%I64d",&b[il,&w[i】); res=chinese remainder(n); 

prinff(”%I64d\n",res); 

} retum O; ) 4.总结 本文通过对Web数据库安全进行描述,由于其篇幅所限, 并没有针对某一具体的项目进行应用性的描述,有兴趣的读者 

可在此基础上进行完善。 

参考文献 …1姚研峰.简论数据库加密技术[J】.天津科技,2005,6 [2]2吴永英,邓路,等.一种基于USB Key的双因子身份认 

证与密钥交换协议[J】.计算机工程与科学,2007,29(5). [3]3朱静波.一种高安全和易共享的数据库加密方案[J】.计 

算机应用研究,2007,24(3). [4]吴荣.Web数据库系统的安全管理策略[J】.计算机安全, 

2007,03. [5】魏善沛,等.Web数据库技术实用教程【M】.北京:清华大 学出版社,2002. 

作者简介: 吴慧丽(1965一)。女。河南郑州,郑州职业技术学院高讲,研究方 

向:计算机数据库开发。 方加娟(1975一),女。河南新乡,郑州职业技术学院讲师,研究方 

向:

计算机软件开发。

相关主题