(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf_第1页
(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf_第2页
(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf_第3页
(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf_第4页
(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(信号与信息处理专业论文)基于cigs系统的数据库加解密模块的设计研究.pdf.pdf 免费下载

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

文档简介

ab s t r a c t wi t h t h e d e v e l o p m e n t o f c o m p u t e r a n d n e t w o r k t e c h n o l o g y , t h e i n f o r m a t i o n s e c u r i ty b e c o m e s t h e f o c u s o f t h e i n f o r m a t i o n c o mm u n i ty , w h i c h d i r e c t l y i n fl u e n c e s t h e n a t i o n s s a f e ty a n d t h e s o c i e ty s t a b i li ty. n o w a d a y s , a m a j o r i ty o f i n f o r m a t i o n s y s t e m s s t o r e a l a r g e n u m b e r o f i m p o r t a n t d a t a b a s e s , a s r e n d e r s d a t a b a s e s t o b e c o m e t h e c o r e o f t h e s e s y s t e m s . c e q u e n t l y , s e c u r i ty o f d a t a b a s e s b e c o m e s i m p o r t a n t a n d u r g e n t . a m o n g a l l t h e t e c h n i q u e s a n d me t h o d s p r o t e c t i n g d a t a , i t i s t h e m o s t p r a c t i c a b l e t o e n c r y p t d a t a a n d s t o r e e n c r y p t e d d a t a , b e c a u s e e v e n i f e n c ryp t e d d a t a a r e f i l c h e d , c o p i e d , o r p e c u l a t e d , a t t a c k e r s a r e i n c a p a b l e o f u n d e r s t a n d i n g t h e s e d a t a i n t h a t t h e y a r e i n c a p a b l e o f d e c r y p t i n g t h e s e d a t a . i n o r d e r t o p r o t e c t i n g d a t a b y m e a n s o f e n c r y p t i n g d a t a , i t i s n e c e s s a ry t o s e t u p a d a t a b a s e e n c r y p t i o n s y s t e m , b e c a u s e b e s i d e s e n c r y p t i o n , p r o t e c t i n g d a d a a l s o c o n c e rn m a n y o t h e r p r o b l e m s s u c h a s k e y m a n a g e m e n t . a d a t a b a s e e n c r y p t in g / d e c r y p t i n g m o d u l e i s t h e k e r n e l a n d k e y o f a d a t a b a s e e n c r y p t i o n s y s t e m . t h i s p a p e r j u s t g i v e s a d e s i g n a n d i m p l e m e n t a t i o n o f d a t a b a s e e n c r y p t i n g / d e c ry p t i n g m o d u l e in d e t a i l i t u s e d f o r r e f e r e n c e t o s o m e d o m e s t i c t y p i c a l s c h e m e o f d e s i g n a n d i m p l e m e n t a t i o n o f d a t a b a s e e n c r y p t i o n s y s t e m t h a t t h i s s c h e m e i n t h i s p a p e r i s p r o p o s e d . t h i s p a p e r d oes s o m e r e s e a r c h o n h o w t o e n c r y p t d a t a b a s e , a n d a p p ly t h e p r o d u c t i o n t o e n h a n c e t h e s e c u r i ty o f c i g s i n f o r m a t i o n s y s t e m . f i r s t l y , t h e p a p e r i n t r o d u c e s t h e b a c k gro u n d o f d a t a b a s e e n c r y p t i o n r e s e a r c h a n d t h e d o m e s t i c a n d i n t e rn a t i o n a l r e s e a r c h a p p l i c a t i o n s i t u a t i o n s ; t h e n , i n t r o d u c e s t h e c h a r a c t e r i s t i c s a n d r e q u i r e m e n t o f d a t a b a s e e n c ryp t i o n ; b a s e d o n t h e a b o v e d i s c u s s i o n , w e t a l k a b o u t s o m e k i n d s o f d a t a b a s e - e n c r y p t i n g m e t h o d s , a n d f o c u s e s o n h o w t o s o l v e p r o b l e m s c o n fr o n t e d w i t h d u r i n g d e s i g n i n g a n d c a r ryi n g o u t s y s t e m , a n d c h o o s e t h e o n e t h a t p l u s e n c r y p t i o n s y s t e m o v e r t h e d b m s a s o u r s o l u t i o n , a n d a d o p t e d a k i n d o f w o r d s e g m e n t o f k e y w i t h s u b - k e y g e n e r a t i n g t o e n c ry p t a t e c h n i q u e . a ft e r t h i s p a p e r c a r r i e d o n t h e d e s i g n o f a d a t a b a s e e n c r y p t i n 留 d e c r y p t i n g m o d u l e a n d k e y ab s t r a c t ma n a g e m e n t p r o j e c t i n d e t a i l . f o r t h e p u r p o s e o f v e r i f y i n g v a l i d i ty a n d p r a c t i c a b i l ity o f t h e d e s i g n a n d im p l e m e n t a t i o n s c h e m e o f d a t a b a s e e n c r y p t i o n / d e c r y p t i o n g i v e n i n t h i s p a p e r , a s i m p l e s i m u l a t i o n s y s t e m i s i m p l e m e n t e d . t h e e x p e r i m e n t a l da t a o nt h e s i m u l a t i o n s h o w s t h a t t h e s c h e m e o f d e s i g n a n d i m p l e m e n t a t i o n o f e n c r y p t i o n / d e c r y p t i o n m o d u l e p r o p o s e d b y t h i s p a p e r i s p r a c t i c a b l e . ke y w o r d s : e n c r y p t i o n d a t a b a s e e n c r y p t i n g / d e c r y p t i n g e n g i n e k e y ma n a g e me n ts u b - k e y g e n e r a t i n g a e s i i i 南 3 f - -k学 学 t 立论 文 电 任 卜 ml 授 权 使 用 1 办宝 义 以青 将此协议书装订于论文首页) 论 文 t 护 6 5 4 -4-i c , l a l w p 系 本人在 南开大学工作和学习期间创作完成的作品 本人系本作品的唯一作者 ( 第一作者),即著作权人。现本人同意将本作品收 录于 “ 南开大学博硕士学位论文全文数据库” 本人承诺:已提交的学位论文电子 版与印刷版论文的内容一致,如因不同而引起学术声誉上的损失由本人 自 负。 本人完全了 解 南 开大学图书馆 关于保 存、 使用学 位论文的管理办法。同意 南开大学图书馆在下述范围内免费使用本人作品的电子版: 本作品呈交当年,在校园网上 提供论文目录检索、文摘浏览以及论文全文部分 浏览服务 ( 论文前1 6 贞) 。公开级学位论文全文电子版于提交i 年后, 在校园网上允 许读者浏览并下载全文。 注:本协议书对于 “ 非公开学位论文”在保密期限过后同样适用。 院 系 所 “ 称 哗 纱哪罕声 作 者 签 名 一琴 车 学号: 口期 : 口 * a 3 ,r , 卜 刀 年s 月z .5日 南开大学学位论文版权使用授权书 本人完全了 解南开大学关于收集、保存、使用学位论文的 规定, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电 子版 本;学校有权保存学位论文的印 刷本和电 子版,并采用影印、 缩印、 扫描、 数字化或其它手段保存论文; 学校有权提供目 录检索以 及提供 本学位论文全文或者部分的阅览服务; 学校有权按有关规定向国家有 关部门 或者机构 送交论文的复印 件和电 子版; 在不以赢利为目 的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学 位 论 文 作 者 签 名 : 渗 军 , 刁 年 月 : 5 日 经指导教师同 意,本学 位论文属于保密, 在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 解密时间:年月日 各密级的最长保密年限及书写格式规定如下: 磊 5* o r k 5 * , 7 - 5 )m t-* 10f (am 10 if, 7 -f 10t- ) 1 机 密 * 2 。 年( 最 长 : 。 年 , 可 少 于 : 。 年 ) 南开大学学位论文原创性声明 本人郑重声明: 所呈交的学位论文, 是本人在导师指导下, 进行 研究工作所取得的成果。 除文中已经注明引用的内 容外, 本学位论文 的 研究成果不包含任何他人创作的、 已 公开发表或者没有公开发表的 作品的内容。 对本论文所涉及的研究工作做出贡献的其他个人和集 体, 均己 在文中以明 确方式标明。 本学位论文原创性声明的法律责任 由本人承担。 翰敝储料: 毒军 7 年s 月 2 5 日 第一章绪论 第一章绪论 信息是当今人类社会的重要战略资源,它必然要面对各种安全威胁。在我 们越来越依赖于信息技术的同时, 信息安全的问题也日 益突出。 信息安全技术 主要研究如何对抗信息安全威胁、保护信息资源。目前,它己成为信息技术的 关键组成部分。由于数据库技术应用的普遍性、数据库系统的复杂性、数据及 其处理的丰富语义,人们对数据库安全理论和技术进行了广泛而深入的研究, 并且该方向是当前的热点之一。 第一节数据库安全问 题 随着计算机技术和网络技术的进步,数据库的运行环境也在不断变化。在 新的环境中数据库系统需要面对更多的安全威胁,针对数据库系统的新攻击方 法也层出不穷。数据库安全主要为数据库系统建立和采取的技术与管理方面的 安全保护,以保护数据库系统软件和其中的数据不因偶然和恶意的原因而遭到 破坏、更改和泄露。 安全威胁 在数据库环境中,不同的用户通过数据库管理系统访问同一组数据集合。 这样减少了数据的冗余、消除了不一致的问题,同时也免去了程序对数据结构 的依赖。然 而, 这同时也导致数据库面临严重的 安全威胁。 根 据违反 数据库安全性所导致的后果,安全 威胁可以 分为以 下几 类【5 1 ) 非授权的信息泄漏:未获授权的用户有意或无意得到信息。 2 ) 非授权的数据修改:包括所有通过数据处理和修改而违反信息完整性的 行为。 3 ) 拒绝服务:包括会影响用户访问数据或使用资源的行为。 第一章 绪论 1 .2 数据库安全需求 1 . 数据独 立性 数据独立于应用程序之外,理论上,数据库系统的数据独立性分为两种: 1 ) 物理独立性。数据库物理结构的变化不影响数据库的应用结构,从而也 就不影响其相应的应用程序。这里的物理结构是指数据库的物理位置、物理设 备等。 2 ) 逻辑独立性。 数据库逻辑结构的 变化不会影响 用户的 应用程 序,数据类 型的修改、增 加、改 变各表之间的联系都不 会导致应用程 序的 修改。 这两种数据独立性都要靠数据库管理系统 ( d b m s ) 来实现。 2 .数据安全性 一个数据库能否防止无关人员得到他不应该知道的数据,是数据库是否实 用的一个重要指标。 通常,比较完整的数据库对数据安全性采取了以下措施: 1 ) 将数据库中需要保护的部分与其他部分相隔离。 2 ) 使用授权规则。 这是数 据库 系统经常使用的一 个办 法, 数据库给用 户 i d 号、口 令及权限,当 用户用此i d 号 和口 令登 录后, 就会获 得相应的权限。 不同 的用户或操作会有不同的权限。 3 ) 将数据加密,以 密码的形式 存放于数据库内。 3 . 数据完整性 数据完整性是指与损坏和丢失相对的数据状态。它通常表明数据在可靠性 与准确性上是可信赖的,同时也意味着数据有可能是无效的或不完整的。数据 完整性包括数据的正确性、 有效性和一致性。 1 ) 正确性。 在输 入数据时要保证其输入值与定义这个表时相应的域的类型 一致。 2 ) 有效性。在保证数据正确的前提下,系统还要约束数据的有效性。 3 ) 一致性。当不同的用户同时使用数据库,应该保证他们取出的数据一致。 因为数据库系统对数据的使用是集中控制的,因此数据的完整性控制还是 比较容易实现的。 4 . 并发控制 如果数据应用实现多用户共享数据,就可能在同一时刻有多个用户要存取 第一章 绪 论 数据,这类事件叫做并发事件。当一个用户取出数据并进行修改,修改存入数 据库之前如有其他用户再取此数据,那么读出的数据就是不正确的,这里就需 要对这种并发操作施行控制,排除和避免这种错误的发生,以保证数据的正确 性。 5 . 故障 恢复 当数据库系统运行时出现物理或逻辑上的错误时,如何尽快恢复正常,这 就是数据库系统的故障恢复功能。 第二节数据库安全研究的发展及现状 国外数据库安全的研究经历了萌芽时期、初始时期、标准化时期和多样化 时期。多样化时期主要表现为:数据库应用环境和安全需求的多样化,数据模 型多样化,网络及分布式计算的发展和对信息安全认识的发展。目前,国内数 据库安全的研究的发展水平相当于国外标准化阶段的水平。主要研究项目:北 京大学、人民大 学和华中 科技大学 合作 研究的 c o b a s e 、 华中科技大 学的 d m 3 , 中科院信息安全实验室的l o i s 安全数据库等数据库管理系统的研究与开发. 国内外数据库安全的研究有两个方向:一方面是主要集中在多级安全数据 库系统的设计与实现方面。这种数据库系统使用专门设计的安全模型,从头开 始设计的新系统, 而且这种系统是用于特定用途的。另一个方向,现在通用的商 业数据库, 如o r a c l e , s q l s e r v e r , s y b a s e 等, 主要是 在数据库管 理系 统中根 据需要采取一定的安全机制,如用户分类、数据分类、审计功能等,来确保对 数据库安全操作。这种安全保证是非常有限的,存在非常大的安全漏洞和缺陷, 很容易被攻破。 以 上两个方面解决方法都存在下面问题:防止内 部攻击和数据隐私问 题。 即 安全模型 或安全 机制虽 然可以比 较有效的对抗外部非法用户的攻击, 但对内 部人员特别是具有较大访问权限的管理人员,抵抗力是非常脆弱的。针对存在 的缺陷,我们提出以下解决方法:给数据库系统附加一个加密系统,由用户用 自己的密钥将保护数据加密成密文保存,而密钥是由密钥管理员通过密钥管理 中心产生和分配的;同时,确保数据库管理员和用户只能对数据库进行操作而 无权访问密 钥管理中 心, 密钥管理员无权访问数据库。 这样就可以 很好的克服 上述问题。 第一章 绪论 因此,利用密码技术给数据库添加加密系统, 提供密码控制手段来保 护数 据库中存储的数据是数据库安全的重要研究内 容, 也是弥补多 级安 全数 据库的 不足,进一步确保数据库安全的很好途径。 第三节课题的意义和主要内 容 课题的意义 本课题来源于国家 “ 十五” 8 6 3 计划重点课题: “ 铜锢硒太阳能薄 膜电 池试 验平台 与中 试线” 。 n o . : 2 0 0 4 a a 5 1 3 0 2 1 。 南开 大学是以 主要单 位承担 该课题。 本 课题主要是为该项目数据收集和分析需要设计的c i g s 实验数据库系统加装的数 据库加密系统,目的是为其提供密码控制手段,以保护数据库中存储的科研数 据。 课题研究的意义在于,数据库是当今信息社会中信息系统的数据存储和处 理的 核心,其安 全性对于整个信息系统安 全极为 重要。首先,数据库安全对于 保护组织的信息资产非常重要。其次,保护数据库系统所在网络系统和操作系 统非 常重要, 但仅仅如此远不足以 保证数据库系统的 安全。需要额外的加强数 据库安 全手段。 此外,数据库安全的 不足不仅会损害 数据库 本身,而且还 会影 响到操作系统和整个网络基础设施的安全。最后,数据库是电子商务、电子政 务、 e r p 等关键应用系统的基础,它的安全也是这些应用系统的基础。因此, 我 们研究数据库安全技术和方法是十分重要和有意义的。 课题最直接的意义是:为先前针对 “ 铜锢硒薄膜太阳电池试验平台和中试 线” 项目的数据收集和分析需要,设计的 c i g s实验数据库系统加装本系统, 为其提供密码控制手段,以保护数据库中存储的科研数据,保护我们 自己的知 识产权。 目前,人们对信息安全的研究主要是以文件形式存储的数据为对象,考虑 信息在网络上的安全。而数据库系统有其自身的体系结构特点,使得对数据库 数据的加密与一般的数据加密有不同的技术要求和安全标准。再加之数据库系 统在信息系统中的核心地位,使得确保数据库安全具有更大的价值和重要性。 因此,对数据库安全进行研究将是今后信息安全研究至关重要的方面和不 可缺少的方面。 第一章 绪论 3 .2 课题的主要内容 由于数据库加密系统的 研究 设计是个庞大而复杂的工程, 它需要考 虑各个 方面的需求和功能,由很多的功能模块组成,每个部分都可以成为一个独立的 研究课题. 而在所有这些 模块中,数据库加解密模块是它的 核心和关 键部分, 它设计实现的好坏,将直接决定着整个系统的成功与失败。因此,本课题选择 了数据库加解密模块的设计与实现作为研究的主要内容。 数据库加解密模块分成两个功能独立的主要部件:一个是加密字典管理程 序; 另一个是数据库加解密引擎。 其中,加密字典程序是管理加 密字典的 应用 程序, 是数据库管理员变更加密 要求的工具。 它通过数据库加解密引擎 实现对 数据库表的加密、解密及数据转换等功能。数据库加解密引擎是数据库加解密 模块的核心部件,它工作在后台,负责数据库信息的加密和解密,并且加解密 过程对于应用开发人员和操作人员是透明的。 由于目前缺乏专门针对数据库加密的加密算法,因而对数据库加密时只有 根据数据库特点选择现有的加密算法。对数据库数据加解密速度是需要考虑的 一个重要因素。此外,数据库加密中的密钥管理比其他系统的密钥管理更为困 难与复杂。因此,数据库加解密模块设计实现中: ( 1 ) 数据库加密算法采用改进对称加密体制中的分组加密算法。 ( 2 ) 数据库加密密钥管理实行密钥管理中心统一管理密钥的三级密钥管理。 其中对不同的数据项使用不同的密钥,这些数据项密钥是由函数自 动生成的, 即数据项密钥用一个基本密钥与数据项所在的行与列的函数产生。如加密第 i 个 记 录 的 第j 个 字 段 这 个 数 据 项 的 密 钥 为 k , 二 s (r , ,界 , k ) . 其中 : k 是 原 始的 数 据 库 密 钥 , r , 是 记 录i 的 唯 一 标 识 符, 乓是 字 段j 的 唯 一 标 识 符, 8 是 子 密 钥生成函数,为单向函数。 此外,由于本课题的研究对象是针对 “ 锢硒太阳能薄膜电池试验平台与中 试线”项目 设计的c 工 g s 实验数据库系统,具 有一定的针对性和特殊性, 模块的 安全性、稳定 性和成熟性是最根本性的要求。因 此,在整个模块的设计 过程中, 我们尽量采用现有比 较成熟的 技术,借鉴了国内外比较典型的设 计方案, 并在 此基础上结 合c i g s 实验数据库系统的 特点 进行了 一定的创新和改进性的 设计研 究工作。 第二章 数据库加密技术 第二章数据库加密技术 第一节概述 随 着计算 机和通信技 术的高 速发展,使二十一世纪进入了 信息时代。飞速 发展的 i n t e r n e t 和 i n t r a n e t 技术,己经成为带动 信息 产业高速发展、促进社 会进步的重要工具。网络互联使得资源共享和数据通信得以实现,给科学研究、 企业运作和社会生活带来革命性的变革,在这种浪潮的推动下,个人网站和各 种专业网站如同雨后春笋建 立起来, 它们基于自己的 定位, 为广大用户提 供各 种信息以及电子商务服务,服务功能也日趋完善,成为人们获得信息、从事信 息交流和商务活动的重要手段。 电子商务的兴起,使得数据的安全问题被提到前所未有的高度。一方面, 企业本身需要对自己的关 键数据进行有效地保护;另一方面, 越来 越多的企业 开始 从应用服务提供商( a p p l i c a t i o n s e r v i c e p r o v i d e r , a s p ) 处获得应用 支持 和服务, 在这种情况下, 企业的业务数据 存放在 a s p处, 其安全性无法得到 有 效的保障。因为传统的数 据库保护方式是通过设定口 令字和访问 权限 等方法实 现的, 这就留下了 一个很大的 安全漏洞一一数据库管理员的 权力 至高无上, 可 以不加限制地访问数据库中的所有数据,例如资源分配、用户授权、系统审计 等, 又可以 查询数据库中的 一切 信息。 据有关资 料报道, 8 0 % 的计算 机犯罪 来自 系统内部。 大型数据库管理系统的运 行平台 一般是w i n d o w s n t 和u n i x ,这些操作 系统 的安 全级别通常为c 1 , c 2 级。 它们具 有用户注册、 识别用户、任意 存取 控制、 审计等安全功能。 虽然 d b m s 在o s的基础上增加了不少安全措施, 但 o s 和 d b m s 对数据库文件本身仍然缺乏有效的 保护措 施, 有经验的 攻击者会直 接利 用o s 工 具窃取和篡改数据库文件内 容。 这种隐患 被称为通向 d b m s的 “ 隐 秘通 道” , 一 般数据库用户难以 觉察它所带 来的 危害。 分析和堵塞 “ 隐秘通道” 被认为 是 b 2 级安 全技术。 对数据库中 敏感数据进行加密处 理,是堵塞这一 “ 隐秘通道”的 有 效 手 段 。 23 1 解决这一问题的关键是要对数据本身加密,实现数据库加密以后,各用户 第二章 数据库加密技术 ( 或用户组)的数据由用户 自己的密钥加密,而不需要了解数据内容的数据库 管理员无法进行正常的解密,不能获得明文,从而保证了用户信息安全。此外, 通过加密,数据库的备份内容成为密文,从而能减少因备份介质失窃或丢失而 造成的损失。即使数据不幸泄露或丢失,也难以被人破译。在数据库内,元组 的长度一般较短,数据的存储时间比较长,相应密钥的保存时间也随着数据生 命周期而定。若所有的数据使用同一密钥,则保密性差:若不同的元组采用不 同的 密钥,则密钥太多, 造成管理复杂。因此,不能简单采用一般通用的加密 技术,而必须针对数据库的特点,研究相应加密方法和密钥管理方法。在多级 安全 加密数据库管理系统中 ,提供了密码 控制 手段来保护数据库中存储的数据. 由此可见,数据库加密对内部网络安全管理是非常重要的。 因此,提供密码控制手段来保护数据库中存储的数据是数据库安全的重要 研究内容之一。 第二节数据库加密基本要求 数据存储保护是密码学在信息处理系统中的应用之一。但数据库中被加密 的数据具备以下特点使得其加密设计更为特殊,并且更具有挑战性。 首先,数据库中数据存储时间相对较长,并且由于数据量大,密钥更新的 代价较大,不可能频繁的更新密钥。加密系统不可能采用通信系统加密中的一 次一 密的 方法,因 此, 数据库加密应该保证足够的 加密 强度。 其次,数据库中存储海量数据,加密后存在大量的明密文范例。因此,若 对所有数据采用同样的密钥加密,则被破译的风险更高。同时因为在海量数据 库中查询可能需要遍历大量数据,所以,对加密处理速度的要求更高。否则将 严重影响数据库性能。 再次,数据库中数据规律性较强。例如数据表中某个一列中所有数据的数 据类型相同,并且很有可能长度固定。并且同一列中所有数据项存在一定取值 范围的限制,往往呈现一定的概率分布。若值相同 的原文加密后密文相同,攻 击者容易通过统计方法得到原文 信息。因此,数据库加密应该保证相同的明文 加密后的密文无明显规律。 针对数据库的以 上特点,一 个好的数据库加解密系统设计应该满足以下几 个方 面的要 求【 , : 第二章 数据库加密技术 1 ) 足够的加密强度保证长时间、大量数据不被破译。 2 ) 加密后的数据库存储量没有明显的增加。 3 ) 加解密速度足够快,影响数据操作响应时间尽可能短,用户没有明 显的 延迟感觉。 4 ) 加解密对数据库合法用户的操作,如数据的录入、修改和检索等是透明 的,加密后不影响原有系统的功能。 5 ) 灵活的密钥管理机制,加解密密钥存储安全、使用方便、可靠。 此外数据库加密还存在一些其他要求,例如合理处理数据。要恰当地处理 数据类型,否则d b m s 将会因加密后的数据不符合定义的数据类型而拒绝加载。 第三节 数据库加密层次与方式选择 按照执行加密部件与数据库管理系统的不同关系,数据库加密可以分为两 种实现方式: 数据库核内 加密与数据库核外加密7 .数据库核内 加密指在 d b m s 内部实现支持加密的模块。数据库核外加密指在d b m s 范围之外,由 专门的加密 服务器完成加/ 解密操作。 1 、数据库核内加密 数据库核内加密在d b m s 内 核层实现加密,加解密过程对用户与应用透明。 即数据进入d b m s 之前是明文, d b m s 在对数据物理存取之前完成加解密工作。 数 据库核内加密通常是以存储过程形式调用。因此由d b m s内核实现加密,加密密 钥就必须保存在d b m s 可以访问的地方,通常是以系统表的形式存在。图2 . 1 是 数据库核内加密方式示意图。 数据库核内加密方式的优点是加密功能强,并且加密功能几乎不会影响 d b m s原有的功能。另外,对于数据库应用来说,数据库核内加密方式是完全透 明的,并不需要做任何改动就可以直接使用。其缺点主要有:其一是性能影响 较大。 d b m s在完成正常功能之外,还需要进行加解密运算,因此加重了数据库 服务器的负担。其二是密钥管理风险安全大。因为加密密钥通常与数据库数据 一同保存,因而加密密钥的安全保护依赖于d b m s 中的访问控制机制。通常是有 权利访问某些数据的用户同时也有权访问数据密钥。安全隐患较大。其三是自 主性受限。d b m s 只提供有限的加密算法与强度可供选择。 第二章 数据库加密技术 数据库应用 数据库管理系统 加密组件 数据库 未加密 数据 加密 数据 加密 数据 图 2 . 1 数据库核内加密示意图 2 . 数据库核外加密 在数 据库核外加密方式中, 加 解密过 程发生在d b m s 之外。 d b m s 所管理的是 密文。加解密过程可以在客户端实现,或由专门的密码服务器完成。我们在本 系统中采用专门的密码服务器完成这一功能。 数据库核外加密与数据库核内加密相比有几大优势:首先,由于加解密过 程在专门的加密服务器或客户端实现,减少了d b m s 的设计复杂度与运行负担, 但同时也降低了对加密算法性能的严格要求。其次,这个方法将加密密钥与所 加密的数据分开保存。加密密钥保存在加密服务器中,甚至是硬件中。对它的 访问与使用情况可以保存清晰的记录。这点很重要。第三,由客户端与加密服 务器的配合,它可以 实现端对端的加密。此外, 采用这种加密方式时, 加解密 运算可以 放在客户端进行, 其优点是不会加重数 据库服务器的负载并可实现网 上传输加密。 数据库核外加密方式主要的 缺点是 加密 后数据库功能会受一些限制,例如 加密后数据无法正常的索引。图 2 . 4是数据库核外加密方式示意图。 第二章 数据库加密技术 数 据 库 应 用 ) 二于二, , 又资溉么 未加密 数据 加密 数据 图2 .2 数据库核外加密示意图 两 种数 据库加密实现方式之间的差异, 对比如表2 . 1 门 。 表 2 . 1 数据库加密实现对比 数据库核内加密模式数据库核外加密模式 加解密执行者 d b m s 专门的密码服务器或客户端 对数据库应用是否透明是否 服务器端性能影响服务器运行负担大基本无影响 密钥管理库内存储,风险大专门保护,风险小 是否影响d b m s 功能完全不影响影响索引等部分功能 密码服务能力 提供的算法等密码服务能力 受d b m s 限 制 可以灵活的变更,提供多种 密码服务 比较这两种方案的特点, 由于数据库核外加密方式, 加解密过程发生在 d b m s 之外,这不仅减少了d b m s的设计复杂度与运行负担,同时也降低了对加密算法 性能的严格要求。此外,这个方法将加密密钥与所加密的数据分开保存。加密 密钥保存在密码服务器中,这样可以对它的访问与使用情况保存清晰的记录。 因此,根据本方案的具体运行软硬件环境和设计需求目 标,考虑到数据库 核外加密实 现方式的 优点,本文 将数据库技术和加密 技术 相结合, 采用使用专 门的密码服务 器的数 据库核外加密 方式实现数据库加密。同时 针对加密后数据 库功能会受一些限制的缺点进行适当的改进,即:对有一些字段不加密,特别 是索引字段以 及可能 经常参与关系运算或特殊操作( 如 g r o u p b y , o r d e r b y ) 的 第二章 数据库加密技术 字段和表间的 连接码字段,以 保证数 据库信息加密对原有数 据库的 可用性与使 用效率没有显著影响,以更好的满足数据库安全性的需要. 第四节数据库加密关键影响因 素 2 . 4 . 1 加密基本单位 运行在网络环境的系统的一个显著特点是数据的共享性,数据库加密技术 的作用主要是在不影响数据共享的前提下保证数据库信息的真实性和完整性。 与一般的数据加密技术不同,数据库系统由于具有文件 ( 表) 、记录、字段等多 个层次的概念,所以对数据库信息的加密也就可以分别选用以文件、记录、字 段作为加密基本单位的方案 19 一、基于文件的数据库加密技术 把数据库文件作为整体,用加密算法对整个数据库文件加密来保证信息的 真实性和完整性.利用这种方法,数据的共享是通过用户用解密密钥对整个数 据库文件进行解密来实现的。但多方面的缺点极大地限制了这一方法的实际应 用:首先,数据修改的工作将变得十分困难,需要进行解密、修改、复制和加 密 4个操作,极大地增加了系统的时空开销;其次,即使用户只是需要查看某 一条记录, 也必须将整个数据库文 件解密, 无法实 现对文 件中 不需 要让用户知 道的信息的控制。因此,这种方法只适用于能回避这些限制的应用环境。 二、 基于记录的数据库 加密技术 一般而言,数据库系统中每条记录所包含的信息具有一定的封闭性,即在 某种程度上说它独立完整地存储了一个实体的 数据。因此, 基于 记录的加密技 术是最常用的数据库信息加密手段。这种方法的基本思路是:在各自密钥的作 用下,将数据库的每一个记录加密成密文并存放于数据库文件中;查找是通过 将需查找的值加密成密文后进行的。然而基于记录的数据库保护有一个缺点, 就是在解密一个记录的数据时, 无法实现对在这个记录中 不需要的字段不解密; 在选择某个字段的某些记录时, 如果不对这个含有这 个字段的 所有记录进行解 密就无法进行选择. 子密钥加密技术一为了解决基于记录的数据库加密技术存在的问题, g . i . d a v i d 等人在文献中提出了子密钥数据库加密技术。 子密钥加密算法的核心 第二章 数据库加密技术 思想是:根据数据库 ( 特别是关系数据库) 中数据组织的特点, 在加密时以 记 录为单位进行加密操作, 而在解密时以 字段为单位对单项数据进行解密操 作。 两者所用的密钥是不同的, 加密所用的密钥是针对整个记录的密钥, 而解密所 用的密钥是针对单个数据项的子密钥。 三、 基于 字段的数据库加密技术 基于字段的数据库加密,就是以不同记录的不同字段为基本加密单元进行 加密。该方法可以对数据库中单个数据元素进行加密。其优点在于具有最小的 加密粒度,具有更好的灵活性和适应性,缺点在于:( 1 )加解密效率低;( 2 ) 若用数据库密钥对单个数据元素重复加密,对于密文搜索攻击是脆弱的;( 3 ) 若各字段的数据元素分别用不同的密钥加密,则密钥个数=记录个数 x字段个 数,其量是非常惊人的,根本无法管理。 生成子密钥的字段加密技术一为了解决上述问题,可以使用下面这种可行 的字段加密方案,方案中主密钥只有一个,但各数据元素所用的密钥是不同的. 加密第 i 个记录的第i 个字 段所用的密钥 为k- g ( r ; , , f ; , , k ) 。 其中, k 是原始 的 数据库密钥( 即主密钥 ) , r 是记录 i 的 唯一标识符, f ; 是 字段j 的 唯一标识符, 9 是密钥生成函数, 为单向函数, 其中 一般包 含有块加密算法。 该块加密算法可 以 与数据项加密所用的 块加密算法一致, 也可以 不一致。 这样所得的k是关于 主密钥 k 的函数值, 但由k 计算k在计算上是不可行的,即密码体制是安全的。 综合上述考虑,依据我们的数据库加密系统应用的具体要求,本方案加密 粒度的定义是结合了记录和字段两种方式的优点,采用的是一种生成子密钥的 字段加密技术。它在加解密时是以字段为基本单位的,但密钥分配是以记录为 单位的, 这样既 有效地发 挥了以记录为加解密基本单位和以 字段为 加解密 基本 单位的优点,又有效地克服了二者的不足. 2 . 4 .2 加密算法 目 前缺乏专门 针对数据库加密的加密算法,因而数据库加密时 只有根据数 据库特点选择现有的 加密算法。密码算法在早期有序列算法,移位算法等. 按 密码算法所用的加密解密密钥是否相同,可分为对称密钥体制又称单密钥( 加密 解密密钥相同) 和公开密钥体制又称双密钥( 加密解密密钥不同) .如a e s 就是一 第二章 数据库加密技术 种对称密钥算法,而r s a是一种公开密钥算法。 我们选择加密算法,首先,要求加密强度应能满足系统安全需要,但又要 考虑加密结果是否符合数据约束条件, 其存储会不会造成额外负担; 其次, 对 加密速度的要求则是不应该对系统性能 产生明 显影响,响应时间 越短越好。 再 者,对应用系统的用户来说,数据库加解密过程应该是透明的,不能影响合法 用户的正常操作。数据库加密处理主要的目的就是为了保护数据的机密性,而 这正是对称算法的主要功能。而以 r s a算法为代表的公开密钥加密算法虽然加 密强度较高,但算法复杂,效率较低,不能满足加密效率要尽可能高的要求; 相反以 a e s算法为代表的 对称密 钥加密算法则是简单高效。所以 ,数 据库加密 中通常使用对称加密体制中的块加密算法 ( 又称分组密码算法) 。数据项长度或 剩余部分长度小于加密算法所需的块长时,需要按一定规律扩展后加密。也可 以将剩余部分再用序列密码加密。 因此,在本方案中我们选择的对称算法是 a e s ( a d v a n c e d e n c r y p t i o n s t a n d a r d , 高级加密标准) 。该算 法是 一种块加密算法,而且己 经得到美国 政府 的 批准,可以用于对未分类数据的 加密 保护。 它是公开的算法, 并且在得到认 可前经过业界广泛的研究。而且自从该算法出现以来,密码研究人员已经对其 进行了深入研究,并且还没有发现该算法存在任何缺陷。同时, a e s 算法也被广 泛地用于各种密码引擎上,包括本地引擎和专用引擎。因此, a e s 算法的确能够 满足我们的标准。 一、 高级加密标准 ( a e s ) a e s算法本质上是一种对称分组密码体制,采用代替/ 置换网络,每轮由三 层组成:线性混合层- 一确保多轮之上的高度扩散,非线性层- 一 由1 6 个 s 盒并 置起到混淆的作用,密钥加密层- 一将子密钥异或到中间状态。 a e s是一个迭代 分组 密码, 其 分组长 度是 1 2 8 位, 而密钥 为 1 2 8 位、1 9 2 位或2 5 6 位, 相应的 迭 代轮数为1 0 轮、1 2 轮、1 4 轮。 1 . 基本算法 a e s 算法 采用 s q u a r e 结构, 每一 轮都 使用代替和混淆并行地处理整 个数据 分组, 主要有列变换、行移位变换。 s q u a r e是一种 迭代式分组密 码, 其分组长 度和密 钥长度均是 1 2 8 位。 该结构由 四个不同的 阶段组成, 包括 3 个代替和 1 个混 淆:( 1 ) 字节代替s u b b y t e s , 用一个s 盒完 成分组中的按字节的 代替;( 2 ) 行移位s h i f t r o w s , 一个简单的置 换; ( 3 ) 列混淆m i x c o l u m n s , 一个利用 在域g f ( 2 8 ) 第二章 数据库加密技术 上的算术特性的代替;( 4 ) 轮密钥加 a d d r o u n d k e y ,一个利用当前分组和扩展密 钥的一部分进行按位异或。 s q u a r e的 轮变换由四 个不同 的变换组 成,这四 个不 同的变换表现为一整套查表和异或操作。 密文密 文 ( a )加密 ( b )解密 图2 . 3 a e s加密与解密 第二章 数据库加密技术 a e s 算法的 执行过程如图2 . 3 所示。 ( 1 ) 给定一个明文 x ,将 s t a t e初始化为 x ,并进行 a d d r o u n d k e y操作,将 轮密钥与 s t a t e异或。 ( 2 ) 对前n , - l 轮中的 每一轮, 用s 盒进行一 次s u b b y t e s代换 操作; 对s t a t e 做一次 s h i f t r o ” 行移位操作;再对 s t a t e 做一次m i x c o l u m n s 列混淆操作;然 后进行 a d d r o u n d k e y 操作。 ( 3 ) 依次进行s u b b y t e s , s h i f t r o w s , a d d r o u n d k e y 操作。 ( 4 ) 将最后 s t a t e中的内容定义为密文y o 2 . a e s的解密 a e s 的解密算法与加密有所不同, 如图 2 . 3 所示。 解密算法的基本运算中除 轮密钥加 a d d r o u n d k e y不变外,其余字节代替 s u b b y t e s 、行移位 s h i f t r o w s , 列混淆 m i x c o l u m n s都要进行求逆变

温馨提示

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

最新文档

评论

0/150

提交评论