




已阅读5页,还剩60页未读, 继续免费阅读
(计算机软件与理论专业论文)数据库密文索引及密钥管理技术.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 数据库密文索引及密钥管理技术是数据库加密技术研究的难点和重 点。目前,对数据库密文索引及密钥管理的研究还处于起步阶段,各方面 的技术还不成熟,存在一定的缺陷。本文对数据库密文索引和密钥管理技 术进行了综合分析,在此基础上提出了新的密文索引构建方法和密钥生成 模式,具体内容如下。 首先,对桶划分建立密文索引技术进行了研究。通过对现有密文操作 技术的综合分析和比较,并结合秘密同态技术,提出了一种既具有较高的 安全强度和查询效率,又能对密文数据直接进行比较操作的复合密文索引 技术。 其次,对密文索引信息泄漏的判定和消除技术进行了研究。针对因密 文索引列而造成的信息泄漏程度的判定问题,本文创造性的将视图安全的 判定条件k 一匿名引入到了对密文索引列安全性的判定中。并提出了通过构 造哈希函数和对多敏感属性统一进行桶划分并建立密文索引两种解决方 案,从而有效消除了由于构建密文索引而造成的信息泄漏问题。 再次,对密文索引的安全性和查询效率的平衡技术进行了研究。提出 一种最佳桶划分策略,在桶划分子区间数目根据安全要求被限定的情况下, 利用该桶划分算法建立密文索引可获得最优的查询命中率,减小查询代价, 从而平衡了密文索引的安全性和查询效率的问题。 最后,对密钥管理技术进行研究。针对当采用数据项级加密粒度时密 钥数量多、安全性差和难于管理等问题,提出了一种安全高效的密钥动态 生成模式,并对该密钥生成模式的安全性和效率给出了理论证明。 关键词密文索引;密钥管理;桶划分;信息泄漏;查询命中率 燕山大学工学硕士学位论文 a b s t r a c t c r y p t o g r a p hi n d e xi nd a t a b a s ea n ds e c r e tk e ym a n a g e m e n ta l ee m p h a s i s a n dd i f f i c u l tp o i n t so nt h er e s e a r c ho fd a t a b a s ee n c r y p t i o n a tp r e s e n t ,i ti st h e b e g i n n i n go fs t u d y i n g o nc r y p t o g r a p hi n d e xi nd a t a b a s ea n ds e c r e tk e y m a n a g e m e n t ,w h i c ha r ej u v e n i l ei ne v e r yr e s p e c ta n dh a v es o m el i m i t a t i o n t h i s p a p e ra n a l y z e ds y n t h e t i c a l l yt h ea b o v e - m e n t i o n e dt e c h n o l o g i e s ,o nt h eb a s i so f w h i c han e ww a yo fc o n s t r u c t i n gc r y p t o g r a p hi n d e xa n d c r e a t i n gs e c r e tk e yw a s p r o p o s e d t h ed e t a i l sw a ss t a t e da sf o l l o w s f i r s t l y , t h et e c h n o l o g yo fc o n s t r u c t i n gc r y p t o g r a p hi n d e xu s i n gb u c k e t p a r t i t i o nw a ss t u d i e d b ya n a l y z i n ga n dc o m p a r i n gs y n t h e t i c a l l yt h ec r y p t o g r a p h o p e r a t i o ni nb e i n g ,c o m b i n i n gw i t ht h et e c h n o l o g yo fs e c r e th o m e o s t a s i s ,an e w w a yn a m e dm u l t i p l ec r y p t o g r a p hi n d e xw a sp r o p o s e d ,w h i c hc a nt a k eo n c o m p a r i s o n so fc r y p t o g r a p hd a t ad i r e c t l ya n dp r o v i d e dw i t hb e t t e rs e c u r i t y i n t e n s i t ya n dq u e r ye f f i c i e n c y s e c o n d l y , t h et e c h n o l o g yo fd e t e r m i n a t i o na n dc l e a r i n gu pt ot h el e a ko f c r y p t o g r a p hi n d e x i n f o r m a t m nw e r es t u d i e d t h i s p a p e ri n t r o d u c e d t h e d e t e r m i n a t i o nt e r m ,k - c r y p t o n y m ,w h i c hi su s e di nv i e ws e c u r i t y , t dt h e d e t e r m i n a t i o no f s e c u r i t yo f c r y p t o g r a p hi n d e xs e q u e n c e a n dt w op r o j e c t sw e r e p r o p o s e dt 0c l e a ru pe f f e c t i v e l yt h ei n f o r m a t i o nl e a kr e s u l t e df r o mc o n s t r u c t i n g c r y p t o g r a p hi n d e xb yc o n s t r u c t i n gh a s hf u n c t i o n , c a r r y i n go u tb u c k e tp a r t i t i o n t om u l t i p l e s e n s i t i v ep r o p e r t ya n dc r e a t i n gc r y p t o g r a p hi n d e x t h i r d l y , t h et e c h n o l o g yo fb a l a n c eb e t w e e nt h es e c u r i t ya n dt h eq u e r y e f f i c i e n c yo fc r y p t o g r a p hi n d e xw a ss t u d i e d t h i sp a p e rp r o p o s e da no p t i m a l b l l c k e tp a r t i t i o ns t r a t e g y , w h i c hc a l lg e ta no p t i m a lq u e r yt a r g e t - s h o o ta n dl e s s q u e r yc o s tb yu s i n gb u c k e tp a r t i t i o nt oc r e a t ec r y p t o g r a p hi n d e x s oa st og e ta b a l a n c eb e t w e e nt h es e c u r i t ya n dt h eq u e r ye 伍c i c i l c yo fc r y p t o g r a p hi n d e xi n t h ec a s eo ft h a tt h ea m o u n to fs u br e g i o nu s i n gb u c k e tp a r t i t i o ni sl i m i t e d , b e c a u s et h es e c u r i t yi sr e q u e s t e d l a s t l y , t h et e c h n o l o g yo fs e c r e tk e yi ss t u d i e d o w i n gt 0r e d u n d a n ts e c r e t k e y , w o r s es e c u r i t ya n dd i f f i c u l t yi nm a n a g e m e n ta tt h em o m e n tt h a tt h e e n c r y p t i o ng r a n u l a r i t ya tar a n ko fd a m i t e mi su s e d am o d eo fc r e a t i n gs e c r e t k e yd y n a m i c a l l yw a sp r o p o s e d a n dat h e o r yt e s tw a sg i v e nt o v a l i d a t et h e s e c u r i t ya n dv a l i d i t yo f t h i sm o d e k e y w o r d sc r y p t o g r a p hi n d e x ;s e c r e tk e ym a n a g e m e n t ;b u c k e tp a r t i t i o n ; i n f o r m a t i o nl e a k ;q u e r yt a r g e t - s h o o t i i i 燕山大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文数据库密文索引及密钥 管理技术,是本人在导师指导下,在燕山大学攻读硕士学位期间独立进行 研究工作所取得的成果。据本人所知,论文中除己注明部分外不包含他人 已发表或撰写过的研究成果。对本文的研究工作做出重要贡献的个人和集 体,均己在文中以明确方式注明。本声明的法律结果将完全由本人承担。 作者签字王迫臼期:。 年3 月巧日 燕山大学硕士学位论文使用授权书 数据库密文索引及密钥管理技术系本人在燕山大学攻读硕士学位 期间在导师指导下完成的硕士学位论文。本论文的研究成果归燕山大学所 有,本人如需发表将署名燕山大学为第一完成单位及相关人员。本人完全 了解燕山大学关于保存、使用学位论文的规定,同意学校保留并向有关部 门送交论文的复印件和电子版本,允许论文被查阅和借阅。本人授权燕山 大学,可以采用影印、缩印或其他复制手段保存论文,可以公布论文的全 部或部分内容。 保密口,在 本学位论文属于 不保密臼。 ( 请在以上相应方框内打“” 年解密后适用本授权书。 ) 作者签名:兰盘 日期: 0 7 年5 月猸 导师签名:彦、1 1 日期:0 7 年猬习臼 第1 章绪论 1 1 研究背景 第1 章绪论 随着l n t e m e t 的普及和计算机技术的飞速发展,各行各业的信息化程度 得到了显著的提高。信息系统已经成为企业、金融机构、政府及国防等部 门现代化的重要标志【”。如何保证现代信息系统的安全是计算机领域面临的 一大挑战。数据库系统作为信息的聚集体是信息系统的核心,其安全性对 整个信息系统来说是至关重要的。 数据库系统信息的安全性依赖于两个层次:一是系统本身提供的安全 性;二是应用程序设置的控制管理。目前一些大型数据库管理系统已经提 供了一些安全手段,例如用户分类、数据分类、审计功能等,但这只能满 足一般的安全要求,操作系统( o s ) 和数据库管理系统( d b m s ) 对数据库文件 本身仍然缺乏有效的保护措施。对于一些重要或敏感数据,用户迫切希望 以密文的形式存储和传输,并且可以对数据库信息进行操作而又不泄露其 中的内容。这就需要研究两个重要技术,即数据库信息加密技术和直接对 数据库密文进行操作的技术。 数据库加密技术是保障数据库系统安全的基石。在过去的几十年中, 人们一直为寻求适用于数据库系统的高效数据加密方法而努力,取得了一 些研究成果,但到目前为止还没有解决加密后数据库系统响应时间长和性 能低的问题。因此,现代信息系统的数据库中的数据很少被加密,一旦网 络系统层和操作系统层的安全机制被攻破,攻击者就会得到明文数据库文 件,这将造成难以估量的损失。 1 2 研究现状 最早出现的方法是基于文件的数据库加密方法。该方法的基本思想是 燕山大学工学硕士学位论文 把数据库文件作为整体,用加密密钥和加密算法对整个数据库进行加密。 为了保证能对密文数据库文件进行数学运算和常规的数据库操作,r i v e s t 等人于1 9 7 8 年提出了秘密同态技术 2 1 。1 9 9 6 年d o m i n g of e r r e t 等人在文献 3 】中对r i v e s t 等人的研究成果作了进一步改进,给出了关于加法和乘法的 同态运算的定义,并证明了算法是安全的。2 0 0 0 年d o m i n g of e r r e r 等人在 文献【4 】中又把同态运算推广到了除法。由于无法进行比较操作,秘密同态 的方法在应用方面受到了限制。目前,数据库加密最常用的方法是基于记 录的加密方法。该方法的基本思想是在各自密钥的作用下,将每一条记录 加密成密文并存放于数据库文件中,其解密的最小粒度一般是记录。文献 【5 7 的作者分别提出了子密钥加密技术,这些技术可使解密粒度细化到单 个数据项,克服了单纯记录解密所存的问题。子密钥加密技术的缺点是实 际应用时必须对每个记录生成加密密钥,并对每个数据项生成解密密钥, 对于大型的数据库文件,密钥管理是非常困难的。为了提高灵活性和适用 性,人们把加密粒度也细化到单个数据项,d e n n i n g 于1 9 8 3 年在文献 8 】中 提出了一种基于字段的数据库加密方法,何敬民等于1 9 8 9 年对d e n n i n g 的 方法进行了完善,提出了四种更安全的字段密钥产生方法【9 】。基于字段的数 据库加密方法的缺点是加密效率低。为了提高加密效率,王晓峰等人于2 0 0 2 年在文献【1o 】中提出了一种基于秘密同态理论的字段加密方法,该方法可以 保证在字段的密文上直接进行数学运算和常规的数据库操作,但无法保证 在字段的密文上进行比较操作,因此,只适用于一些特殊场合。对于数值 型字段,人们提出了一些可以在字段密文上进行比较操作的加密方法【l “u 】。 2 0 0 4 年,s i g m o d ( s p e c i a li n t e r e s tg r o u po nm a n a g e m e n t o f d a t a ) 会议 上,r a k e s ha g r a w a l 提出的保持顺序的加密方法o p e s t l 4 ( o r d e rp r e s e r v i n g e n e r y p t i o nf o rn u m e r i cd a t a ) 有效地解决了系统性能这一瓶颈问题,加密后 不影响系统的原有功能,它能直接操作加密数据,并且明显提高了数据加、 解密速度( 解密一个值只需3 微秒) 。但这种能实施密文查询的同态加密算法 存在严重缺点,即密码强度不高,其原因是由于密文的保序性,使敌手可 通过部分明、密文的对照获得可用于破译的关键信息,尤其是当明文空间 不大时,同态加密更显得更为脆弱。目前还没有人提出一种在明文空间较 2 第1 章绪论 小的情况下,既具有较高的加密强度,又能对密文数据直接进行比较操作 的加密方法。 除了上述方法外,人们还从数据库系统角度来研究数据值的加密问题。 文献 1 5 】的作者提出了一种新的存储模型和密钥管理体系结构。文献 1 6 】的 作者从适用角度提出了安全的定义,给出了满足其定义的加密方法和查询 处理技术。文献【1 7 】的作者研究了加密数据库的索引问题,给出了安全数据 库索引方案。文献【18 】的作者为了平衡效率和安全问题改进了保持前缀加密 方案,用以生成数据库索引来提高范围查询的效率。文献b 9 的作者研究了 d a s ( d a t a b a s e 一硒a - s e r v i c e ) 环境下对加密数据库元数据的访问控制方法。 1 3 研究内容 根据上面所阐述的研究背景和研究现状,本课题的研究内容是数据库 密文索引技术、直接对数据库密文进行操作技术和数据库加密密钥管理技 术。主要的研究工作包括以下凡个方面。 第一,以数据库加密技术的发展历程为线索,对迄今现有的加密方法、 密钥生成算法和密文操作方法进行分析比较,归纳总结出它们各自的优点 及所存在的问题。 第二,通过对现有密文操作技术的综合分析和比较,并结合秘密同态 技术,提出一种既具有较高的安全强度和查询效率,又髓对密文数据直接 进行比较操作的复合密文索引技术。 第三,提出一种对于密文索引安全性判定的方法,并寻找出由于密文 索引而造成信息泄漏问题的解决方案。 第四,在对数据库加密方法和操作方法进行研究的同时,还应与实际 相结合,进一步探讨平衡数据库效率和安全性的问题。一方面,如果单从 数据库的安全性出发,只考虑提高数据库加密强度,而忽略了加密后对于 系统的影响,则必然会导致系统效率的下降。另一方面,如果仅仅碍于对 于系统效率的考虑,而放弃对于敏感数据高强度的保护措施,那么数据库 的安全性也将面临着极大的威胁。这也是一个对于数据库信息安全的发展 燕山大学工学硕士学位论文 有着深远意义的课题。 最后,对密钥管理技术进行研究,对现有的密钥生成模式进行分析比 较,提出一种安全高效的密钥动态生成模式。 1 4 研究意义 在现代社会中,信息是人类最宝贵的资源,以数据库为核心的信息系 统在人们的社会生活和经验生活中起着越来越重要的作用,信息安全也日 益成为关系企业成败、战争胜负乃至国家根本利益的重要问题,越来越引 起人们的广泛重视。数据库安全是指保护数据库中数据不被非法访问和非 法更新,并防止数据的泄露和丢失。 在绝大多数信息系统中,核心数据和资料是以数据库的方式存储,没 有加密的数据库就如同没有上锁的文件柜,对别有用心的人而言,剽窃、 篡改易如反掌。数据库加密系统是为增强普通关系数据库管理系统的安全 性而设计开发的。旨在提供一个安全适用的数据库加密平台,对通信和数 据库存储的内容实旌有效保护。它通过通信加密、数据库存储加密等安全 方法实现了数据库数据存储和通信的保密和完整性要求,使得数据库以密 文方式存储并在密态方式下工作,确保了数据安全。 数据库管理系统d b m s 的运行平台一般是w i n d o w sn t 2 0 0 0 和u n i x , 这些操作系统的安全级另4 通常为c 2 级。它们具有用户注册、识别用户、任 意存取控锚j ( d a c ) 、视图、审计等安全功能。虽然d b m s ( 例如o r a c l e 、s y b a s e 等) 在操作系统的基础上增加了不少安全措施,例如基于权限的访问控制等, 但传统的物理安全、d b m s 和操作系统并不能全部满足数据库安全的需求, 特别是无法保证一些重要部门的数据和敏感数据的安全。造成不安全的原 因主要是因为原始数据以可读形式存放在数据库中。旦某一用户非法获 取用户名和口令,或者绕过操作系统( 或d b m s ) 的控制入侵到系统中,便可 以窃取和伪造数据库中的信息,这种隐患被称为通向d b m s 的“隐秘通 道”【2 0 】,它所带来的危害是一般数据库用户所难以觉察的。同样,存储数 据介质( 如磁盘、光盘、磁带等) 的丢失也会导致数据库中的数据泄漏。另外, 4 第l 苹绪论 数据库中数据的真实性没有办法核实。 为了保证数据库中数据的安全,堵塞这一“隐秘通道”,则必须对数 据库中的数据进行加密处理,那么上述问题就可以得到解决。即使某一用 户非法入侵到系统中或者盗得数据存储介质,但没有相应的解密密钥,他 仍然不能得到所需数据。所以对数据库数据进行加密处理对于保证数据的 保密性和真实性具有非常重要的意义。 目前,虽然数据加密技术的研究已经日趋成熟,但对数据库中数据进 行加密的技术与传统的通信或网络加密技术相比,有其特殊性。首先,数 据库中数据保存的时限相对可以认为是无穷长,加密几乎不能采取一次一 密的方式,所以对加密强度的要求就更加严格和苛刻。其次,数据库中数 据频率最高的使用方式是随机访问,因此对加密或解密的时间要求是比较 高的,否则数据加密、解密过程可能导致整个数据库系统的性能大幅度下 降。再次,在数据库内,元组的长度一般较短,数据的存储时间比较长, 相应密钥的保存时间也随着数据生命周期而定。若所有的数据使用同一密 钥,则保密性差;若不同的元组采用不同的密钥,则密钥太多,造成管理 复杂。因此,不能简单采用一般通用的加密技术,而必须针对数据库的特 点,研究相应加密算法和密钥管理方法。 1 5 本文组织结构 本论文总体上分为五章,从第2 章开始具体布局如下。 第2 章是基础知识概述。该章介绍了数据库加密技术的基础理论,并 以数据库加密技术的发展历程为线索,对迄今现有的加密方法和密钥生成 算法进行分析比较,评述了它们各自的优点及所存在的问题。 第3 章是对基于多重桶划分策略的复合密文索引技术的研究。利用桶 划分技术建立密文索引时,划分桶的数目越少,服务器端秘密查询的命中 率越低;划分桶的数目越多,服务器端秘密查询的命中率就越高,但信息 泄漏程度也随之变大,在被建立索引的属性值明文空间相对较小的情况下, 数据安全性会大大的降低。本章提出了一种通过多重桶划分建立密文索引 燕山大学工学硕士学位论文 的技术,该方法解决了在过去对于密文直接操作技术的研究中所遇到的瓶 颈问题,在提高服务器端查询命中率的同时,进一步增强了密文索引的安 全性。 第4 章是对密文索引安全性判定技术、密文索引信息泄漏的消除技术 及密文索引安全性和查询效率的平衡技术的研究。本章将视图安全的判定 条件k 。匿名引入到了对密文索引列安全性的判定中,并针对由于构建密文 索引而造成的信息泄漏问题,提出了通过构造哈希函数和对多敏感属性统 一进行桶划分并建立密文索引两种解决方案。最后提出了一种最佳桶划分 策略,在桶划分子区间数目根据安全要求被限定的情况下,利用该桶划分 算法建立密文索引可获得晟优的查询命中率,从而平衡了密文索引的安全 性和查询效率的问题。 第5 章是对密钥管理技术的研究。针对当采用数据项级加密粒度时密 钥数量多、安全性差和难于管理等问题,提出了一种安全高效的密钥动态 生成模式,并对该密钥生成模式的安全性和效率给出了理论证明。 最后是本文的结论,并对下一步的研究工作进行了展望。 6 第2 章数据库中的数据加密技术 第2 章数据库中的数据加密技术 2 1 引言 第一章主要阐述了本课题的研究背景、研究现状和研究意义。在本章 中,我们将详细介绍与本课题研究相关的基础知识。 2 2 数据库中的数据加密机制 在数据库内,元组的长度一般较短,数据的存储时间比较长,相应密 钥的保存时间也随着数据生命周期而定。若所有的数据使用同一密钥,则 保密性差;若不同的元组采用不同的密钥,则密钥太多,造成管理复杂。 因此,不能简单采用一般通用的数据加密技术,雨必须针对数据库的特点, 研究相应加密算法和密钥管理方法。 2 2 1 数据加密的一般方法 数据加密【2 l 】就是将数据和信息( 称为明文) 经过一定的变换( 一般为变序 和代替) 转换为不可辨识的数据形式( 称为密文) 的过程,使不应了解该数据 和信息的人不能够知道和识别。欲知密文的内容,使用加密的逆过程再将 其转变为明文,即将密文数据转变成可见的明文数据,即为解密过程。加 密和解密过程构成密码系统,明文与密文统称报文。任何密码系统无论形 式多么复杂,至少包括明文集合、密文集合、密钥集合和算法,其中密钥 和算法构成了密码系统的基本单元。算法是一些公式、法则或程序,规定 明文与密文之间的变换方法,密钥可以看作算法中的参数。数据库密码系 统要求将明文数据加密成密文数据后存储,查询时将密文数据取出解密得 到明文信息。 基于密钥的算法t 2 2 0 3 】通常有两类:对称加密算法和公开密钥算法。对 7 燕山大学工学硕士学位论文 称加密算法( 又称传统密码算法) ,即加密密钥能够从解密密钥中推算出来, 反过来也成立。在大多数对称加密算法中,j n 解密密钥是相同的。这些算 法也叫秘密密钥算法或单密钥算法,它要求发送者和接受者在安全通信之 前商定一个密钥。对称加密算法的安全性依赖于密钥,泄露密钥就意味着 任何入都能对消息进行加解密。只要通信需要保密,密钥就必须保密。 对称加密算法的加密和解密表示为:e k ( m ) = c ,d k ( c ) = m 。其中k 表示 密钥,e ( ) 表示加密,d ( ) 表示解密。 公开密钥算法( 又称非对称加密算法) ,即用作加密的密钥不同于解密的 密钥,而且解密密钥不能从加密密钥计算出来( 至少在合理假定的时间内) 。 之所以叫做公开密钥算法,是因为加密密钥能够公开,即陌生者能用加密 密钥加密信息,但只有用相应的解密密钥才能解密信息。在这种系统中加 密密钥叫做公开密钥( p u b l i ck e y ,简称公钥) ,解密密钥叫私人密钥( p r i v a t e k e y ,简称私钥) 。 用公开密钥k j j i 密表示为:e k ( m ) = c 。 公开密钥k 和私人密钥k 不同,前者用来加密数据,面后者被用来解 密。用相应的私人密钥解密可表示为:d k c ) = m 。 2 2 2 数据库中数据加密的原理 较之一般数据的加密技术,数据库密码系统【2 4 】有其自身的要求和特点。 由于受数据库组织和数据库应用环境的限制,数据库的加密与一般的网络 加密和通信加密有着很大的区别。网络通信发送和接收的都是同一连续的 比特流,传输的信息无论长短,密钥的匹配都是连续、顺序对应的,它不 受密钥长度的限制。在数据库中,记录的长度一般较短,数据存储的时间 长( 通常几年到几十年) ,相应密钥的保存时问也随数据的生命周期而定。若 在数据库内使用同一密钥,则保密性差:若不同记录使用不同的密钥,则 密钥又太多,管理相当复杂。一般数据的加密以报文为单位,加解密都是 从头到尾顺序进行。数据库数据的使用方法决定了它不可能以整个数据库 文件为单位进行加密。当符合检索条件的记录被检索出来后,就必须对记 录迅速解密。然而该记录是数据库文件中随机的一段,为此只应解密这随 s 第2 章数据库中的数据加密技术 机的一段f 即该记录) ,若从头至尾进行整个文件的解密,然后去查找相应的 记录,显然是不合适的。所以必须解决随机地从数据库文件中某一段数据 开始解密的问题。因此,不能简单地采用一般通用的加密技术,而必须针 对数据库的特点,研究相应的加密方法和密钥管理方法。 目前数据库加密的技术有随机数求和 2 5 1 、多项式函数【2 6 1 、存储桶 2 7 1 、 秘密同态【2 羽、加密智能卡嘲等。它们从不同的角度解决了数据库加密中的 各个关键问题,可以应用于不同的环境。 数据库加,解密的密钥应是相同的、公开的,加密算法也应是绝对保密 的。数据库公开密钥加密机制应是一个二元函数:密文= f ( 密钥,明文) 。当 加密算法f 确定之后,只要给出密钥和待加密的明文,即可得到相应的密文。 解密过程即是加密过程的逆过程:明文- f 4 ( 密钥,密文) 。 加密算法是数据加密的核心,一个好的数据库加密算法产生的密文应 该频率平衡,随机无重码规律,周期长且不产生重复现象。窃密者很难通 过对密文频率、重码等特征的分析获得成功。同时,算法必须适应数据库 系统特性,加懈密响应迅速。m i d 背包算法很适合数据库的加密。其基本 思想是:有一个函数f ,使x = f ( k ,y ) ,在这里k 相当于公开密钥向量,y 相当于明文。在算法f 不公开的情况下,若已知k 和x ,要还原出y 来,穷尽 次数为2 “次。如果向量的分量n 较大,用穷尽的方法还原将是十分困难的。 2 2 3 数据加密对数据库的影响 2 2 3 1 数据库加密范围受到限制数据加密通过对明文进行复杂的加密 操作,以达到无法发现明文和密文之间、密文和密钥之间的内在关系,也 就是说经过加密的数据经得起来自o s 和d b m s 的攻击。另一方面,d b m s 要完成对数据库文件的管理和使用,必须具有能够识别部分数据的条件。 据此,只能对数据库中数据进行部分加密 3 0 l 。 ( 1 ) 索引字段不能加密为了达到迅速查询的目的,数据库文件需要建 立一些索引。不论是字典式的单词索引、b 树索引或h a s h 函数索引等,它 们的建立和应用必须是明文状态,否则将失去索引的作用。有的d b m s 中可 以建立簇聚索引,这类索引也需要在明文状态下建立和维护使用。 9 燕山大学工学硕士学位论文 ( 2 ) 关系运算的比较字段不能加密d b m s 要组织和完成关系运算,参 加并、差、积、商、投影、选择和连接等操作的数据一般都要经过条件筛 选,这种“条件”选择项必须是明文,否则d b m s 将无法进行比较筛选。例如, 要求检索工龄在2 0 年以上的职工人员名单,“工作日期”字段中的数据若 加密,s q l 语句就无法辨认比较。 ( 3 ) 表问的连接码字段不能加密数据模型规范化以后,数据库表之间 存在着密切的联系,这种相关性往往是通过“外部编码”联系的,这些编 码若加密就无法进行表与表之间的连接运算。 2 2 3 2 数据库加密对d b m s 功能的影响目前d b m s 的功能比较完备, 特别像o r a c l e 、s y b a s e 这些采用c l i e n t s e r v e r 结构的数据库管理系统,具有 数据库管理和应用开发等工具。然而,数据库数据加密以后,d b m s 的一 些功能将无法使用,无法实现对数据制约因素的定义。s y b a s e 数据库系统 的规则定义了数据之间的制约因素。数据一旦加密,d b m s 将无法实现这 一功能,且值域的定义也无法进行。 ( 1 ) 数据库中的每个字段的类型、长度都有具体的限定数据加密时, 数值类型的数据只能在数值范围内加密,日期和字符类型的数据也都只能 在各自的类型范围内加密,密文长度也不能超过字段限定的长度,否则 d b m s 将无法接受这些加密过的数据。 ( 2 ) 密文数据的排序、分组和分类s e l e c t 语句中的g r o u pb y 、o r d e rb y 、 h a v i n g 子句分别完成分组、排序、分类等操作这些子句的操作对象如果 是加密数据,那么解密后的明文数据将失去原语句的分组、排序、分类作 用,这是用户所不需要的。 ( 3 ) s q l 语言中的内部函数将对加密数据失去作用d b m s 对各种类型 数据均提供了一些内部函数,这些函数不能直接作用于加密数据。 ( 4 ) d b m s 的一些应用开发工具的使用受到限制不能直接对加密数据 进行操作,数据库管理系统的一些功能无法实现。 2 2 4 数据库加密系统的基本要求 对数据库加密主要有以下几个方面的要求p ”。 1 0 第2 章数据库中的数据加密技术 ( 1 ) 难以破译加密系统实际上应该是不可破译的。这一点很重要,因 为与传统的通信加密相比,它的保存时间长,不可能采用一次一密的方法。 ( 2 ) 加、解密速度快为了维护系统的原有性能,加密和解密的速度应 该足够快,加密系统影响数据操作响应时间应尽量短,不能让用户使用时 有明显的感觉。对数据库来说,解密速度尤其重要,因为这种操作很频繁。 ( 3 ) 授权机制加密系统要有尽可能灵活的授权机制。由于一个庞大的 数据库由多个用户共享,但并不是所有用户都能使用全部数据。对大多数 用户来说,只能使用其中一小部分。因此,加密系统应有很强的访问控制 和授权机制相配合。 似) 密钥动态管理数据库客体之间隐含着复杂的逻辑关系,一个逻辑 结构可能对应着多个数据库物理客体,所以数据库加密不仅密钥量大,而 且组织和存储工作比较复杂,加密系统应提供一套安全的、使用灵活的密 钥管理机构。如果管理不好,不仅不能起到保密的作用,而且可能会使整 个数据库瘫痪。 ( 5 1 合理处理数据首先要恰当地处理数据类型,否则将会因加密 d b m s 后的数据不符合定义的数据类型而拒绝加载;其次,需要处理数据的 存储问题,实现数据库加密后,应基本上不增加空间开销。在目前条件下, 数据库关系运算中的匹配字段,如表间连接码、索引字段等数据不宜加密。 文献字段虽然是检索字段,但也应该允许加密,因为文献字段的检索处理 采用了有别于关系数据库索引的正文索引技术。 ( 6 ) 不影响合法用户的操作对数据库的合法用户来说,数据的录入、 修改和检索操作应该是透明的,不需要考虑数据的加脱密问题。为使数据 能够充分而灵活地共享,加密后应当允许用户以不同的粒度进行访问。加 密后对数据库的查询、检索、修改、更新要灵活、简便。对数据库数据加 密后,不应影响系统的原有功能,如果加密系统设计得不好,不仅用户使 用不方便,还会降低原有系统的性能。 2 2 5 数据库加密系统结构 可以考虑在3 个不同层次实现对数据库数据的加密,这3 个层次分别是 燕山大学工学硕士学位论文 o s 、d b m s 内核层和d b m s 外层。 在o s 层,由于无法辨认数据库文件中的数据关系,从而无法产生合理 的密钥,也无法进行合理的密钥管理和使用。因此,在o s 层对数据库文件 进行加密,对于大型数据库来说,目前还难以实现。 在d b m s 内核层实现加密,是指数据在物理存取之前完成加脱密工作。 这种方式造成d b m s 和加密器( 硬件或软件) 之间的接口需要d b m s 开发商的 支持。优点是加密功能强,并且加密功能几乎不会影响d b m s 的功能:缺点 是在服务器端进行加脱密运算,加重了数据库服务器的负载。 另一种做法是将数据库加密系统做成d b m s 的一个外层工具。采用这种 加密方式时,n 脱密运算可以放在客户端进行,其优点是不会加重数据库 服务器的负载并可实现网上传输加密,缺点是加密功能会受一些限制。 一个数据库加密系统通常设计成3 个功能独立的主要部件f 3 2 】:加密系统 管理程序、数据库:j n 脱密引擎和加密字典,此外还对d b m s 内核进行部分 改动以支持对密文的操作。 ( 1 ) 加密字典数据库加密系统将用户对数据库具体的加密要求全部记 载在加密字典中,它主要记载加密表的标识、加密表的密钥、加密列的标 识、用户对加密列的访问权限等信息。对加密数据的所有操作均需要加密 字典的支持,因此加密字典是数据库加密系统的基础。 ( 2 ) 加密系统管理程序加密系统管理程序是管理加密字典的实用程 序,是用户变更加密要求的工具。加密系统管理程序位于d b m s 与客户程序 之间,它的主要功能有:验证用户是否具有对加密数据访问的权限:根据 用户的需要读取或修改加密字典;通过调用数据库加脱密引擎实现对数据 库表的加密脱密及数据转换等功能。加密系统管理程序位于数据库服务器 的外层,它通过d b m s 提供的a p i 和数据库系统通信,所有来自客户端的请 求均要通过加密系统管理程序处理后再发送到d b m s 。用户只有通过加密系 统管理程序才能访问加密字典。这样不仅保证了加密系统和d b m s 之间的独 立性,还保证了加密字典的安全。 ( 3 ) 数据库加脱密引擎数据库加脱密引擎是数据库加密系统的核心 部件,它负责在后台完成数据库信息的加脱密处理,对应用开发人员和操 1 2 第2 章数据库中的数据加密技术 作人员是透明的。数据库加脱密引擎被加密系统管理程序所调用,它主要 包括根据密钥计算和数据加密两个组件。在系统实现时主要考虑加脱密算 法的执行速度以提高系统的运行效率。 h ) d b m s 内核进行修改通过对d b m s 内核进行修改,d b m s 能够在数 据库系统启动时将必要的加密信息读入内存,分析用户对密文的s q l 请求, 处理新增的加脱密s q l 关键字和函数,对操作加密数据的s q l 请求进行优 化处理,控制对加密字典的并发访问等等。 2 2 6 数据库加密的方式 根据数据库的特点,对数据库加密一般有下面三种方式【3 3 1 。 ( 1 ) 库外加密数据库的管理系统与操作系统的接口方式大致有三种。 其一是直接利用文件系统功能;其二是直接利用操作系统的i o 模块;其三 是直接使用存储器管理。因此,可以将数据先在库外加密,然后再存入数 据库内。例如,数据在文件系统内加密( 采用文件加密的方法) ,形成存储块, 然后文件系统每次交给数据库管理系统d b m s - - 个完整的存储块,将数据块 存入数据库内。文件系统把整个数据库当作一个文件,每一个存储块当作 文件的一个记录。文件系统与数据库管理系统d b m s 交换的信息是块号。当 数据库管理系统d b m s 要求组装数据库或插入记录时,就向文件系统申请一 块,以便建立索引。d b m s 为了更好地管理这个模块,需要确定块大小、块 号、块头信息标志和块尾信息等参数。 对于库外加密,密钥管理相对简单,但它涉及到公共数据字典。因为 将数据纳入数据库时,要对数据进行完整性约束检查,而加密后的数据可 能要超出它的约束范围,因此必须在算法或数据库系统内做些必要的工作。 ( 2 ) 库内加密对于数据库的描述一般分为三层:存储模式描述数据的 物理结构;概念模式描述数据的全局逻辑结构;子模式描述数据的局部逻 辑结构。 根据数据的结构,要对数据加密,可增设数据加密模式来实现数据的 加解密。该加密模式所处的位置应在模式与存储模式之间。加密的单位( 粒 度) 可以是记录、域或数据元素。 燕山大学工学硕士学位论文 ( 3 ) 硬件加密数据库加密方式既可以用软件实现,也可以用硬件来实 现。但这里所说的硬件加密是在物理存储器( 磁盘) 与数据库系统之间增加一 套硬件装置,它与实际的数据库系统脱离。这种加密方式首先要求数据库 数据应存放在专门的磁盘上,对进入磁盘的控制信息不加密,而只对数据 进行加密。 2 2 7 数据库加密系统的功能 一般而言,一个行之有效的数据库加密系统主要有以下7 个方面的功 能和特性例。 ( 1 ) 身份认证用户除提供用户名、口令外,还必须按照系统安全要求 提供其它相关安全凭证。系统可以选择使用终端密钥、用户u s bk e y 等来 增强身份认证的安全性。 ( 2 ) 通信加密与完整性保护有关数据库的访问在网络传输中都被加 密,通信的目的地还可以校验通信的完整性;通信一次一密的意义在于防 重放、防篡改。 ( 3 ) 数据库数据存储加密与完整性保护系统采用数据项级存储加密, 即数据库中不同的记录、每条记录的不同字段都采用不同的密钥加密,辅 以校验措施来保证数据库数据存储的保密性和完整性,防止数据的非授权 访问和修改。 ( 4 ) 数据库加密设置系统中可以选择需要加密的数据库列,以便于用 户选择那些敏感信息进行加密而不是全部数据都加密。只对用户的敏感数 据加密,可以提高数据库访问速度。这样有利于用户在效率与安全性之间 进行自主平衡。 ( 5 ) 多级密钥管理模式主密钥和主密钥变量保存在安全区域,二级密 钥受主密钥变量加密保护,数据加密的密钥存储或传输时利用二级密钥加 密保护,使用时受主密钥保护。 ( 6 ) 安全备份系统提供数据库明文备份功能( 为防止灾难发生,系统提 供明文形式的数据库内容备份功能,以防止丢失密钥或数据造成灾难性后 果) 和密钥备份功能( 用户可以同时使用数据库管理系统的备份功能和数据 1 4 第2 章数据库中的数据加密技术 库加密系统的密钥备份功能来备份密文和密钥,在需要时进行恢复) 。 ( 7 ) 通用接口和广泛的平台支持系统采用开放的体系结构,支持标准 s q l 语句。 2 3 传统的数据库加密技术 运行在网络环境下的数据库系统的一个显著特点是数据的共享性,数 据库加密技术的作用主要是在不影响数据共享的前提下保证数据库信息的 真实性和完整性。与一般的数据加密技术不同,数据库系统由于具有文件 礴舀、记录、字段等多个层次的概念,所以对数据库信息的加密也就可以分 别选用以文件、记录、字段作为加密基本单位的方案p 5 1 。加密单位越小, 适用范围越广,但实现难度就越大。根据应用时具体要求的不同。实现时 应采用不同的方法。 随着数据库加密技术不断发展,人们根据实际要求提出了许多针对数 据库的加密技术,如子密钥数据库加密、影子数据库和秘密同态技术等。 2 3 1 基于文件的数据库加密技术 最早出现的方法是基于文件的数据库加密方法。该方法的基本思想是 把数据库文件作为整体,用加密密钥和加密算法对整个数据库文件加密, 形成密文来保证数据的真实性和完整性。利用这种方法,数据的共享是通 过用户用解密密钥对整个数据库文件进行解密来实现的。 但多方面的缺点极大地限制了这一方法的实际应用。首先,数据修改 的工作将变得十分困难,需要进行解密、修改、复制和加密四个操作,极 大地增加了系统的时空开销;其次,即使用户只是需要查看某一条记录, 也必须将整个数据库文件解密,这样无法实现对文件中不需要让用户知道 的信息的控制。因此,这种方法只适用于能回避这些限制的应用环境。 2 3 2 基于记录的数据库加密技术 一般而言,数据库系统中每条记录所包含的信息具有一定的封闭性, 1 :5 燕山大学工学硕士学位论文 即从某种程度上说它独立完整地存储了一个实体的数据。因此,基于记录 的加密技术是最常用的数据库信息加密手段。这种方法的基本思路是:在 各自密钥的作用下,将数据库的每一个记录加密成密文并存放于数据库文 件中;记录的查找是通过将需查找的值加密成密码文后进行的。 然而基于记录的数据库保护有一个缺点,就是在解密一个记录的数据 时,无法实现对在这个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 17508:2025 EN Packaging - Transport packaging for dangerous goods - Compatibility testing of polyethylene,fluorinated polyethylene and co-extruded plastic
- 驾驶院内三轮车安全协议书5篇
- 护理高校操作考试题及答案
- 难点解析-人教版八年级上册物理声现象《声音的产生与传播》单元测评试卷(附答案详解)
- 考点攻克苏科版八年级物理下册《力》专项训练练习题(含答案详解)
- 考点攻克人教版八年级物理《功和机械能》同步测评试卷(解析版含答案)
- 天津低压电工证考试试题及答案
- 高等数学下考试题库及答案
- 广东工业大学安全考试题及答案
- 半天妖门店服务流程及各类事项知识多选试题附答案
- 2025年氢气传感器市场分析报告
- 后腹膜输尿管切开取石个案护理
- 快消品运营总监职责要点
- 电动公交安全培训
- 电气设备安装维修合同
- 中职语文(拓展模块)中国科学技术史序言
- 台州市黄岩区海塘安澜工程(椒江黄岩段海塘)环评报告
- 2025年人教版小升初数学复习分类汇编:解方程或比例(学生版+解析)
- 2025年《Java Script程序设计》课程标准(含课程思政元素)
- 云南省昆明市2023-2024学年高一下学期7月期末质量检测英语试卷(含答案)
- 出租亚马逊店铺协议合同
评论
0/150
提交评论