(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf_第1页
(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf_第2页
(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf_第3页
(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf_第4页
(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

(计算机软件与理论专业论文)安全数据库管理系统中密码技术的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华中科技大学硕士学位论文 :;= = ; ;目j = 目= = = = = = ;= ;目l z z = 目e = 自= ;_ ;z e 自= 目;= 摘要 | f 数据库技术是构建信息系统的核心技术,数据库安全技术已经成为信息安全的 重要研究领域。密码技术在保障信息安全方面起着重要的作用。将密码技术与安全 数据库管理系统的安全机制相结合,形成统一的安全机制能更有效地保护数据库的 安全。 针对多级安全系统中主体客体安全级高低形成层次结构的特点,提出用单向哈 希函数解决系统强制访问控制的新方法。该方法的基本思想是基于访问密钥的,系 统中的主体和客体都有自身的访问密钥,只有得到访问密钥才能进一步访问数据。 同类复杂函数族s i f f s ( s i h l i n gi n t r a c t a b l ef u n c t i o nf a m i l i e s ,s i f f s ) 具有 这样的特点,即对一组相互冲突的初始串要计算出另外的与之冲突的串是很难的。 利用s i f f s 设计出访问密钥生成的算法,并从理论上证明了算法的安全性。对s d m 3 系统的用户的身份鉴别机制加以改进,对用户身份进行认证并使之与访问控制机制 结合起来。 考虑到系统的效率,数据库数据加密时操作单位不可能是整个数据库文件,一 般是其中的一部分,因此加密实现机制要很灵活。对s d m 3 的内核进行改进,增加了 进行加密和解密运算的部件,使s d m 3 系统在服务器端支持数据加密,加密粒度町以 达到字段级,并能保证用户对系统正常访问。实现将安全数据库系统的身份鉴别、 访问控制等安全机制和数据加密的结合。 在多级安全数据库管理系统原型s d m 3 源代码上进行了改进,实现了系统的通 信加密、加密存储及系统的强制访问控制等功能。 【关键词】多级安全数嘉译;理系统;密码衰术:访问螽o ;访问富葫;数掘h 密 华中科技大学硕士学位论文 a b s t r a c t i nm o d e r ns o c i e t y ,i n f o r m a t i o ns e c u r i t yi sa ni m p o r t a n ti s s u ew i t hn a t i o n a ls e c u r i t y r e g a r d e d d a t a b a s ei s t h eb a s eo ft h ei n f o m a t i o ns y s t e m ,a n dt h es e c u r i t yo fd a t a b a s ei s b e c o m i n ga ni m p o r t a n tr e s e a r c hf i e l d e n c r y p t i o nc a nk e e pi n f o r m a t i o ns e c r e tw e l l b y c o m b i n i n ge n c r y p t i o na n dd b m ss e c u r i t ym e c h a n i s m ,i t c a ns a f e g u a r dt i l es y s t e mm o r e e m c i c n c y i nm u l i t y l e v e ls e c u r e ( m l s ) s y s t e m ,t i l es u b j e c ta n do b j e c tf o r mah i b e r a r c h yb a s e d o nt h e i rs e c u r i t yl e v e l s c o n s i d e r i n gt h i sp e c u l i a r i t y ,an e ws o l u t i o nh a sb e e ng i v e nt o a c c e s sc o n t r o li nm l sw i t h o n e - w a yh a s hf u n c t i o n 1 1 h es o l u t i o ni sb a s e do na c c e s s k e y e v e r ys u b j e c ta n do b j e c th a si t s a c c e s sk e yw h i c hi s g e n e r a t e db yo n e - w a yh a s h f u n c t i o n o n l yw h e nt h es u b j e c tg e t t h eo b j e c t sa c c e s s k e yc a n i ta c c e s st h ed a t a s i f f s ( s i b l i n gi n t r a c t a b l ef u n c t i o nf a m i l i e s ,s 1 f f s ) h a st h ep r o p e r t yt h a tg i v e nas e to f i n i t i a l s t r i n g sc o l l i d i n gw i t he a c ho t h e r ,i ti sc o m p u f a t i o n a l l yi n f e a s i b l et of i n da n o t h e r s t r i n gt h a tw o u l dc o l l i d ew i t ht h ei n i t i a ls t r i n g s aa r i t h m e t i ch a sb e e nd e s i g n e db a s e d o nt h es i f f sa n di t ss e c u r i t ya l s oh a sb e e n p r o v e d f h es o l u t i o nh a si m p r o v e dt h eu s e r i d e n t i f i c a t i o na n dc o m b i n e di tw i t ht h ea c c e s sc o n t r o lm e c h a n i s m d u et ot h ee f f i c i e n c yo ft h ed b m s ,w h e ne n c r y p t i n gt h e d a t a ,t h ed b m sc a n t o p e r a t eo nt h ew h o l ed a t af i l e ,u s u a l l yi st h ep a r to fi t s ot h es o l u t i o no fd a t ae n c r y p t i o n i nd b m ss h o u l db ef l e x i b l ee n o u g h w eh a v ei m p r o v e ds d m 3 s y s t e mt os u p p o r td a t a e n c r y p t i o n ,w h i c hc a no p e r a t eo nt h ef i e l do ft h et u p l e ,a n du s e r sc a na c c e s st h ed a t a b a s e a su s u a l l h e s y s t e mh a st h ee n c r y p t i o na n dd b m s s e c u r i t ym e c h a n i s mu n i t e da s i ) 1 1 1 2 m e c h a n i s m ,w h i c he n h a n c e dt h es e c u r i t y i m p r o v e d i nt h es o u r c e c o d e ,t h es d m 3n o w s u p p o r t d a t a e n c r y p t i o n , c o m m u n i c a t i o n e n c r y p t i o na n d a c c e s sc o n t r 0 1 k e yw o r d s l m u l t i l e v e l s e c u r i t y d a t a b a s e m a n a g e m e n ts y s t e m ;e n c r y p t i o n ; a c c e s sc o n t r o l ;a c c e s sk e y ;d a t a e n c r y p t i o n - _ - _ _ _ - - _ _ _ _ _ - _ - _ _ - - - - _ _ _ _ _ _ - _ _ _ _ - _ _ - _ _ _ _ _ _ _ _ _ _ - - _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ l _ _ _ _ _ _ _ _ - - _ - _ _ _ - 一一 i i 1 绪论 1 1 本课题研究的背景、目的及意义 以计算机和网络技术为代表的信息技术的广泛应用是现代社会信息化的标志。 信息技术给人们的生活和工作带来了极大的方便,但同时也带来许多新的问题,其 中数据的安全保密就是其中突出的一个。在信息化社会中,国家的许多重要的信息 都是存放在计算机系统中的,计算机信息系统的安全已经成为涉及国家主权安全的 重要问题。数据库作为构建信息系统的核心技术,其安全性在计算机信息系统中一 直处于非常重要的地位。概括而言,对数据库的威胁主要来自以下五个方面。1 : i 对数据库不正确的访问,引起数据库中数据的错误: 2 为了某种目的,故意破坏数据库: 3 末经授权非法访问数据库信息,窃取其中的数据: 4 未经授权非法修改数据库中的数据,使其数据失去真实性; 5 通过网络对数据库进行各种非法的存取。 为了对付这些威胁,多种安全技术被应用在数据库管理系统中“,包括访问控 制、数据完整性保护、审计、数据加密”等。同时,对多级安全数据库管理系统 ( m u l t i l e v e ls e c u r ed a t a b a s em a n a g e m e n ts y s t e m ,m l sd b m s ) ”。”的研究也开 始出现了。 多级安全数据库管理系统的理论研究始于二十世纪七十年代,它包括安全数据 库系统的体系结构、隐通道分析与处理、完整性机制、多实例处理方法、审计机制、 推理机制、安全事务管理机制、数据库密码技术等多方面的研究。 多级安全数据库管理系统通过给每一个主体和每一个客户分配个安全级,根 据两者之间的安全级别的关系来实现对数据库中数据的保护“。当前所流行的m l s d b m s 般采用的安全策略是8 e l l & l a p a d u l a ( b l p ) 模型。7 , 9 - 1 4 该模型的简单安全特 性和 特性“i ”1 有效地阻止了信息从低安全级向高安全级的直接流动,保护了数据 的安全。 隼中科技大学硕士学位论文 i;l;wj i _ t 4 口目l l - = 目目目j = 目口口l e _ 目目;l _ 目目_ = = = 随着以互联网技术为基础的电子商务的发展,数据库安全又面临着新的挑战。 越来越多的用户提出了保护其私有数据的要求,即用户可以要求他的数据部分或全 部保密,哪怕是数据库管理员( d a t a b a s ea d m i n i s t r a t o r ,d b a ) 一一即使他有权查看 用户的数据一一也无法随意获取有意义的用户数据。加密技术和数据库多级安全机 制相结合,为解决这种问题提供了新的方法。 1 2 国内外研究概况 1 2 1 数据库安全技术研究概况 关于数据库安全,国际上从七十年代就开始从事安全数据库管理系统的理论研 究。到了八十年代,为适应计算机安全技术飞速发展的需要,美国于1 9 8 3 年发布了 “可信计算机系统评估标准( t c s e c ) ”( 桔皮书) ,1 9 8 5 年又发布了其修订版。桔 皮书中对安全系统的评价按照四大类共七个等级划分不同的安全级别,即分为d 、 c 1 、c 2 、b l 、b 2 、b 3 、a 1 七个等级,如表l - l 所示。其中a 1 级为最高级别,d 为最 低安全级别,每一级别都必须包含低一级的功能。桔皮书的发布有力地促进了安全 计算机系统的研究,也促进了安全数据库管理系统的研究。 表 l lt c s e c t d i 的安全等级 级别定义 a l设计的形式化验证 b 3安全域 b 2结构化保护 b 1 标记安全保护 c 2 受控制的存取保护 c 1自主安全保护 d最小保护 进入9 0 年代,为适应数据库安全技术发展的状况,美国又于1 9 9 1 年发布了可 信计算机系统评估标准在数据库管理系统的解释( t d i ) “,极大地推进了安全 数据库管理系统的产品开发。国外的一些公司如:o r a c l e 、s y b a s e 和i n f o r m i x 公 华中科技大学硕士学位论文 ; i :;目= = = 自# ;= l = = j = 目自目g 目_ 目_ _ j j = ;= 司纷纷推出了商用b i 级安全d b m s ,并于九十年代通过了美国国家计算机安全中心 的可信数据库管理系统的b 1 级评估。 商用系统方面,s y s b a s e 公司开发了两种安全数据库产品:一种是运行在u n i x 上,它满足b l 级标准。另一种运行在裸机上,在硬件级实现了任务分离和内存保护, 把敏感数据分配到自己的地址空间,完全脱离了不可信的地址空间。它满足b 2 级标 准。两种数据库产品提供给用户的接口是一样的。o r a c l e 、i n f o r m i x 等大型数据库 公司也推出了自己的安全数据库系统。 在u sa i rf o r c e r o m ea i r d e v e l o p m e n t 的资助下,美国s r i i n t e r n a t i o n a l & g e m i n ic o m p u t e r s 和s e c u r ec o m p u t i n gt e c h n o l o gc o r p o r a t i o i l 分别开发了a l 级的原型数据库系统s e a v i e w ( s e c u r ed i s t u r b u t e dd a t av i e w s ) 和 l d v ( l o c kd a t av i e w s ) 1 。 s e a v i e w 提出了多级安全数据库管理系统的重要概念,如安全视图、多实例、 完整性等,对安全d b m s 的研究产生了巨大的影响。它采用类似于视图机制的方式, 一个多级关系在元素级被分解为若干个多级关系,并且每个元组被分解并存储于相 应的单级关系中,具有相同的安全级的数据存放在一起。s e a v i e w 的多级安全采用 了b e l 卜l a p a d u l a “i 1 ( b l p ) 模型,它的标记粒度达到元素级,即每一个元组的每 个字段有不同的安全级。它采用多实例的方法来保证数据完整性。这样,增加了数 据的共享度,同时能保证数据的安全。当然,系统的开销要大一些。 l d v 运行在l o g i c a lc o r p r o c e s s i n gk e r n e l ( l o c k ) 上,它利用了l o c k 系统提 供的目标类型( o b j e c tt y p i n g ) ,并利用基于知识库的技术来实现数据的分类。它与 s e a v i e w 一样,多级安全的标记粒度到达元素级。 另一个著名的原型系统是t r wa s d ( a d v a n c e ds e c u r ed b m s ) 系统“7 ”1 ,它是t r w 内部开发的一个原型系统。它的目标是研究开发一个a 1 级的d b m s 所需的技术。它 是采用a d a 语言开发的,运行于a s o s 系统上。它的多级安全采用了b e l l 一l a p a d u l a 模型,标记粒度达到元组级,采用多实例的方法来保证数据完整性。 在国内,华中科技大学对b 2 级安全d b m s 的安全策略、安全模型、多级关系数 据模型、自主与强制访问控制、安全数据库审计技术以及多级安全d b m s 的体系结构 进行了研究。s d m 3 是华工达梦数据库公司开发的具有自主版权的大型分布式多媒体 华中科技大学硕士学位论文 ;:= = = e ;= e = 目;= = 目= = = 目e | _ e j 目目= = = 目t j 日= = = = j 安全数据库管理系统。它的主要功能特性有:体系结构采用客户服务器模式,系统 提供了层次一关系- - 0 0 的混合数据模型,使系统熊自然方便的处理空间数据:支持 多服务器的协同工作,为用户提供透明的分布式数据处理能力;扩展的多媒体数据 类型使系统能一体化的处理多媒体数据。具有三权分立的安全机制,使安全性能具 备b 1 级“42 ”要求的功能。 1 2 。2 密码技术及其在数据库中的应用 密码学随着人类社会的发展而诞生,并在政治、军事、外交斗争中作为重要工 具被充分使用。现在,密码学作为一门非常重要的使用技术科学,在信息安全,计 算机安全等方面得到广泛的应用。1 9 4 8 年c l a u d ee l m w o o ds h a n n o n 首先确立了现 代信息论。“2 “,为密码学打下了坚实的数学基础,促进了密码技术的发展。在7 0 年 代初,民间的密码学研究处于一种混乱的状态,在这个领域基本没有什么论文发表。 1 9 7 6 年美国政府将d e s 作为联邦标准。,并授权在非密级的政府通信中使用。1 9 8 7 年,国际标准化组织( i s o ) 下属的国际销售金融标准组织在国际认证标准中使用了 d i e s ,并用它来作为密钥管理。d e s 算法是在i b m 公司1 9 7 0 初开发出来的一个叫 l u c i f e r 的算法基础上发展起来的。d e s 是一个分组加密算法,它以6 4 位为分组对 数据进行加密。6 4 位一组的明文从算法的一头输入,6 4 位的密文从另一端输出。 1 9 7 6 年d i f f i e 和h e l i m a n 首先公布了公开密钥密码学的概念,并随后发表了 开创性的文章密码学的新方向”。矧。在公开密钥算法中使用了两个不同的密钥: 一个是可以公开的,另一仓是保密的。从公开密钥很难推出私人密钥。公开密钥可 以用来加密消息,却不能解密,只有私人密钥才能解密。使用公开密钥可以实现数 字签名”,从而实现身份的鉴别“7 。比较著名的公开密钥算法有r s a 等,它能用 于加密也能用于数字签名。 将密码技术运用于数据库系统,近些年来也取得了很大的进展。一些学者对密 文数据库的构建,加密数据的处理,数据库加密密钥的管理进行了很多有益的尝试。 文献 2 9 中提出了一种子密钥的加密方法。这种方法是根据孙子定理1 ,对表中记 录的字段进行加解密。其算法思想是:加密面向记录,每条汜录是它的所有待加密 字段的函数。每个字段有单独的加解密密钥;这样,尽管每条记录是所有加密密钥 q - 中科技大学硕士学位论文 和字段值的函数,每个解密密钥只能解密一个单独的字段。加密和解密可用公式( 1 1 ) 和公式( 1 - 2 ) 来表示: c = e ( ( e 。,v ,) ,( e 2 ,v 2 。) ,( e 。,v ,) ) ( 1 一1 ) v ,= d ( d ,c 。) ( 卜2 ) 在( 卜1 ) 和( 1 - 2 ) 中各字符的含义为: c :记录i 的密文值; e 。:记录i 中字段j 的加密密钥: v 。:记录i 中字段j 的明文值; d :记录i 中字段j 的解密密钥: e 和d :分别是加密和解密算法。 该子密钥加密算法不同于传统的块加密算法,因为它在解密得到原明文块的特 定部分的时候,不需要对其它部分解密,甚至不必有对其它部分解密的能力( 即不 需要知道其它部分的解密密钥) 。这点对数据库来说相当重要。用子密钥加密是一 种很有吸引力的加密方法,但还有许多问题需要进一步研究,比如,子密钥的产生 就是一个比较复杂的问题。 在数据库中引入加密技术,有很多实际的问题要解决。例如,密钥的管理就是 一个非常重要的方面。对此,有学者提出了一些密钥产生的方法和管理手段。”一”1 。 在文献 3 2 ,3 6 中给出了几种密钥生成函数,文献 3 6 中还分析了这些函数的安全 性。这些生成函数是: a 1 k i j = e ( k 。,r )其中:k ,= e ( t k ,c ) : a 2 k i j = r ,o k 其中:k = e ( t k ,c ) ; a 3 k 。= e ( k ,c )其中:k = e ( t k ,r ) : a 4 k = k o c ,其中:k = e ( t k ,r 。) : a j k 。= e ( t k ,r 。o c ) : a 6 k = e ( k ,c )其中:k i = t kor 。: a 7 k l j = e ( k ,r 。)其中:k j = t k o c : a 8 k 。3 e ( k ,r ) 其中:k 。,= t k or o c ; 或k ,2 e ( k c 。) 其中:k ,。= t k or ,o c : 华中科技大学硕士学位论文 = j ;昌= 目冒摹阜墨葺奢置_ 昔昌_ 重皇鼍田茸昌审_ _ 奄昌_ 皇薯薯昌墨i 篁昌罩罩奄冒昌昌2 2 2 墨 a 9 k 。i - e ( k 。,c o n )其中:k ;,= 由( k ,r ,c 。) 。 这里h 是某个杂凑函数,c o n 是一固定常数,审表示异或运算,e 是块加密算 法,r ,c 是记录的行列标识,t k 是系统中表的密钥。 在这样的密钥管理方式是采用一种分层次的管理方式,即整个系统设置一个主 密钥m k ,它由系统随机产生,作用是对表密钥进行加密。系统中每个数据库表都有 一个表密钥t k ,用来生成字段密钥的加密密钥。对表密钥的保护方式是将表密钥用 m k 加密后,以密文的形式存放在数据字典中。在分布式数据库的网络通讯系统中, 每次通讯的初级密钥是动态产生的。会话一旦结束,本次通讯密钥也就失去作用, 可以被清除掉。而二级通讯密钥是经过主密钥加密后保存在各数据库站点上( 数据字 典中) 的。在进行通讯时,一个动态产生的初级密钥,用二级通讯密钥来加密,初级 密钥再将消息加密然后再从一个站点传送到另一个站点。 字段加密密钥是对字段进行加解密运算的工作密钥,它由t k 以及行列参数通 过密钥生成函数生成。主密钥是加密子系统的关键所在,它需要定期更换。更换时 系统随机生成一个新的主密钥。 文献 3 6 的分析指出,a l 、a 3 及a 6 a 9 它们的安全性是相当的。但是出于在 生成一个数据项密钥时,a l 和a 3 需要进行两次加密操作( 即执行加密算法e ) ,而 a 6 a 9 都只需要一次加密操作,因此看起来a 6 、a 9 的效率比a 1 和a 3 高。 文献 3 4 提出了一种新的管理密钥的方法,其主要思想是对密钥进行转换。首 先忽略数据库系统的其它一些特点得到一个简化的抽象模型。将数据库看成一个集 合d = d 。,d “,d 。) ,d t 就代表了安全性要求相同的一类数据。对应的有数据密钥集 k d = ( k d t ,k d 2 ,k d 。) ,并有一传统的加密解密算法( e n c ,d e c ) ,k d ,是d 的加密 密钥。密文数据库c - - - - - ( c 。jc = e n c ( k d 。,d 。) ,i = l ,2 ,n ) 。u = u l ,u 2 ,u m 代表 m 个用户,每个用户可以访问的数据内容是d 的一个子集d 。,d ,d ,i = l ,2 ,n 。 每个用户u ,都持有用户密钥k u ,用户密钥可以是一个密钥的集合k u 也可以是一个 单独的密钥k u 。 对系统中用户k ,( 有一个用户密钥k u ,) 。每个数据d 。对应一个数据m 1 ( 称为 “多向锁”) ,系统中有一个公共函数( 称为转换函数) f 。f 以m l 。为参数,将用户 密钥k u 。转换为数据密钥k d ,当且仅当用户u 能存取d ,如( 卜3 ) 式。 华中科技大学硕士学位论文 ( v f )( v ,)( d d f 手f ( k u 。m l 。) = k d ,) ( 卜3 ) 这种方案如能实现,对比存放所有数据密钥而言,只需存放较少的用户密钥, 当要存储d 。对应的m l ,增加了存储量。用户访问数据时,需提供k u ,系统从数据 库中取出( c 。,m l ,) ,再作一次变换才能得到kd j ,系统的效率受到影响。此外,在 实际的系统中用户和数据的安全级别可能会更多,这也增加了这种方法的处理难度。 针对文献 3 4 的密钥管理方法,文献 3 3 中提出了一种改进的密钥管理方法, 即所谓的密钥转换表法。它取消了多向锁m 1 ,每个用户u 有唯一的用户标识i ,访问 数据库时,用户u 。提供( k u :,i ) ,系统维护一个转换表:t = 1 ”i n ,0 n ,设( e ,d ) 为一对称加解密算法,t 中的元素是按这样的规则确定的: 1 若d d 则t i ,j = e ( k u ,k dj ) ,否则无定义( 其中l 耋i 要m ,l 主j 蔓n ) ; 2 t i ,0 = e ( k u 。c 。) ,其中c 。为任意常数。 用户读取数据的过程则变为:u ;提供( k u ;,i ) 及查询c l ,系统根据q 找到对应 的( j ,c ) ,然后查询表中的t i ,j ,再进行操作:d 卜d ( d ( k u ,t i ,j ,c 。) ) 。 这种方案中系统要维护一个空间为0 m ,n 的表t ,而且在变换密钥时也会影响系统 的效率。 在数据库中存放密文数据后,数据库中的数据特征可能会发生变化,对数据的 处理,查询等可能有影响,这也就是密文处理的问题。有学者对此进行了讨论。”, 提出了进行密文直接检索的设想。文献 3 5 提出了一种在非同太密文上建立特殊的 索引,利用分治的原则通过设计一种新的单条件索引文件结构及相关算法来实现数 据库检索操作。这种算法适合单条件查询,对多条件查询还需要作改进。 文献 3 7 中作者对加密数据库系统中的通用查询算法进行了探讨,利用集合论 原理,将查询条件进行分析转化得到一个不含加密字段的查询条件,并保证原查询 结果是新查询结果的子集,再对新查询结果的数据集进行密文脱密查询,最后得到 查询的结果。这种方式的密文查询有些时候效率不理想,而且所采用的统计模型也 比较粗糙,还需要建立更完备的模型。 同时,将密码技术应用于面向对象数据库,用密码技术来解决些传统的问题, 如利用父子对象之间的继承关系,用密码技术来实现面向对象数据库系统中子对象 对父对象的访问控制等。”。 7 华中科技大学硕士学位论文 i 2 3 现有的d b m s 对加密技术的支持 目前,国外一些主流的d b m s 厂商纷纷推出了支持数据加密的数据库管理系统 产品,其中著名的有i b m 的d b 2 和o r a c l e 公司的产品。这两家数据库服务提供商在 数据加密方面自己的特点。 i b m2 0 0 1 年6 月发布的d b 2u d b7 2 中加入对数据加密的支持,它是通过s q l 的固有函数来实现数据的加密和解密的。当用户把数据插入到数据库时,加密函数 使用用户提供的加密密钥对数据加密:当用户提取数据时,用户必须提供同样的密 钥供解密函数对数据进行解密。d b 2 可以支持对表中列数据的加密,加密字段的类 型可以是字符型也可以是非字符型。d b 2 的加密算法是r c 2 的块加密算法,加密密 钥长为1 2 8 位。 o r a c l e 在1 9 9 9 年发布的o r a c l e 8 i 就提供了加密解密接1 2 可以用来在数据库 服务器中对敏感数据进行加密运算。在o r a c l e8 i 的r 1 6 版本中支持数据的存储加 密:在p l s q l 中的一个包( p a c k a g e ) 一d b m s o b f u s c a t i o n t o o l k i t - - 来完成数据的 加解密,加密算法采用d e s 。在o r a c l e8 ir 1 7 版本中,加密算法可以支持2 d e s , 3 d e s 。并且增加了m d 5 算法来校验加密。o r a c l e8 i 9 i 在其组件o r a c l ea d v a n c e d s e c u r i t y 提供了丰富的i n t e r n e t 环境中加密解决机制。包括:公开密钥基础设施 ( p k i ) 、目录访问策略以及安全的j a v a 实现方式等。 o r a c l e 9 i 中增强了随机数产生器( r n g ) 的强度并提供采用d e s ( 6 4 位长的密钥) , 2 - k e y 和3 - k e y 的3 - d e s ( 钥长度分别是1 1 2 和1 6 8 位) 算法的加密工具,供用户来 对数据进行加密。 在通信加密方面,i b m 的d b 2 并没有直接提供数据库服务器和客户端之间的通 信加密,用户必须购买另外的产品来实现通信网络的加密。i b m 在网络中支持d e s 和r c 2 ,在z o s 大型机中有0 s 3 9 0 虚拟专用网络,t i v o l im a n a n g e m e n tf r a m e w o r k 也支持安全套接字层( s e c u r es o c k e tl a y e r ,s s l ) 和d e s 。o r a c l e 提供的组件0 r a c l e a d v a n c e d s e c u r i t y 能保护数据库之间的通信,它也支持s s l 和d e s 加密功能。只 要数据库在运行,o r a c l e 9 i 的安全机制就在发挥作用。为了加密通信网络,它提供 了s s l 和d e s 加密功能。 华中科技大学硕士学位论文 1 3 本文的主要工作 本课题来源于国家8 6 3 项目多级安全数据库管理系统技术研究。本项目的 总体目标就是以国产数据库管理系统s d m 3 为基础,设计一个以安全操作系统为平 台,具备国标( g b l 7 8 5 9 1 9 9 9计算机信息系统安全等级划分标准) 第四级所 规定的部分安全功能、满足国内敏感部门安全需求的多级安全数据库管理系统。主 要技术难点之一就是将密码技术与安全数据库机制相结合,组成统一的安全机制, 对敏感数据进行加密保护和加密传输,研究新的身份鉴别机制,访问控制手段以适 应高安全性系统的要求。 本文的工作是将密码技术同安全数据库管理系统s d m 3 的安全机制相结合,研 究用密码技术解决多级安全d b m s 中的访问控制、数据加密以及相关的密钥管理等问 题,实现一个加密多级安全数据库系统。主要研究内容包括: 1 如何将多级安全数据库管理系统和密码技术有机结合起来,使密码技术和数 据库安全机制互相补充,更有效的保护系统中数据的安全; 2 研究加密技术来解决访问控制的问题; 3 在安全数据库管理系统s d m 3 中,对现有的数据库系统进行改进,实现数据 存储加密和通信加密等功能。 华中科技大学硕士学位论文 ; ;= = ;= j = 目= = = = z = 自;自目目= ;。2 5 5 5 。2 2 2 。2 5 2 2s d b 3 加密系统总体结构模型 d b m s 自身的安全机制如信息流控制、访问控制、审计技术等能满足一般的数据 库应用,但对于一些重要部门或敏感领域的应用,仅靠这些措施是难以保障数据的 安全的。将加密技术应用于安全数据库管理系统,和安全管理机制相结合,组成统 一的安全机制,才能更加有效保护用户的敏感数据。 本章将讨论数据库安全中有关的安全模型和s d m 3 系统的安全机制,然后将讨 论加密数据库系统的设计目标和功能需求,并在此基础上给出s d m 3 加密数据库系统 的总体结构模型。 2 1 安全模型 计算机系统要达到一定的可信度,必须有一个由系统实施的清楚且定义良好的 安全策略。形式化的安全模型是开发高安全级的安全系统的前提,是实施安全策略 的基础。讨论安全模型的目的在于提供一个不依赖于软件实现的、高层次上的概念 模型。当前比较著名的安全模型有b l p 模型、b i b a 模型”、安全格模型”。1 ”等。 b l p 模型的目的是将遵守军事安全策略的计算机操作模型化,其最终目的是描 述计算机的多级操作规则,因此b l p 安全模型是处理多级数据的系统安全管理的基 础。该模型的目标是识别出对维护保密性至为重要的容许的通信。用该模型可以定 义那些同时处理不同敏感级数据的系统安全要求。例如,当系统同时处理绝密数据 和秘密数据时,必须要防止处理绝密数据的程序把数据泄露给处理秘密数据的程序, 同时也要防止秘密级用户访问绝密数据,在这种意义上讲b l p 模型是处理多级安全 的系统设计基础。 b l p 模型将系统中元素按其特性区分为主体( s u b j e c t ) 与客体( o b j e c t ) 。主 体是系统中的主动元素,能执行一系列的动作。客体是系统中包含信息的被动元素, 在操作系统环境下,客体可以是文件、程序等。 模型是基于系统元素密级的,用安全级别( 1 e v e l ) 来表示。每个安全级别由 安全密级( c l a s s i f i c a t i o n ) 和安全范围( c a t e g o r i e s ) 组成。 华中科技大学硕士学位论文 : :;l ;目= j = = = = = # = = = = = = 目j l e = 目_ _ 目= ;= 目口= 自= = 目= ;= 【定义2 l 】安全密级是一按密级高低的升序排列的线性有序的名称序列中的 元素。令l ( i i p ) 表示第i 个名称,且l 。l 。k ,则l = ( l ,l ! ,l n ) 表示一安全密级序列,其中l ,l :,l 。称为安全密级。安全密级也称敏感度, 简称密级。 【定义2 2 】安全范围设集合c = c ,c 。,c 。 中每一元素都表示一个类别, 每一个类别实际上是一名称,c ,c :,c 间彼此独立,无序。 【定义2 - 3 】安全级设s = s 。,s 。,s 是由s t ( i i n ) 组成的集合,s 是密级元素与安全范围组成的二元组s = ( l 。c 。) ,l 。e l ,c 。c c ,s 。是一个安全级, 而s 是一个安全级集合。 安全级别的集合形成一个满足偏序关系的格,此偏序关系称为支配关系 ( d o m i n a t e ) ,用“”来表示。由定义2 3 ,对于s 中任意两个元素( 即两个安 全级) s ( l ,c ) 和s :( l :,c 。) ,有以下比较规则: 1 ( l 。,c ) ( l z ,c 。) 当且仅当l l 2 且c 。包含于c :; 2 ( l ,c ) ( k ,c :) 当且仅当l 。l 且c 包含c 。; 3 ( l 。,c ;) = ( l “c :)当且仅当l i - l ;且c 。= c :。 b l p 模型系统中包括主体集合g 和客体集合0 。对于g 中的每个主体g 和0 中 的每个客体。都分配个安全级c ( g ) 和c ( o ) 。分配给主体的安全级反映了对主体 不将敏感信息泄漏给不持有相应安全级用户的罱信度。分配给客体的安全级反映了 客体信息的敏感度。 为了保证系统的安全,模型定义了一组必须满足的规则集合。只有满足这些规 则系统才是安全的。b l p 模型中以下的两条安全规则保证了信息的安全流向。 1 简单安全特性( s i m p l es e c u r i t yp r o p e r i t y ) :仅当c ( o ) c ( g ) 时,主体g 对 客体。才有“读”访问权。这一特性可理解为:接受信息的主体的安全级别必须至 少与该信息的安全级别一样高。 2 一特性( * - p r o p e r i t y ) :仅当c ( g ) c ( o ) 时,主体g 对客体0 才有写,访问 权限。 在军事模型中, 特性的一个解释为:得到某个级别信息的人只能把信息向级 别不低于该信息级别的人传递。这一特性用于防止向下写”( w r i t e d o w n ) ,即防 华中科技大学硕士学位论文 止一个有权访问高级数据的主体通过“写”将该数据转移到低级客体。 这两个规则被采取强制访问控制策略的安全模型广泛应用。满足这两个规则即 控制了系统中信息的流动,保证没有所需的安全级别的主体不能存取他不应存取的 信息。 b l p 模型的目的是通过防止非授权的信息扩散保证系统的安全性。但它不能防 止非授权地修改系统中的信息,b i b a 等人在1 9 7 7 年提出了b i b a 模型。该模型是b l p 模型的对立面,它考虑到信息的完整性,构造了一个防止不适当修改数据的模型。 在b i b a 模型中,模仿b l p 模型的安全级而定义了“完整性级”,系统中每个主体和 客体都被分配一个完整级别,分别记作i ( g ) 和i ( o ) 。主体的完整性级别反应了对于 主体插入、删除、修改信息的置信度;客体的完整性级别反映了对存储在客体中信 息的置信度和可能的由非授权修改造成的对存储在客体中信息的潜在的损害。主体 和客体按完整性分类方案排序。 b i b a 模型有两条主要的完整性规则,分别是简单完整性特性规则和完整性十一 特性规则。 1 简单完整性特性:一个主体能读一个客体,当且仅当客体的完整性级别支配 主体的完整性级别。 2 完整性 一特性:一个主体能写一个客体,当且仅当主体的完整性级别支配客 体的完整性级别。 完整性规则防止信息从低完整级别客体向高或不可比完整性级别客体传递。 2 2s d m 3 安全模型 2 2 1 s d m 3 三权分立的安全机制 目前一些常用的d b m s 系统中采用的多是一元化的管理方式,即系统有d b a 束 负责全部的管理工作,包括安全管理等。这使得d b a 的权限过于集中,存在安全隐 患。在s d m 3 中采用的是三权分立的安全管理机制,即系统把管理员分为d b a 、数据 库安全员s s o ,数据库审计员a u d i t o r 三类。d b a 负责自主访问控制的管理,s s o 负 责强制访问控制的管理,a u d i t o r 负责系统的审计。这种管理机制使得系统的权限 华中科技大学硕士学位论文 管理各行其责,相互制约,保证了系统的安全性。 2 2 2s d m 3 自主访问控制 s d m 3 的自主访问控制是通过授权和检查机制实现的。通过权限的授予和回收保 护系统的客体不会被未授权的用户存取,达到访问控制的目的。s d m 3 中权限的自主 访问控制权限管理包括:系统级权限授予和回收、表级权限授予和回收、行级权限 授予和回收和列级权限授予等。在s d m 3 的自主访问控制机制中当主体拥有数据库对 象上的某些操作权限及相应的转授权时,该主体可以自由地把这些操作权限部分或 全都转授给其他主体,从而使得其他主体获得在这些数据库对象上的相关权限。 s d m 3 系统根据用户的权限执行自主存取控制。用户权限是指用户在数据对象上 被允许执行的操作。规定用户权限要考虑三个因素:用户、数据对象和操作,即什 么用户在哪些数据对象上可执行什么操作。所有的用户权限都要记录在系统表( 数据 字典) 中,对用户存取权限的定义称为授权,当用户提出操作请求时,s d m 3 根据授 权情况进行检查,以决定是执行操作还是拒绝执行,从而保证用户能够存取他有权 存取的数据,不能存取他无权存取的数据。 2 2 3 s d m 3 强制访问控制功能 强制访问控制是区别系统安全级为c 2 级和b 1 级的基本条件,是通过主体和客 体安全级匹配规则来确定主体是否能访问该客体的。 在s d m 3 系统中包括主体集合g 和客体集合0 。对g 中的每一个主体g 和0 中的 每一个客体o ,分配有安全级c ( g ) 和c ( o ) ,安全级由分层的密级和非分层范围组 成的。分层密级是线性有序的,分层范围是类别的集合,是无序的。设g 。= s ( l 。,c ) 表示一主体的安全级,o ,= s ,( l j ,c ) 表示一客体的安全级,其中l 为密级,c 为分层 范围。 主体和客体之间访问控制遵循下面的两条规则规则。 1 g s 0 s ,当且仅当l l ,c 2 c ,。即主体安全级中的密级大于或等于客体安 全级的密级,并且主体安全级中的范围包含客体安全级中的所有范围时,此时主体g 可以读取客体o 的信息。 华中科技大学项士学位论文 目e = j e ;= # 自z l 口;= = 自自口目;目= 目= = = ;z = = ;= 2 g 。o 。,当且仅当l i l j ,c 互c j 。即主体安全级中的密级小于或等于客体安 全级中的密级,并且主体安全级中的所有范围包含于客体安全级的范围。此时主体g 可以写客体0 。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论